public static string GetCustomerPremisePhoneNumber(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return args.GetPairAssignment().LineCardTN;
         case FacilityType.FiberFacility: return args.GetTelephoneNumber();
         default: return string.Empty;
     }
 }
 public static string GetDropType(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return args.GetPairAssignment().DropType;
         case FacilityType.FiberFacility: return args.GetFiberPlantData().DropType;
         default: return string.Empty;
     }
 }
 public static string GetCustomerPremiseMaxDataSpeed(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return args.GetCopperPlantData().MaxAttainableSpeed;
         case FacilityType.FiberFacility: return args.GetFiberPlantData().MaxAttainableSpeed;
         default: return string.Empty;
     }
 }
 public static string GetGwrClli(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return GetUnderscoreSeparatedValueByIndex(args.GetCopperPlantData().ServiceRouterClli, 0);
         case FacilityType.FiberFacility: return GetUnderscoreSeparatedValueByIndex(args.GetFiberPlantData().ServiceRouterClli, 0);
         default: return string.Empty;
     }
 }
        public static string GetVpiVci(FacilityDataRetrievalArgument args)
        {
            var assignment = args.GetPairAssignment();

            switch (args.GetFacilityType())
            {
                case FacilityType.CopperFacility: return string.Format("{0}/{1}", assignment.VPI, assignment.VCI);
                case FacilityType.FiberFacility:
                {
                    var portAssignment = new OntPortAssignmentsDto().Assignment;
                    if (args.GetFiberPlantData().OntPortAssignments != null)
                    {
                        portAssignment = (args.GetFiberPlantData().OntPortAssignments.FirstOrDefault()
                                           ?? new OntPortAssignmentsDto()).Assignment;
                    }
                    return GetUnderscoreSeparatedValueByIndex(portAssignment, 1);
                }
                default: return string.Empty;
            }
        }
 public static string GetSwitchOfficeCode(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return args.GetCopperPlantData().SwitchOfficeCode;
         case FacilityType.FiberFacility: return GetUnderscoreSeparatedValueByIndex(args.GetFiberPlantData().CentralOfficeCode, 0);
         default: return string.Empty;
     }
 }
 public static string GetSwitchLrn(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return args.GetCopperPlantData().SwitchLrn;
         case FacilityType.FiberFacility: return args.GetFiberPlantData().SwitchLrn;
         default: return string.Empty;
     }
 }
 public static string GetGwrIpAddress(FacilityDataRetrievalArgument args)
 {
     switch (args.GetFacilityType())
     {
         case FacilityType.CopperFacility: return args.GetCopperPlantData().ServiceRouterIpAddress;
         case FacilityType.FiberFacility: return args.GetFiberPlantData().ServiceRouterIpAddress;
         default: return string.Empty;
     }
 }