public static KeyMapping Parse(string keyMappingValue) { if (string.IsNullOrEmpty(keyMappingValue)) { throw new FormatException(DataStrings.InvalidKeyMappingFormat); } string[] array = keyMappingValue.Split(new char[] { ',' }); if (array == null || array.Length != 9) { throw new FormatException(DataStrings.InvalidKeyMappingFormat); } KeyMappingType keyMappingType = (KeyMappingType)CallerIdItem.ValidateEnumValue(array[0], "KeyMappingType", 1, 5); if (string.IsNullOrEmpty(array[1])) { throw new FormatException(DataStrings.InvalidKeyMappingKey); } int key = int.Parse(array[1]); int findMeFirstNumberDuration = 0; if (!string.IsNullOrEmpty(array[4])) { findMeFirstNumberDuration = int.Parse(array[4]); } int findMeSecondNumberDuration = 0; if (!string.IsNullOrEmpty(array[6])) { findMeSecondNumberDuration = int.Parse(array[6]); } return(new KeyMapping(keyMappingType, key, array[2], array[3], findMeFirstNumberDuration, array[5], findMeSecondNumberDuration, array[7], array[8])); }
public static CallerIdItem Parse(string callerIdItem) { if (string.IsNullOrEmpty(callerIdItem)) { throw new FormatException(DataStrings.InvalidCallerIdItemFormat); } string[] array = callerIdItem.Split(new char[] { ',' }); if (array == null || array.Length != 5) { throw new FormatException(DataStrings.InvalidCallerIdItemFormat); } int callerIdType = CallerIdItem.ValidateEnumValue(array[0], "CallerIdItemType", 1, 5); return(new CallerIdItem((CallerIdItemType)callerIdType, array[1], array[2], array[3], array[4], null)); }
public static TimeOfDay Parse(string timeOfDay) { if (string.IsNullOrEmpty(timeOfDay)) { throw new FormatException(DataStrings.InvalidTimeOfDayFormat); } string[] array = timeOfDay.Split(new char[] { ',' }); if (array == null || array.Length != 4) { throw new FormatException(DataStrings.InvalidTimeOfDayFormat); } TimeOfDayType timeOfDayType = (TimeOfDayType)CallerIdItem.ValidateEnumValue(array[0], "TimeOfDayType", 1, 3); DaysOfWeek daysOfWeek = (DaysOfWeek)CallerIdItem.ValidateEnumValue(array[1], "DaysOfWeek", 0, 127); switch (timeOfDayType) { case TimeOfDayType.WorkingHours: case TimeOfDayType.NonWorkingHours: if (daysOfWeek != DaysOfWeek.None || !string.IsNullOrEmpty(array[2]) || !string.IsNullOrEmpty(array[3])) { throw new FormatException(DataStrings.InvalidTimeOfDayFormatWorkingHours); } return(new TimeOfDay(timeOfDayType, daysOfWeek, null, null)); case TimeOfDayType.CustomPeriod: if (string.IsNullOrEmpty(array[2]) || string.IsNullOrEmpty(array[3])) { throw new FormatException(DataStrings.InvalidTimeOfDayFormatCustomWorkingHours); } return(new TimeOfDay(timeOfDayType, daysOfWeek, new TimeSpan?(TimeSpan.Parse(array[2])), new TimeSpan?(TimeSpan.Parse(array[3])))); default: throw new Exception("Unknown enum type."); } }