public static void SubscribeToCommand <TCommand>(this IBusClient bus, IHost host) where TCommand : ICommand
        {
            var handler = (ICommandHandler <TCommand>)host.Services
                          .GetService(typeof(ICommandHandler <TCommand>));

            bus.WithCommandHandlerAsync(handler);
        }
        public void SubscribeToCommand <TCommand>() where TCommand : ICommand
        {
            var _serviceProvider = _serviceCollection.BuildServiceProvider();
            var handler          = _serviceProvider.GetService <ICommandHandler <TCommand> >();

            _bus.WithCommandHandlerAsync(handler);
        }
Esempio n. 3
0
            public BusBuilder Subscribe2Command <TCommad>() where TCommad : ICommand
            {
                var handler = (ICommandHandler <TCommad>)_webHost.Services.GetService(typeof(ICommandHandler <TCommad>));

                _bus.WithCommandHandlerAsync(handler);
                return(this);
            }
            public BusBuilder SubscribeToCommand <TCommand>(string exchangeName = null, string routingKey = null) where TCommand : ICommand
            {
                var commandHandler = _resolver.Resolve <ICommandHandler <TCommand> >();

                _bus.WithCommandHandlerAsync(commandHandler, exchangeName, routingKey);

                return(this);
            }
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                var commandHandler = _resolver.Resolve <ICommandHandler <TCommand> >();

                _bus.WithCommandHandlerAsync(commandHandler, _queueName);

                return(this);
            }
Esempio n. 6
0
            public BusBuilder SubscribeToCommand <Command>() where Command : Message
            {
                var handler = (IHandlerMS <Command>)_webHost.Services.GetService(typeof(IHandlerMS <Command>));

                _bus.WithCommandHandlerAsync(handler);

                return(this);
            }
            public async Task <BusBuilder> SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                var handler = (ICommandHandler <TCommand>)_webHost.Services
                              .GetService(typeof(ICommandHandler <TCommand>));
                await _bus.WithCommandHandlerAsync(handler);

                return(this);
            }
Esempio n. 8
0
            /// <summary>
            /// Method to subscribe to a command
            /// </summary>
            /// <typeparam name="TCommand">The command to subscribe to</typeparam>
            /// <returns>To make piping possible</returns>
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                var handler = (ICommandHandler <TCommand>)host.Services.GetService(typeof(ICommandHandler <TCommand>));

                busClient.WithCommandHandlerAsync <TCommand>(handler);

                return(this);
            }
Esempio n. 9
0
        public BusBuilder SubscribeToCommand <TCommand>()
        {
            var handler = (ICommandHandler <TCommand>)webHost.Services
                          .GetService(typeof(ICommandHandler <TCommand>));

            bus.WithCommandHandlerAsync(handler);

            return(this);
        }
Esempio n. 10
0
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                var handler = (ICommandHandler <TCommand>)_webHost.Services.CreateScope()
                              .ServiceProvider.GetRequiredService(typeof(ICommandHandler <TCommand>));

                _bus.WithCommandHandlerAsync(handler);

                return(this);
            }
Esempio n. 11
0
        public BusBuilder SubScribeToCommand <TCommand>() where TCommand : ICommand
        {
            var handler = _webHost.Services.GetService(typeof(ICommandHandler <TCommand>))
                          as ICommandHandler <TCommand>;

            _bus.WithCommandHandlerAsync(handler);

            return(this);
        }
Esempio n. 12
0
            public BusBuilder SubscribeToCommand <TCommand>()
                where TCommand : ICommand
            {
                var handler = _webHost.Services.GetService <ICommandHandler <TCommand> >();

                _bus.WithCommandHandlerAsync(handler);

                return(this);
            }
Esempio n. 13
0
            public BusBuilder SubscribeToCommand <TComand>() where TComand : ICommand
            {
                Console.WriteLine("SubscribeToCommand");

                var handler = (ICommandHandler <TComand>)_webHost.Services.GetService(typeof(ICommandHandler <TComand>));

                _busClient.WithCommandHandlerAsync(handler);

                return(this);
            }
Esempio n. 14
0
        public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
        {
            using (var serviceScope = _webHost.Services.GetRequiredService <IServiceScopeFactory>().CreateScope())
            {
                var handler = (ICommandHandler <TCommand>)serviceScope.ServiceProvider.GetService(typeof(ICommandHandler <TCommand>));
                _bus.WithCommandHandlerAsync(handler);

                return(this);
            }
        }
Esempio n. 15
0
            public BusBuilder SubscribeToCommand <TCommand> () where TCommand : ICommand
            {
                var handler = (ICommandHandler <TCommand>)_webhost.Services
                              .GetService(typeof(ICommandHandler <TCommand>));

                // var serviceProvider = (IServiceProvider) _webhost.Services.GetService (typeof (IServiceProvider));
                // var handler = serviceProvider.CreateScope ().ServiceProvider.GetRequiredService<ICommandHandler<TCommand>> ();

                //this extension method should be created
                _bus.WithCommandHandlerAsync(handler);
                return(this);
            }
Esempio n. 16
0
            /// <summary>
            /// Subscribe commands.
            /// </summary>
            /// <typeparam name="TCommand"></typeparam>
            /// <returns></returns>
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                // Using microsoft extension dependency to resolve the issue to get events services registered.
                using (var serviceScope = _webHost.Services.GetRequiredService <IServiceScopeFactory>().CreateScope())
                {
                    var handler = (ICommandHandler <TCommand>)serviceScope.ServiceProvider
                                  .GetService(typeof(ICommandHandler <TCommand>));

                    _bus.WithCommandHandlerAsync(handler);

                    return(this);
                }
            }
Esempio n. 17
0
            /// <summary>
            /// fluent API to subscribe to a command
            /// </summary>
            /// <typeparam name="TCommand"></typeparam>
            /// <returns></returns>
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                //note: the method ConfigureServices(IServiceCollection services) on Startup.cs init the IOC container (mapping interface to concrete types)

                //step1:    use ioc to create instance for the hanlder of the command
                //          this is IOC resolving -  given an interface (ICommandHandler<TCommand> we ask the IOC for concrete handler instance
                var handler = (ICommandHandler <TCommand>)_webHost.Services.GetService(typeof(ICommandHandler <TCommand>));

                //step2:
                _bus.WithCommandHandlerAsync(handler);

                //step3:    eeturn this to allow fluent api
                return(this);
            }
Esempio n. 18
0
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                var commandHandlerServiceScope = _webHost.Services.GetService <IServiceScopeFactory>();

                using (var scope = commandHandlerServiceScope.CreateScope())
                {
                    var handler = scope.ServiceProvider.GetService <ICommandHandler <TCommand> >();
                    _bus.WithCommandHandlerAsync(handler);
                }
                //var handler = (ICommandHandler<TCommand>)_webHost.Services.GetService(typeof(ICommandHandler<TCommand>));
                //_bus.WithCommandHandlerAsync(handler);

                return(this);
            }
Esempio n. 19
0
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                var handler = (ICommandHandler <TCommand>)_webHost.Services
                              .GetService(typeof(ICommandHandler <TCommand>));

                _bus.WithCommandHandlerAsync(handler);

                return(this);

                //_bus.SubscribeAsync<TCommand>(x =>
                //{
                //    var handler = (ICommandHandler<TCommand>)_webHost.Services
                //    .GetService(typeof(ICommandHandler<TCommand>));
                //    return handler.HandleAsync(x);
                //});
                //return this;
            }
Esempio n. 20
0
        public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
        {
            using (var serviceScope = webHost.Services.CreateScope())
            {
                var service = serviceScope.ServiceProvider;

                try
                {
                    var handler = service.GetRequiredService <ICommandHandler <TCommand> >();
                    busClient.WithCommandHandlerAsync(handler);
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                    throw;
                }
            }

            return(this);
        }
            public BusBuilder SubscribeToCommand <TCommand>() where TCommand : ICommand
            {
                _bus.WithCommandHandlerAsync <TCommand>(_resolver, _queueName);

                return(this);
            }