コード例 #1
0
 protected override void ConfigureAmazonSqsBus(IAmazonSqsBusFactoryConfigurator configurator)
 {
     configurator.ReceiveEndpoint("input-fault", endpointConfigurator =>
     {
         _faulted = Handled <Fault <TestCommand> >(endpointConfigurator);
     });
 }
コード例 #2
0
        /// <summary>
        /// Registers a management endpoint on the bus, which can be used to control
        /// filters and other management control points on the bus.
        /// </summary>
        /// <param name="configurator"></param>
        /// <param name="host">The host where the endpoint is to be created</param>
        /// <param name="configure">Configure additional values of the underlying receive endpoint</param>
        /// <returns></returns>
        public static IManagementEndpointConfigurator ManagementEndpoint(this IAmazonSqsBusFactoryConfigurator configurator,
                                                                         IAmazonSqsHost host, Action <IAmazonSqsReceiveEndpointConfigurator> configure = null)
        {
            if (configurator == null)
            {
                throw new ArgumentNullException(nameof(configurator));
            }

            if (host == null)
            {
                throw new ArgumentNullException(nameof(host));
            }

            var queueName = host.Topology.CreateTemporaryQueueName("manage-");

            IAmazonSqsReceiveEndpointConfigurator specification = null;

            configurator.ReceiveEndpoint(host, queueName, x =>
            {
                x.AutoDelete = true;
                x.Durable    = false;

                configure?.Invoke(x);

                specification = x;
            });

            var managementEndpointConfigurator = new ManagementEndpointConfigurator(specification);

            return(managementEndpointConfigurator);
        }
コード例 #3
0
        protected override void ConfigureAmazonSqsBusHost(IAmazonSqsBusFactoryConfigurator configurator, IAmazonSqsHost host)
        {
            configurator.ReceiveEndpoint(host, "input_queue_error", x =>
            {
                x.SubscribeMessageTopics = false;

                _errorHandler = Handled <PingMessage>(x);
            });
        }
コード例 #4
0
        protected override void ConfigureAmazonSqsBusHost(IAmazonSqsBusFactoryConfigurator configurator, IAmazonSqsHost host)
        {
            configurator.ReceiveEndpoint(host, "input_queue_error", x =>
            {
                x.ConfigureConsumeTopology = false;
                x.PurgeOnStartup           = true;

                _errorHandler = Handled <PingMessage>(x);
            });
        }
コード例 #5
0
        /// <summary>
        /// Declare a ReceiveEndpoint using a unique generated queue name. This queue defaults to auto-delete
        /// and non-durable. By default all services bus instances include a default receiveEndpoint that is
        /// of this type (created automatically upon the first receiver binding).
        /// </summary>
        /// <param name="configurator"></param>
        /// <param name="host"></param>
        /// <param name="configure"></param>
        public static void ReceiveEndpoint(this IAmazonSqsBusFactoryConfigurator configurator, IAmazonSqsHost host,
                                           Action <IAmazonSqsReceiveEndpointConfigurator> configure)
        {
            var queueName = host.Topology.CreateTemporaryQueueName("receiveEndpoint-");

            configurator.ReceiveEndpoint(host, queueName, x =>
            {
                x.AutoDelete = true;
                x.Durable    = false;

                configure(x);
            });
        }
コード例 #6
0
 /// <summary>
 /// Declare a ReceiveEndpoint using a unique generated queue name. This queue defaults to auto-delete
 /// and non-durable. By default all services bus instances include a default receiveEndpoint that is
 /// of this type (created automatically upon the first receiver binding).
 /// </summary>
 /// <param name="configurator"></param>
 /// <param name="definition"></param>
 /// <param name="configure"></param>
 public static void ReceiveEndpoint(this IAmazonSqsBusFactoryConfigurator configurator, IEndpointDefinition definition,
                                    Action <IAmazonSqsReceiveEndpointConfigurator> configure = null)
 {
     configurator.ReceiveEndpoint(definition, DefaultEndpointNameFormatter.Instance, configure);
 }
コード例 #7
0
 public static void ReceiveEndpoint(this IAmazonSqsBusFactoryConfigurator configurator, IAmazonSqsHost host,
                                    Action <IAmazonSqsReceiveEndpointConfigurator> configure = null)
 {
     configurator.ReceiveEndpoint(new TemporaryEndpointDefinition(), DefaultEndpointNameFormatter.Instance, configure);
 }