void AddWorker() { lock (workers) { var worker = new Worker(errorTracker, receiveMessages, activateHandlers, storeSubscriptions, serializeMessages, storeSagaData, inspectHandlerPipeline, string.Format("Rebus {0} worker {1}", rebusId, workers.Count + 1), new DeferredMessageReDispatcher(this), new IncomingMessageMutatorPipeline(Events)); workers.Add(worker); worker.MessageFailedMaxNumberOfTimes += HandleMessageFailedMaxNumberOfTimes; worker.UserException += LogUserException; worker.SystemException += LogSystemException; worker.BeforeTransportMessage += RaiseBeforeTransportMessage; worker.AfterTransportMessage += RaiseAfterTransportMessage; worker.PoisonMessage += RaisePosionMessage; worker.BeforeMessage += RaiseBeforeMessage; worker.AfterMessage += RaiseAfterMessage; worker.UncorrelatedMessage += RaiseUncorrelatedMessage; worker.Start(); } }
void AddWorker() { lock (workers) { var worker = new Worker( errorTracker, receiveMessages, activateHandlers, storeSubscriptions, serializeMessages, storeSagaData, inspectHandlerPipeline, string.Format("Rebus {0} worker {1}", rebusId, workers.Count + 1), new DeferredMessageReDispatcher(this), new IncomingMessageMutatorPipeline(Events), storeTimeouts, events.UnitOfWorkManagers, configureAdditionalBehavior, messageLogger, continuations); workers.Add(worker); worker.MessageFailedMaxNumberOfTimes += HandleMessageFailedMaxNumberOfTimes; worker.UserException += LogUserException; worker.SystemException += LogSystemException; worker.BeforeTransportMessage += RaiseBeforeTransportMessage; worker.AfterTransportMessage += RaiseAfterTransportMessage; worker.PoisonMessage += RaisePosionMessage; worker.BeforeMessage += RaiseBeforeMessage; worker.AfterMessage += RaiseAfterMessage; worker.UncorrelatedMessage += RaiseUncorrelatedMessage; worker.AfterHandling += RaiseAfterHandling; worker.BeforeHandling += RaiseBeforeHandling; worker.OnHandlingError += RaiseOnHandlingError; worker.MessageContextEstablished += RaiseMessageContextEstablished; worker.Start(); } }