コード例 #1
0
        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));
        }
コード例 #2
0
        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);
        }
コード例 #3
0
 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;
 }
コード例 #4
0
 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);
     }
 }
コード例 #5
0
 protected override MeetingResponse CreateNewMeetingResponse(MailboxSession mailboxSession, ResponseType responseType)
 {
     return(MeetingResponse.CreateMeetingResponseSeries(mailboxSession, responseType));
 }
コード例 #6
0
 internal override void CoreObjectUpdate(CoreItem coreItem, CoreItemOperation operation)
 {
     base.CoreObjectUpdate(coreItem, operation);
     MeetingResponse.CoreObjectUpdateIsSilent(coreItem);
 }
コード例 #7
0
 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);
 }
コード例 #8
0
 public new static MeetingResponse Bind(StoreSession session, StoreId storeId)
 {
     return(MeetingResponse.Bind(session, storeId, null));
 }