IRPCServerTransport.cs 653 B

12345678910111213141516171819202122232425
  1. using InABox.Core;
  2. namespace InABox.Rpc
  3. {
  4. public interface IRpcServerTransport : IRpcTransport
  5. {
  6. void AddHandler<TSender, TCommand, TProperties, TResult>(RpcCommandHandler<TSender, TCommand, TProperties, TResult> handler)
  7. where TSender : class
  8. where TCommand : IRpcCommand<TProperties, TResult>
  9. where TProperties : IRpcCommandParameters, new()
  10. where TResult : IRpcCommandResult, new();
  11. void Start();
  12. void Stop();
  13. event RpcTransportMessageEvent BeforeMessage;
  14. event RpcTransportMessageEvent AfterMessage;
  15. bool IsSecure();
  16. }
  17. }