Beispiel #1
0
 public IPooledBuffer Handle(ITransportConnectionOpenHeader header, Nothing _)
 {
     using (var headerProto = Header.Rent())
         using (var openProto = ConnectionOpenHeader.Rent())
         {
             headerProto.Open = MergeToProto(openProto, header);
             return(headerProto.Serialize());
         }
 }
Beispiel #2
0
        private Nothing Handle(ITransportConnectionOpenHeader header, Nothing _)
        {
            switch (_state)
            {
            case State.NotConnected:
                _state = State.Connected;
                break;

            default:
                throw new ProtocolException($"Received unexpected header of type {header.GetType()} in state {_state}");
            }
            return(_);
        }
Beispiel #3
0
 private static ConnectionOpenHeader MergeToProto(ConnectionOpenHeader proto, ITransportConnectionOpenHeader messageHeader)
 {
     proto = proto ?? new ConnectionOpenHeader();
     proto.ConnectionId = proto.ConnectionId.MergeFrom(messageHeader.ConnectionId);
     return(proto);
 }
Beispiel #4
0
 public T Handle(ITransportConnectionOpenHeader header, TArgs args)
 {
     return(_openHandler(header, args));
 }