コード例 #1
0
        Task <ISendTransport> CreateSendTransport(ISessionContextSupervisor sessionContextSupervisor, IFilter <SessionContext> configureTopologyFilter,
                                                  string entityName, DestinationType destinationType)
        {
            var transport = new ActiveMqSendTransport(sessionContextSupervisor, configureTopologyFilter, entityName, destinationType);

            transport.Add(sessionContextSupervisor);

            _host.Add(transport);

            return(Task.FromResult <ISendTransport>(transport));
        }
コード例 #2
0
        public Task <ISendTransport> GetPublishTransport <T>(Uri publishAddress)
            where T : class
        {
            IActiveMqMessagePublishTopology <T> publishTopology = _publishTopology.GetMessageTopology <T>();

            var sendSettings = publishTopology.GetSendSettings();

            IAgent <SessionContext> sessionAgent = GetSessionAgent();

            var configureTopologyFilter = new ConfigureTopologyFilter <SendSettings>(sendSettings, publishTopology.GetBrokerTopology());

            var sendTransport = new ActiveMqSendTransport(sessionAgent, configureTopologyFilter, sendSettings.EntityName, DestinationType.Topic);

            sendTransport.Add(sessionAgent);

            _host.Add(sendTransport);

            return(Task.FromResult <ISendTransport>(sendTransport));
        }