public void Cancel(string key, CancelEventParameters parameters, CommandContext context = null) { CancelEventBase cancelEventBase = base.CommandFactory.CreateCancelCommand(key, this); cancelEventBase.Parameters = parameters; cancelEventBase.Execute(context); }
// Token: 0x06001223 RID: 4643 RVA: 0x0006281C File Offset: 0x00060A1C public static CancelEventParameters ParseCancel(XmlNode xmlNode) { CancelEventParameters cancelEventParameters = new CancelEventParameters(); foreach (object obj in xmlNode.ChildNodes) { XmlNode xmlNode2 = (XmlNode)obj; string localName; if ((localName = xmlNode2.LocalName) != null) { if (localName == "Importance") { cancelEventParameters.Importance = EventParametersParser.ParseImportance(xmlNode2); continue; } if (localName == "Body") { cancelEventParameters.Notes = EventParametersParser.ParseBody(xmlNode2); continue; } } throw new RequestParsingException("BadCancelEventNode:" + xmlNode2.LocalName); } return(cancelEventParameters); }
public override OperationResult DeleteSyncItem(SyncCommandItem syncCommandItem, bool deletesAsMoves) { AirSyncDiagnostics.TraceInfo(ExTraceGlobals.RequestsTracer, this, "SyncCollection.DeleteSyncItem(SyncCommandItem)"); EntitySyncProviderFactory entitySyncProviderFactory = (EntitySyncProviderFactory)base.SyncProviderFactory; StoreObjectId folderId = entitySyncProviderFactory.FolderId; if (AirSyncUtility.GetAirSyncFolderTypeClass(folderId) == "Calendar") { CancelEventParameters parameters; if (syncCommandItem.XmlNode != null) { try { parameters = EventParametersParser.ParseCancel(syncCommandItem.XmlNode); goto IL_72; } catch (RequestParsingException ex) { throw new AirSyncPermanentException(StatusCode.Sync_ProtocolError, ex.LocalizedString, ex, false) { ErrorStringForProtocolLogger = ex.LogMessage }; } } parameters = new CancelEventParameters(); IL_72: this.DeleteItem(syncCommandItem.Id, parameters); return(OperationResult.Succeeded); } return(this.DeleteSyncItem(syncCommandItem.ServerId, deletesAsMoves)); }
protected void DeleteItem(ISyncItemId syncItemId, CancelEventParameters parameters) { AirSyncDiagnostics.TraceInfo(ExTraceGlobals.RequestsTracer, this, "SyncCollection.DeleteItem"); string key = EntitySyncItem.GetKey(base.StoreSession.MailboxGuid, (StoreId)syncItemId.NativeId); this.Events.Cancel(key, parameters, null); base.ItemIdMapping.Delete(new ISyncItemId[] { syncItemId }); }
public void CancelEvent(StoreId id, CancelEventParameters parameters, int?seriesSequenceNumber = null, bool deleteAfterCancelling = true, Event updateToEvent = null, byte[] masterGoid = null) { using (ICalendarItemBase calendarItemBase = this.Bind(id)) { if (calendarItemBase.IsMeeting && !calendarItemBase.IsOrganizer()) { throw new InvalidRequestException(CalendaringStrings.ErrorNotAuthorizedToCancel); } calendarItemBase.OpenAsReadWrite(); if (updateToEvent != null) { EventTranslator.Instance.SetPropertiesFromEntityOnStorageObject(updateToEvent, calendarItemBase); } if (calendarItemBase.IsMeeting && calendarItemBase.AttendeeCollection != null && calendarItemBase.AttendeeCollection.Count > 0) { using (MeetingCancellation meetingCancellation = ((CalendarItemBase)calendarItemBase).CancelMeeting(seriesSequenceNumber, masterGoid)) { if (parameters != null) { EventWorkflowParametersTranslator <CancelEventParameters, CancelEventParametersSchema> .Instance.SetPropertiesFromEntityOnStorageObject(parameters, meetingCancellation); } MeetingMessage.SendLocalOrRemote(meetingCancellation, true, true); goto IL_95; } } if (updateToEvent != null) { calendarItemBase.SaveWithConflictCheck(SaveMode.ResolveConflicts); } IL_95 :; } if (deleteAfterCancelling) { this.Delete(id, DeleteItemFlags.MoveToDeletedItems | DeleteItemFlags.CancelCalendarItem); } }