コード例 #1
0
        public void EditResponseInvite()
        {
            ExTraceGlobals.CalendarCallTracer.TraceDebug((long)this.GetHashCode(), "EditMeetingInviteEventHandler.EditResponseInvite");
            ResponseType responseType = (ResponseType)base.GetParameter("Rsp");

            this.properties = new PropertyDefinition[]
            {
                MeetingMessageSchema.CalendarProcessed,
                StoreObjectSchema.ParentItemId
            };
            CalendarItemBase calendarItemBase = null;
            MeetingRequest   meetingRequest   = null;

            try
            {
                meetingRequest   = this.GetMeetingRequest(this.properties);
                calendarItemBase = MeetingUtilities.UpdateCalendarItem(meetingRequest);
                if (calendarItemBase == null)
                {
                    throw new OwaInvalidRequestException(string.Format("calendarItemBase associated with meeting request with Id {0} is null.", base.GetParameter("Id")));
                }
                this.EditResponseInternal(responseType, calendarItemBase);
                this.UpdateItem(meetingRequest);
                Utilities.SaveItem(meetingRequest);
                meetingRequest.Load();
                this.Writer.Write("<div id=ck>");
                this.Writer.Write(meetingRequest.Id.ChangeKeyAsBase64String());
                this.Writer.Write("</div>");
            }
            finally
            {
                if (calendarItemBase != null)
                {
                    calendarItemBase.Dispose();
                    calendarItemBase = null;
                }
                if (meetingRequest != null)
                {
                    meetingRequest.Dispose();
                    meetingRequest = null;
                }
            }
        }
コード例 #2
0
        // Token: 0x06002DB9 RID: 11705 RVA: 0x00102FA4 File Offset: 0x001011A4
        private void NonEditResponseInternal(bool sendResponse)
        {
            ResponseType     responseType     = (ResponseType)base.GetParameter("Rsp");
            StoreObjectType  storeObjectType  = (StoreObjectType)base.GetParameter("ItemType");
            MeetingRequest   meetingRequest   = null;
            CalendarItemBase calendarItemBase = null;

            try
            {
                StoreObjectType storeObjectType2 = storeObjectType;
                if (storeObjectType2 != StoreObjectType.MeetingRequest)
                {
                    if (storeObjectType2 == StoreObjectType.CalendarItem)
                    {
                        calendarItemBase = base.GetRequestItem <CalendarItemBase>(new PropertyDefinition[0]);
                        MeetingUtilities.ThrowIfMeetingResponseInvalid(calendarItemBase);
                    }
                }
                else
                {
                    this.properties = new PropertyDefinition[]
                    {
                        MeetingMessageSchema.CalendarProcessed,
                        StoreObjectSchema.ParentItemId
                    };
                    meetingRequest   = this.GetMeetingRequest(this.properties);
                    calendarItemBase = MeetingUtilities.UpdateCalendarItem(meetingRequest);
                    if (calendarItemBase == null)
                    {
                        throw new OwaInvalidRequestException(string.Format("calendarItem associated with meetingRequest with Id {0} is null.", base.GetParameter("Id")));
                    }
                }
                this.UpdateItem(calendarItemBase);
                Utilities.SaveItem(calendarItemBase);
                calendarItemBase.Load();
                MeetingUtilities.NonEditResponse(responseType, calendarItemBase, sendResponse, null);
                calendarItemBase.Load();
                if (meetingRequest != null)
                {
                    this.UpdateItem(meetingRequest);
                    Utilities.SaveItem(meetingRequest);
                    MeetingUtilities.DeleteMeetingRequestAfterResponse(meetingRequest);
                }
                if (storeObjectType == StoreObjectType.CalendarItem)
                {
                    this.Writer.Write("<div id=nid>");
                    this.Writer.Write(OwaStoreObjectId.CreateFromStoreObject(calendarItemBase).ToBase64String());
                    this.Writer.Write("</div>");
                }
            }
            finally
            {
                if (meetingRequest != null)
                {
                    meetingRequest.Dispose();
                    meetingRequest = null;
                }
                if (calendarItemBase != null)
                {
                    calendarItemBase.Dispose();
                    calendarItemBase = null;
                }
            }
        }