public IMessageTransmitter CreateMessageTransmitter(Stream baseStream)
        {
            IMessageStreamReader messageStreamReader = this.CreateMessageStreamReader(baseStream, this.InteractionLog);
            IMessageStreamWriter messageStreamWriter = this.CreateMessageStreamWriter(baseStream, this.InteractionLog);

            return(new MessageTransmitter(messageStreamReader,
                                          messageStreamWriter,
                                          baseStream,
                                          this.MessageRoundTripTimeout));
        }
Beispiel #2
0
 public MessageTransmitter(IMessageStreamReader messageStreamReader,
                           IMessageStreamWriter messageStreamWriter,
                           Stream baseStream)
     :
     this(messageStreamReader,
          messageStreamWriter,
          baseStream,
          MessageTransmitter.DefaultMessageRoundTripTimeout)
 {
 }
Beispiel #3
0
        public MessageTransmitter(IMessageStreamReader messageStreamReader,
                                  IMessageStreamWriter messageStreamWriter,
                                  Stream baseStream,
                                  TimeSpan messageRoundTripTimeout)
        {
            this.MessageStreamReader = messageStreamReader;
            this.MessageStreamReader.MessageProcessingError += this.OnMessageProcessingError;

            this.MessageStreamWriter     = messageStreamWriter;
            this.BaseStream              = baseStream;
            this.MessageRoundTripTimeout = messageRoundTripTimeout;

            this.Observable = (from messageEnvelope in this.MessageStreamReader
                               select messageEnvelope.Message).Publish();
        }