/// <summary> /// Initializes a new instance of the <see cref="Scheduler" /> class. /// </summary> /// <param name="queue">The queue.</param> /// <param name="schedulerMessageHandler">The message handler.</param> /// <param name="factory">The factory.</param> /// <param name="workGroup">The work group.</param> public Scheduler(IConsumerQueueAsync queue, ISchedulerMessageHandler schedulerMessageHandler, ITaskFactoryFactory factory, IWorkGroup workGroup) { Guard.NotNull(() => queue, queue); Guard.NotNull(() => schedulerMessageHandler, schedulerMessageHandler); Guard.NotNull(() => factory, factory); _queue = queue; _schedulerMessageHandler = schedulerMessageHandler; _taskFactory = new Lazy <ITaskFactory>(factory.Create); //if the work group is not set, we are going to just treat it as null if (!string.IsNullOrEmpty(workGroup?.Name)) { WorkGroup = workGroup; } }
/// <summary> /// Initializes a new instance of the <see cref="CommitMessageDecorator"/> class. /// </summary> /// <param name="handler">The handler.</param> /// <param name="tracer">The tracer.</param> public SchedulerMessageHandlerDecorator(ISchedulerMessageHandler handler, ActivitySource tracer) { _handler = handler; _tracer = tracer; }
/// <summary> /// Initializes a new instance of the <see cref="CommitMessageDecorator"/> class. /// </summary> /// <param name="handler">The handler.</param> /// <param name="tracer">The tracer.</param> public SchedulerMessageHandlerDecorator(ISchedulerMessageHandler handler, ITracer tracer) { _handler = handler; _tracer = tracer; }