C# Класс Rebus.Pipeline.Receive.HandleDeferredMessagesStep

Наследование: IIncomingStep, IDisposable, IInitializable
Показать файл Открыть проект

Private Properties

Свойство Тип Описание
ForwardMessageToExternalTimeoutManager System.Threading.Tasks.Task
GetTimeToBeDelivered DateTimeOffset
StoreMessageUntilDue System.Threading.Tasks.Task
TimerElapsed System.Threading.Tasks.Task

Открытые методы

Метод Описание
Dispose ( ) : void

Last-resort disposal of the due messages background task

HandleDeferredMessagesStep ( ITimeoutManager timeoutManager, ITransport transport, Rebus.Config.Options options, IRebusLoggerFactory rebusLoggerFactory, IAsyncTaskFactory asyncTaskFactory ) : System

Constructs the step, using the specified ITimeoutManager to defer relevant messages and the specified ITransport to deliver messages when they're due.

Initialize ( ) : void

Initialized the step (starts the DueMessagesSenderTaskName background task if using the internal timeout manager)

Process ( IncomingStepContext context, Func next ) : System.Threading.Tasks.Task

Checks to see if the incoming message has the Headers.DeferredUntil header. If that is the case, the message is either stored for later delivery or forwarded to the configured external timeout manager. If not, the message will be passed on down the pipeline.

Приватные методы

Метод Описание
ForwardMessageToExternalTimeoutManager ( Rebus.Messages.TransportMessage transportMessage, ITransactionContext transactionContext ) : System.Threading.Tasks.Task
GetTimeToBeDelivered ( string deferredUntil ) : DateTimeOffset
StoreMessageUntilDue ( string deferredUntil, string>.Dictionary headers, Rebus.Messages.TransportMessage transportMessage ) : System.Threading.Tasks.Task
TimerElapsed ( ) : System.Threading.Tasks.Task

Описание методов

Dispose() публичный Метод

Last-resort disposal of the due messages background task
public Dispose ( ) : void
Результат void

HandleDeferredMessagesStep() публичный Метод

Constructs the step, using the specified ITimeoutManager to defer relevant messages and the specified ITransport to deliver messages when they're due.
public HandleDeferredMessagesStep ( ITimeoutManager timeoutManager, ITransport transport, Rebus.Config.Options options, IRebusLoggerFactory rebusLoggerFactory, IAsyncTaskFactory asyncTaskFactory ) : System
timeoutManager ITimeoutManager
transport ITransport
options Rebus.Config.Options
rebusLoggerFactory IRebusLoggerFactory
asyncTaskFactory IAsyncTaskFactory
Результат System

Initialize() публичный Метод

Initialized the step (starts the DueMessagesSenderTaskName background task if using the internal timeout manager)
public Initialize ( ) : void
Результат void

Process() публичный Метод

Checks to see if the incoming message has the Headers.DeferredUntil header. If that is the case, the message is either stored for later delivery or forwarded to the configured external timeout manager. If not, the message will be passed on down the pipeline.
public Process ( IncomingStepContext context, Func next ) : System.Threading.Tasks.Task
context IncomingStepContext
next Func
Результат System.Threading.Tasks.Task