| | | 1 | | namespace Elsa.Workflows.Runtime.Options; |
| | | 2 | | |
| | | 3 | | /// <summary> |
| | | 4 | | /// Provides options to the workflow dispatcher. |
| | | 5 | | /// </summary> |
| | | 6 | | public class WorkflowDispatcherOptions |
| | | 7 | | { |
| | | 8 | | /// <summary> |
| | | 9 | | /// A list of available channels to dispatch workflows to. |
| | | 10 | | /// </summary> |
| | | 11 | | /// <remarks> |
| | | 12 | | /// Channels are used to dispatch workflows to different queues or endpoints. |
| | | 13 | | /// </remarks> |
| | 1055 | 14 | | public ICollection<DispatcherChannel> Channels { get; set; } = new List<DispatcherChannel>(); |
| | | 15 | | |
| | | 16 | | /// <summary> |
| | | 17 | | /// Gets or sets whether workflow dispatch calls made during workflow execution are written to the transactional out |
| | | 18 | | /// </summary> |
| | 1240 | 19 | | public bool UseTransactionalOutbox { get; set; } |
| | | 20 | | |
| | | 21 | | /// <summary> |
| | | 22 | | /// Gets or sets whether the shared outbox processor should run immediately after a workflow state commit that conta |
| | | 23 | | /// </summary> |
| | | 24 | | /// <remarks> |
| | | 25 | | /// The immediate processor drains eligible pending items from the shared outbox. Disable this option to rely only o |
| | | 26 | | /// </remarks> |
| | 197 | 27 | | public bool ProcessOutboxAfterCommit { get; set; } = true; |
| | | 28 | | |
| | | 29 | | /// <summary> |
| | | 30 | | /// Gets or sets how long an outbox item whose owner workflow instance cannot be found should be retained before cle |
| | | 31 | | /// </summary> |
| | 203 | 32 | | public TimeSpan OrphanedOutboxItemRetention { get; set; } = TimeSpan.FromDays(1); |
| | | 33 | | |
| | | 34 | | /// <summary> |
| | | 35 | | /// Gets or sets the maximum number of failed delivery attempts before an outbox item is abandoned. |
| | | 36 | | /// </summary> |
| | 199 | 37 | | public int MaxOutboxDeliveryAttempts { get; set; } = 10; |
| | | 38 | | |
| | | 39 | | /// <summary> |
| | | 40 | | /// Gets or sets the maximum number of outbox items to load and process during one processor cycle. |
| | | 41 | | /// </summary> |
| | 208 | 42 | | public int OutboxProcessorBatchSize { get; set; } = 100; |
| | | 43 | | } |