using System; namespace Svrnty.CQRS.Sagas.RabbitMQ; /// /// Configuration options for RabbitMQ saga transport. /// public class RabbitMqSagaOptions { /// /// RabbitMQ host name (default: localhost). /// public string HostName { get; set; } = "localhost"; /// /// RabbitMQ port (default: 5672). /// public int Port { get; set; } = 5672; /// /// RabbitMQ user name (default: guest). /// public string UserName { get; set; } = "guest"; /// /// RabbitMQ password (default: guest). /// public string Password { get; set; } = "guest"; /// /// RabbitMQ virtual host (default: /). /// public string VirtualHost { get; set; } = "/"; /// /// Exchange name for saga commands (default: svrnty.sagas.commands). /// public string CommandExchange { get; set; } = "svrnty.sagas.commands"; /// /// Exchange name for saga responses (default: svrnty.sagas.responses). /// public string ResponseExchange { get; set; } = "svrnty.sagas.responses"; /// /// Queue name prefix for this service (default: saga-service). /// public string QueuePrefix { get; set; } = "saga-service"; /// /// Whether to use durable queues (default: true). /// public bool DurableQueues { get; set; } = true; /// /// Prefetch count for consumers (default: 10). /// public ushort PrefetchCount { get; set; } = 10; /// /// Connection retry delay (default: 5 seconds). /// public TimeSpan ConnectionRetryDelay { get; set; } = TimeSpan.FromSeconds(5); /// /// Maximum connection retry attempts (default: 10). /// public int MaxConnectionRetries { get; set; } = 10; }