public IPooledBuffer Handle(ITransportConnectionOpenHeader header, Nothing _) { using (var headerProto = Header.Rent()) using (var openProto = ConnectionOpenHeader.Rent()) { headerProto.Open = MergeToProto(openProto, header); return(headerProto.Serialize()); } }
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(_); }
private static ConnectionOpenHeader MergeToProto(ConnectionOpenHeader proto, ITransportConnectionOpenHeader messageHeader) { proto = proto ?? new ConnectionOpenHeader(); proto.ConnectionId = proto.ConnectionId.MergeFrom(messageHeader.ConnectionId); return(proto); }
public T Handle(ITransportConnectionOpenHeader header, TArgs args) { return(_openHandler(header, args)); }