public MessagingRoot(MessagingSerializationGraph serialization, JasperOptions options, IMessageLogger messageLogger, IContainer container, ITransportLogger transportLogger ) { Options = options; Handlers = options.HandlerGraph; TransportLogger = transportLogger; Settings = options.Advanced; Serialization = serialization; MessageLogger = messageLogger; Pipeline = new HandlerPipeline(Serialization, Handlers, MessageLogger, container.QuickBuildAll <IMissingHandler>(), this); Runtime = new TransportRuntime(this); _persistence = new Lazy <IEnvelopePersistence>(() => container.GetInstance <IEnvelopePersistence>()); Router = new EnvelopeRouter(this); _container = container; Cancellation = Settings.Cancellation; }
internal ISendingAgent AddSenderForDestination(Uri uri, IMessagingRoot root, TransportRuntime runtime) { var queueName = QueueName(uri); var queue = _queues[queueName]; if (uri.IsDurable()) { queue.IsDurable = true; } return(addQueue(root, runtime, queue)); }