DotNetWorkQueue.Queue.MessageProcessingAsync.MessageProcessingAsync C# (CSharp) Method

MessageProcessingAsync() public method

Initializes a new instance of the MessageProcessingAsync class.
public MessageProcessingAsync ( IReceiveMessagesFactory receiveMessages, IMessageContextFactory messageContextFactory, IQueueWaitFactory queueWaitFactory, ILogFactory log, ProcessMessageAsync processMessage, IReceivePoisonMessage receivePoisonMessage, IRollbackMessage rollbackMessage ) : System
receiveMessages IReceiveMessagesFactory The receive messages.
messageContextFactory IMessageContextFactory The message context factory.
queueWaitFactory IQueueWaitFactory The queue wait factory.
log ILogFactory The log.
processMessage ProcessMessageAsync The process message.
receivePoisonMessage IReceivePoisonMessage The receive poison message.
rollbackMessage IRollbackMessage rolls back a message when an exception occurs
return System
        public MessageProcessingAsync(IReceiveMessagesFactory receiveMessages,
            IMessageContextFactory messageContextFactory,
            IQueueWaitFactory queueWaitFactory,
            ILogFactory log,
            ProcessMessageAsync processMessage,
            IReceivePoisonMessage receivePoisonMessage, 
            IRollbackMessage rollbackMessage)
        {
            Guard.NotNull(() => receiveMessages, receiveMessages);
            Guard.NotNull(() => messageContextFactory, messageContextFactory);
            Guard.NotNull(() => queueWaitFactory, queueWaitFactory);
            Guard.NotNull(() => log, log);
            Guard.NotNull(() => processMessage, processMessage);
            Guard.NotNull(() => receivePoisonMessage, receivePoisonMessage);
            Guard.NotNull(() => rollbackMessage, rollbackMessage);

            _receiveMessages = receiveMessages;
            _messageContextFactory = messageContextFactory;
            _log = log.Create();
            _processMessage = processMessage;
            _receivePoisonMessage = receivePoisonMessage;
            _rollbackMessage = rollbackMessage;

            _noMessageToProcessBackoffHelper = new Lazy<IQueueWait>(queueWaitFactory.CreateQueueDelay);
            _seriousExceptionProcessBackOffHelper = new Lazy<IQueueWait>(queueWaitFactory.CreateFatalErrorDelay);
        }