protected CalendarItemBase GetCalendarItemToUpdate(CalendarItemBase correlatedCalendarItem) { CalendarItemBase calendarItemBase = correlatedCalendarItem; if (calendarItemBase == null) { MailboxSession calendarMailboxSession = MeetingMessage.GetCalendarMailboxSession(this); if ((calendarItemBase = this.RecoverDeletedOccurrence()) == null) { ExTraceGlobals.MeetingMessageTracer.Information <GlobalObjectId>((long)this.GetHashCode(), "Storage.MeetingMessage.GetCalendarItemToUpdate: GOID={0}. Creating calendar item", this.GlobalObjectId); StoreObjectId parentFolderId = calendarMailboxSession.SafeGetDefaultFolderId(DefaultFolderType.Calendar); calendarItemBase = (this.IsSeriesMessage ? CalendarItemSeries.CreateSeries(calendarMailboxSession, parentFolderId, false) : CalendarItem.CreateCalendarItem(calendarMailboxSession, parentFolderId, false)); } else { ExTraceGlobals.MeetingMessageTracer.Information <GlobalObjectId>((long)this.GetHashCode(), "Storage.MeetingMessage.GetCalendarItemToUpdate: GOID={0}. Recovered deleted occurrence.", this.GlobalObjectId); } } return(calendarItemBase); }