namespace adas_core.Domain.Models.AppSettings;

/// <summary>
/// Represents configuration settings for connecting to and interacting with a RabbitMQ message broker.
/// </summary>
/// <remarks>
/// This class is intended to hold RabbitMQ-related configuration values, such as connection details and broker options, that can be bound from application configuration sources.
/// </remarks>
public class RabbitMqSettings
{
    public string ConnectionString { get; set; } = string.Empty;
    public string PatientsQueue { get; set; } = "patients";
    public string TreatmentsQueue { get; set; } = "treatments";
    public string ObservationsQueue { get; set; } = "observations";
    public string PumpsQueue { get; set; } = "pumps";
    public string RecordingQueue { get; set; } = "recordings";
    public string AppointmentsQueue { get; set; } = "appointments";
    public int MaxRetries { get; set; } = 2;
    public string RecordingAlertQueue { get; set; } = "recordingAlert";
    public string AlarmObservationQueue { get; set; } = "alarms";
}