using System.Collections.Generic;

namespace Hcs.Client.Api.Request
{
    internal class EndPointLocator
    {
        private static readonly Dictionary<EndPoint, string> endPoints;

        static EndPointLocator()
        {
            endPoints ??= [];

            endPoints.Add(EndPoint.BillsAsync, "ext-bus-bills-service/services/BillsAsync");
            endPoints.Add(EndPoint.DebtRequestsAsync, "ext-bus-debtreq-service/services/DebtRequestsAsync");
            endPoints.Add(EndPoint.DeviceMeteringAsync, "ext-bus-device-metering-service/services/DeviceMeteringAsync");
            endPoints.Add(EndPoint.HomeManagementAsync, "ext-bus-home-management-service/services/HomeManagementAsync");
            endPoints.Add(EndPoint.LicensesAsync, "ext-bus-licenses-service/services/LicensesAsync");
            endPoints.Add(EndPoint.NsiAsync, "ext-bus-nsi-service/services/NsiAsync");
            endPoints.Add(EndPoint.NsiCommonAsync, "ext-bus-nsi-common-service/services/NsiCommonAsync");
            endPoints.Add(EndPoint.OrgRegistryAsync, "ext-bus-org-registry-service/services/OrgRegistryAsync");
            endPoints.Add(EndPoint.OrgRegistryCommonAsync, "ext-bus-org-registry-common-service/services/OrgRegistryCommonAsync");
            endPoints.Add(EndPoint.PaymentsAsync, "ext-bus-payment-service/services/PaymentAsync");
        }

        internal static string GetPath(EndPoint endPoint)
        {
            return endPoints[endPoint];
        }
    }
}
