public Worker(ILogger <Worker> logger, RabbitConfig options, RabbitQueueConfig queueConfig) { _logger = logger; _options = options; _queueConfig = queueConfig; InitRabbitMq(); }
/// <summary> /// Default constructor for RabbitJobQueue. /// </summary> /// <param name="config">Configurations for RabbitMQ</param> public RabbitJobQueue(RabbitQueueConfig config) { if (config.QueueType != "RabbitMQ") { throw new ArgumentException($"{nameof(config.QueueType)} is not of type RabbitMQ!"); } this.config = config; }
public static IHostBuilder CreateHostBuilder(string[] args) => Host.CreateDefaultBuilder(args) .ConfigureServices((hostContext, services) => { IConfiguration configuration = hostContext.Configuration; RabbitConfig options = configuration.GetSection("Rabbit") .Get <RabbitConfig>(); RabbitQueueConfig queueConfig = configuration.GetSection("QueueConfig") .Get <RabbitQueueConfig>(); services.AddSingleton(options); services.AddSingleton(queueConfig); services.AddHostedService <Worker>(); });