protected void UpdateVacationRoute(string context, string extension, DateTime originalStartDate, DateTime startDate, DateTime endDate, bool endWithVoicemail, File audioFile) { lock (_lock) { Hashtable ht = StoredConfiguration; ArrayList cont = new ArrayList(); if (ht.ContainsKey(context)) { cont = (ArrayList)ht[context]; ht.Remove(context); } Hashtable vcr; for (int x = 0; x < cont.Count; x++) { vcr = (Hashtable)cont[x]; if (((string)vcr[_OWNING_EXTENSION_FIELD_ID] == extension) && (((DateTime)vcr[_OWNING_EXTENSION_FIELD_ID]).Ticks == originalStartDate.Ticks)) { cont.RemoveAt(x); break; } } vcr = new Hashtable(); vcr.Add(_OWNING_EXTENSION_FIELD_ID, extension); vcr.Add(_START_DATE_FIELD_ID, startDate); vcr.Add(_END_DATE_FIELD_ID, endDate); vcr.Add(_END_WITH_VM_FIELD_ID, endWithVoicemail); vcr.Add(_TYPE_FIELD_ID, VacationRouteRedirectTypes.PlayFile); vcr.Add(_AUDIO_FILE_FIELD_ID, audioFile.ToString()); ht.Add(context, cont); StoredConfiguration = ht; } }
protected void AddVacationRoute(string context, string extension, DateTime startDate, DateTime endDate, bool endWithVoicemail, File audioFile) { lock (_lock) { Hashtable ht = StoredConfiguration; ArrayList cont = new ArrayList(); if (ht.ContainsKey(context)) { cont = (ArrayList)ht[context]; ht.Remove(context); } Hashtable vcr = new Hashtable(); vcr.Add(_OWNING_EXTENSION_FIELD_ID, extension); vcr.Add(_START_DATE_FIELD_ID, startDate); vcr.Add(_END_DATE_FIELD_ID, endDate); vcr.Add(_END_WITH_VM_FIELD_ID, endWithVoicemail); vcr.Add(_TYPE_FIELD_ID, VacationRouteRedirectTypes.PlayFile); vcr.Add(_AUDIO_FILE_FIELD_ID,audioFile.ToString()); ht.Add(context, cont); StoredConfiguration = ht; } }