public RabbitBackgroundReceiver(RabbitServices rabbitService, RabbitEnv rabbitEnv, IServiceCollection collection) { var provider = collection.BuildServiceProvider(); _rabbitService = rabbitService; _rabbitEnv = rabbitEnv; _logger = provider.GetRequiredService <ILoggerFactory>().CreateLogger(GetType()); _options = provider.GetRequiredService <IOptions <RabbitOptions> >().Value ?? throw new ArgumentNullException(nameof(RabbitOptions)); }
public RabbitMessageSender(RabbitEnv rabbitEnv, RabbitServices rabbitServices, IServiceCollection services) { var provider = services.BuildServiceProvider(); _rabbitEnv = rabbitEnv; _rabbitServices = rabbitServices; _logger = provider.GetRequiredService <ILoggerFactory>().CreateLogger(GetType()); _options = provider.GetRequiredService <IOptions <RabbitOptions> >()?.Value ?? throw new ArgumentNullException(nameof(RabbitOptions)); _connectionFactory = new ConnectionFactory { HostName = _options.Host }; }
public static TSender Factory <TSender>(RabbitEnv rabbitEnv, RabbitServices rabbitService, IServiceCollection services) where TSender : RabbitMessageSender <TModel> => (TSender)Activator.CreateInstance(typeof(TSender), rabbitEnv, rabbitService, services);
public static TService Factory <TService>(RabbitServices rabbitService, RabbitEnv rabbitEnv, IServiceCollection services) where TService : RabbitBackgroundReceiver <TMessageType> => (TService)Activator.CreateInstance(typeof(TService), rabbitService, rabbitEnv, services);
public EmailMessageSender(RabbitEnv rabbitEnv, RabbitServices rabbitServices, IServiceCollection services) : base(rabbitEnv, rabbitServices, services) { }
public EmailReceiverService(RabbitServices rabbitService, RabbitEnv rabbitEnv, IServiceCollection collection) : base(rabbitService, rabbitEnv, collection) { _emailSender = collection.BuildServiceProvider().GetRequiredService <EmailSender>(); }