Esempio n. 1
0
        public static ServiceBusConfigurator UseStomp(this ServiceBusConfigurator configurator)
        {
            var busConfigurator = new PostCreateBusBuilderConfiguratorImpl(
                bus => bus.AddService(BusServiceLayer.Network, new StompSubscriptionService()));

            configurator.AddBusConfigurator(busConfigurator);
            configurator.UseJsonSerializer();

            return(configurator.AddTransportFactory <StompTransportFactory>());
        }
Esempio n. 2
0
        /// <summary>
        /// Use MSMQ, and allow the configuration of additional options, such as Multicast or SubscriptionService usage
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="configurator"></param>
        /// <param name="callback"></param>
        /// <returns></returns>
        public static ServiceBusConfigurator UseMsmq(this ServiceBusConfigurator configurator,
                                                     Action <MsmqConfigurator> callback)
        {
            configurator.AddTransportFactory <MsmqTransportFactory>()
            .AddTransportFactory <MulticastMsmqTransportFactory>();

            var msmqConfigurator = new MsmqConfiguratorImpl(configurator);

            callback(msmqConfigurator);

            return(configurator);
        }
        /// <summary>
        ///   Uses stomp as a transport channel.
        /// </summary>
        /// <param name="configurator"> The servicebus configurator. </param>
        /// <param name="configure"> Stomp transport configuration callback. </param>
        /// <returns> </returns>
        public static ServiceBusConfigurator UseStomp(this ServiceBusConfigurator configurator, Action <ConnectionFactoryConfigurator> configure)
        {
            var factoryConfigurator = new ConnectionFactoryConfiguratorImpl(new ConnectionFactoryDefaultSettings());

            configure(factoryConfigurator);

            var connectionFactory = factoryConfigurator.CreateStompClientFactory();

            configurator.AddTransportFactory <StompTransportFactory>(configureFactory => { configureFactory.SetConnectionFactory(connectionFactory); });
            configurator.UseJsonSerializer();

            return(configurator);
        }
        /// <summary>
        /// Use MSMQ, and allow the configuration of additional options, such as Multicast or SubscriptionService usage
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="configurator"></param>
        /// <param name="callback"></param>
        /// <returns></returns>
        public static ServiceBusConfigurator UseSql(this ServiceBusConfigurator configurator,
                                                    Action <SqlConfigurator> callback)
        {
            var sqlConfigurator = new SqlConfigurator(configurator);


            configurator.AddTransportFactory <SqliteTransportFactory>(factory =>
            {
                factory.ConnectionStringResolver = sqlConfigurator.ConnectionStringResolver;
                factory.Factories = sqlConfigurator.Factories;
            });

            configurator.AddTransportFactory <MsSqlTransportFactory>(factory =>
            {
                factory.ConnectionStringResolver = sqlConfigurator.ConnectionStringResolver;
                factory.Factories = sqlConfigurator.Factories;
            });

            callback(sqlConfigurator);

            return(configurator);
        }