public TransportSendProcessor( ITransmissionConnection connection, ITransportHeaderFactory transportHeaderFactory, ITransportProtocolSerializer serializer) { _sendProcessor = new MessagingSendProcessor(connection, serializer); _log = LogManager.GetLogger <TransportSendProcessor>(_sendProcessor.Id.ToString()); _transportHeaderFactory = transportHeaderFactory; _sendProcessor.Out.PropagateCompletionFrom(ProcessAsync()); Completion = _sendProcessor.Completion.LogCompletion(_log); }
public TransportConnection( ITransportSendProcessor transportSendProcessor, ITransportReceiveProcessor transportReceiveProcessor, ITransportHeaderFactory headerFactory) { Id = transportSendProcessor.InstanceId; _log = LogManager.GetLogger <TransportConnection>(Id.ToString()); _transportSendProcessor = transportSendProcessor; _transportReceiveProcessor = transportReceiveProcessor; _headerFactory = headerFactory; _incomingMessageHandler = new TransportChannelHeaderHandler <Task, ChannelMessage>(HandleIncomingAsync, HandleIncomingAsync, HandleIncomingAsync); Completion = TaskRunner.RunInBackground(ProcessAsync).LogCompletion(_log); }
public TransportSendProcessor( ITransmissionConnection connection, ITransportHeaderFactory transportHeaderFactory, ITransportProtocolSerializer serializer) { _sendProcessor = new MessagingSendProcessor(connection, serializer); _transportHeaderFactory = transportHeaderFactory; _log = LogManager.GetLogger <TransportSendProcessor>(_sendProcessor.Id.ToString()); Out = new PropagatingChannel <ChannelMessage, TransportMessage>( 3, _sendProcessor.Out, OpenConnectionAsync, SendAsync, CloseConnectionAsync, CloseConnectionAsync, Dispose); Out.Completion.LogCompletion(_log); }
public ITransportProtocolDeserializer GetDeserializer(ITransportHeaderFactory headerFactory) { return(new ProtobufTransportProtocolDeserializer(headerFactory)); }
public ProtobufTransportProtocolDeserializer(ITransportHeaderFactory headerFactory) { _log = LogManager.GetLogger <ProtobufTransportProtocolDeserializer>(); _headerFactory = headerFactory; }