namespace Tiku.Infrastructure.Messaging; public sealed class MessagingOptions { public string Host { get; set; } = string.Empty; public string VirtualHost { get; set; } = "/"; public string Username { get; set; } = string.Empty; public string Password { get; set; } = string.Empty; public bool ConfigureConsumers { get; set; } public int OutboxBacklogAlertCount { get; set; } = 1000; public int OutboxOldestMessageAlertSeconds { get; set; } = 300; public bool IsConfigured => Uri.TryCreate(Host, UriKind.Absolute, out var uri) && uri.Scheme is "rabbitmq" or "amqp" or "amqps"; }