private Item BindToItemWithItemClass(StoreObjectId id, ICollection <PropertyDefinition> properties) { switch (id.ObjectType) { case StoreObjectType.Message: return(MessageItem.Bind(this.folder.Session, id, properties)); case StoreObjectType.MeetingRequest: return(MeetingRequest.Bind(this.folder.Session, id, properties)); case StoreObjectType.MeetingResponse: return(MeetingResponse.Bind(this.folder.Session, id, properties)); case StoreObjectType.MeetingCancellation: return(MeetingCancellation.Bind(this.folder.Session, id, properties)); case StoreObjectType.Contact: return(Contact.Bind(this.folder.Session, id, properties)); case StoreObjectType.DistributionList: return(DistributionList.Bind(this.folder.Session, id, properties)); case StoreObjectType.Task: return(Task.Bind(this.folder.Session, id, true, properties)); case StoreObjectType.Post: return(PostItem.Bind(this.folder.Session, id, properties)); case StoreObjectType.Report: return(ReportMessage.Bind(this.folder.Session, id, properties)); } return(Item.Bind(this.folder.Session, id, properties)); }
public static MeetingResponse CreateMeetingResponseSeries(MailboxSession mailboxSession, ResponseType responseType) { MeetingResponse meetingResponse = ItemBuilder.CreateNewItem <MeetingResponse>(mailboxSession, CalendarItemBase.GetDraftsFolderIdOrThrow(mailboxSession), ItemCreateInfo.MeetingResponseSeriesInfo); meetingResponse.Initialize("IPM.MeetingMessageSeries.Resp", responseType); return(meetingResponse); }
internal void Initialize(string itemClassPrefix, ResponseType responseType) { base.Initialize(); EnumValidator.AssertValid <ResponseType>(responseType); base.LocationIdentifierHelperInstance.SetLocationIdentifier(55413U); this[InternalSchema.ItemClass] = MeetingResponse.ItemClassFromResponseType(itemClassPrefix, responseType); this[InternalSchema.IconIndex] = IconIndex.AppointmentMeet; }
protected override void InitializeMeetingResponse(MeetingResponse meetingResponse, ResponseType responseType, bool isCalendarDelegateAccess, ExDateTime?proposedStart, ExDateTime?proposedEnd) { base.InitializeMeetingResponse(meetingResponse, responseType, isCalendarDelegateAccess, proposedStart, proposedEnd); if (proposedStart != null && proposedEnd != null) { this.ValidateTimeProposal(proposedStart.Value, proposedEnd.Value); meetingResponse.SetTimeProposal(proposedStart.Value, proposedEnd.Value); } }
protected override MeetingResponse CreateNewMeetingResponse(MailboxSession mailboxSession, ResponseType responseType) { return(MeetingResponse.CreateMeetingResponseSeries(mailboxSession, responseType)); }
internal override void CoreObjectUpdate(CoreItem coreItem, CoreItemOperation operation) { base.CoreObjectUpdate(coreItem, operation); MeetingResponse.CoreObjectUpdateIsSilent(coreItem); }
protected override void InitializeMeetingResponse(MeetingResponse meetingResponse, ResponseType responseType, bool isCalendarDelegateAccess, ExDateTime?proposedStart, ExDateTime?proposedEnd) { base.InitializeMeetingResponse(meetingResponse, responseType, isCalendarDelegateAccess, proposedStart, proposedEnd); meetingResponse[InternalSchema.AppointmentRecurrenceBlob] = this.OccurrencePropertyBag.MasterCalendarItem.PropertyBag.GetLargeBinaryProperty(InternalSchema.AppointmentRecurrenceBlob); }
public new static MeetingResponse Bind(StoreSession session, StoreId storeId) { return(MeetingResponse.Bind(session, storeId, null)); }