コード例 #1
0
 public InMemoryPublishTransportProvider(ISendTransportProvider transportProvider, IInMemoryPublishTopology publishTopology)
 {
     _transportProvider = transportProvider;
     _publishTopology   = publishTopology;
     _host = transportProvider as IInMemoryHostControl
             ?? throw new ArgumentException("The transport provider must be an InMemoryHost", nameof(transportProvider));
 }
        public void Build(IInMemoryHostControl host)
        {
            var builder = new InMemoryReceiveEndpointBuilder(host, this);

            ApplySpecifications(builder);

            var receiveEndpointContext = builder.CreateReceiveEndpointContext();

            var transport = host.GetReceiveTransport(_queueName, receiveEndpointContext);

            var receiveEndpoint = new ReceiveEndpoint(transport, receiveEndpointContext);

            host.AddReceiveEndpoint(_queueName, receiveEndpoint);

            ReceiveEndpoint = receiveEndpoint;
        }
コード例 #3
0
 public InMemoryReceiveEndpointBuilder(IInMemoryHostControl host, IInMemoryReceiveEndpointConfiguration configuration)
     : base(configuration)
 {
     _host          = host;
     _configuration = configuration;
 }