IMHandler.cs 649 B

1234567891011121314151617181920212223242526272829303132333435
  1. using System;
  2. namespace Model
  3. {
  4. public class MessageInfo
  5. {
  6. public ushort Opcode { get; }
  7. public byte[] MessageBytes { get; }
  8. public int Offset { get; }
  9. public uint RpcId { get; }
  10. public object Message { get; set; }
  11. public MessageInfo(ushort opcode, byte[] messageBytes, int offset, uint rpcId)
  12. {
  13. this.Opcode = opcode;
  14. this.MessageBytes = messageBytes;
  15. this.Offset = offset;
  16. this.RpcId = rpcId;
  17. }
  18. public int Count
  19. {
  20. get
  21. {
  22. return this.MessageBytes.Length - this.Offset;
  23. }
  24. }
  25. }
  26. public interface IMHandler
  27. {
  28. void Handle(Session session, MessageInfo messageInfo);
  29. Type GetMessageType();
  30. }
  31. }