Class AProxyRpcMessage<TMessage, TReturnProxy, TReturnServer, TServer>
- Namespace
- MarymoorStudios.Core.Rpc
- Assembly
- MarymoorStudios.Core.Rpc.dll
Abstract base class for all generated proxy-returning message types.
public abstract class AProxyRpcMessage<TMessage, TReturnProxy, TReturnServer, TServer> : ARpcMessage<TServer> where TMessage : AProxyRpcMessage<TMessage, TReturnProxy, TReturnServer, TServer> where TReturnProxy : Proxy<TReturnServer>, IProxy<TReturnProxy, TReturnServer> where TReturnServer : AServer<TReturnServer> where TServer : AServer<TServer>
Type Parameters
TMessageThe message type itself.
TReturnProxyThe type of the result.
TReturnServerThe type of the result abstract server base.
TServerThe abstract server base class generated from the eventual interface.
- Inheritance
-
ResolverTurn<TServer>ARpcMessage<TServer>AProxyRpcMessage<TMessage, TReturnProxy, TReturnServer, TServer>
- Inherited Members
Constructors
AProxyRpcMessage(MethodId)
protected AProxyRpcMessage(MethodId methodId)
Parameters
methodIdMethodId
Properties
Resolver
protected override AResolver Resolver { get; }
Property Value
Result
public TReturnProxy Result { get; }
Property Value
- TReturnProxy
Methods
Break(Exception)
protected override sealed void Break(Exception ex)
Parameters
exException
OnFailure(Exception)
Execute the error path when the outcome is a failure.
protected override sealed void OnFailure(Exception ex)
Parameters
exExceptionThe failed outcome.
OnSuccess(TServer)
Execute the success path when the outcome is a success.
protected override sealed void OnSuccess(TServer value)
Parameters
valueTServerThe successful outcome.
Run(TServer)
protected abstract TReturnProxy Run(TServer server)
Parameters
serverTServer
Returns
- TReturnProxy
SizeOf(SerializationContext)
protected override sealed int SizeOf(SerializationContext context)
Parameters
contextSerializationContext
Returns
Write(SerializationContext, ref RowBuffer)
protected override sealed void Write(SerializationContext context, ref RowBuffer buffer)
Parameters
contextSerializationContextbufferRowBuffer