示例#1
0
 protected void ChannelRead0(IChannelHandlerContext ctx, DatagramPacket msg)
 {
     if (this.listener != null)
     {
         SNMessage result = SNParser.decode(msg.Content);
         this.listener.PacketReceived(result);
     }
 }
示例#2
0
 public void Send(SNMessage message)
 {
     if (channel != null && channel.Open)
     {
         if (_clientProtocol != null)
         {
             IByteBuffer buffer = SNParser.encode(message);
             _clientProtocol.sendPacket(buffer);
         }
         else
         {
             channel.WriteAndFlushAsync(message);
         }
     }
 }
        protected override void Encode(IChannelHandlerContext context, SNMessage message, List <object> output)
        {
            IByteBuffer buffer = SNParser.encode(message);

            output.Add(new DatagramPacket(buffer, _channel.LocalAddress, _channel.RemoteAddress));
        }