/// <summary>
 /// Constructor
 /// </summary>
 /// <param name="transport">Message transport used as a backend for this message bus</param>
 public MessageBus(IMessageTransport transport, IMessageDispatcher dispatcher, ISerializeMessages serializer, IServiceResolver serviceResolver)
 {
     log = LogManager.GetLogger("BUS_" + transport.Endpoint);
     log.Info("Message Bus {0} created", transport.Endpoint);
     MessageSerializer            = serializer;
     Dispatcher                   = dispatcher;
     ServiceLocator               = serviceResolver;
     _transport                   = transport;
     _transport.OnMessageArrived += new MessageArrived(_transport_OnMessageArrived);
     _transport.OnMessageToUnknownDestination += new MessageArrived(_transport_OnMessageToUnknownDestination);
     SubscriptionService = new DummySubscriptionService();
     BatchOutgoingMessagesInTransaction   = true;
     MessageHandlerTransactionScopeOption = TransactionScopeOption.Required;
     UseTransactionScope         = true;
     DefaultSubscriptionLifetime = TimeSpan.FromHours(48);
     PublishLocalByDefault       = true;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="transport">Message transport used as a backend for this message bus</param>
 public MessageBus(IMessageTransport transport, IMessageDispatcher dispatcher, ISerializeMessages serializer, IServiceResolver serviceResolver)
 {
     log = LogManager.GetLogger("BUS_" + transport.Endpoint);
     log.Info("Message Bus {0} created", transport.Endpoint);
     MessageSerializer = serializer;
     Dispatcher = dispatcher;
     ServiceLocator = serviceResolver;
     _transport = transport;
     _transport.OnMessageArrived += new MessageArrived(_transport_OnMessageArrived);
     _transport.OnMessageToUnknownDestination += new MessageArrived(_transport_OnMessageToUnknownDestination);
     SubscriptionService = new DummySubscriptionService();
     BatchOutgoingMessagesInTransaction = true;
     MessageHandlerTransactionScopeOption = TransactionScopeOption.Required;
     UseTransactionScope = true;
     DefaultSubscriptionLifetime = TimeSpan.FromHours(48);
     PublishLocalByDefault = true;
 }