public static void ApplyInterceptors(this MessageContext context)
        {
            var consumeContext = new ConsumeContext(context);

            foreach (var interceptor in ServiceBusInterceptorsProvider.Get())
            {
                interceptor.OnConsume(consumeContext);
            }
        }
        public static void ApplyInterceptors(this SendContext context)
        {
            var publishContext = new PublishContext(context);

            foreach (var interceptor in ServiceBusInterceptorsProvider.Get())
            {
                interceptor.OnPublish(publishContext);
            }
        }
Example #3
0
        private void RegisterServiceBuses(ContainerBuilder builder)
        {
            if (initializationParameters.ServiceBusParameters.Any())
            {
                var module = new ServiceBusAutofacModule(initializationParameters.ServiceBusParameters);
                builder.RegisterModule(module);
                ServiceBusInterceptorsProvider.Add(new ServiceBusInterceptor());
            }

            if (initializationParameters.ConsumerRegistrator != null)
            {
                var entryAssembly = TypeLocator.GetEntryPointAssembly();
                var consumers     = entryAssembly.GetTypes().Where(x => x.GetInterfaces().Contains(typeof(IConsumer)));
                var module        = new ConsumerAutofacModule(consumers, initializationParameters.ConsumerRegistrator);
                builder.RegisterModule(module);
            }
        }
Example #4
0
        private void RegisterServiceBuses(IServiceCollection services)
        {
            if (StartupParameters.BusInitiators.Any())
            {
                var module = new ServiceBusModule(StartupParameters.BusInitiators.Select(x =>
                                                                                         new Tuple <Type, IServiceBusInitiator>(x.ConsumerBusType, x.Initiator)));
                services.RegisterModule(module);
                ServiceBusInterceptorsProvider.Add(new ServiceBusInterceptor());
            }

            var registrator = StartupParameters.ConsumerRegistrator;

            if (registrator != null)
            {
                var entryAssembly = TypeLocator.GetEntryPointAssembly();
                var consumers     = entryAssembly.GetTypes().Where(x => x.GetInterfaces().Contains(typeof(IConsumer)));
                var module        = new ConsumerModule(consumers, registrator);
                services.RegisterModule(module);
            }
        }