Esempio n. 1
0
        public override MessageItem CreateForward(MailboxSession session, StoreId parentFolderId, ReplyForwardConfiguration configuration)
        {
            this.CheckDisposed("CreateForward");
            Util.ThrowOnNullArgument(session, "session");
            Util.ThrowOnNullArgument(parentFolderId, "parentFolderId");
            Util.ThrowOnNullArgument(configuration, "configuration");
            ExTraceGlobals.MeetingMessageTracer.Information <GlobalObjectId>((long)this.GetHashCode(), "Storage.MeetingCancellation.CreateForward: GOID={0}", this.GlobalObjectId);
            MeetingCancellation meetingCancellation = null;
            bool        flag = false;
            MessageItem result;

            try
            {
                meetingCancellation = (base.IsSeriesMessage ? MeetingCancellation.CreateMeetingCancellationSeries(session) : MeetingCancellation.CreateMeetingCancellation(session));
                ForwardCreation forwardCreation = new ForwardCreation(this, meetingCancellation, configuration);
                forwardCreation.PopulateProperties();
                meetingCancellation.AdjustAppointmentStateFlagsForForward();
                base.LocationIdentifierHelperInstance.SetLocationIdentifier(33397U, LastChangeAction.CreateForward);
                flag   = true;
                result = meetingCancellation;
            }
            finally
            {
                if (!flag && meetingCancellation != null)
                {
                    meetingCancellation.Dispose();
                    meetingCancellation = null;
                }
            }
            return(result);
        }
Esempio n. 2
0
 protected override MeetingCancellation CreateNewMeetingCancelation(MailboxSession mailboxSession)
 {
     return(MeetingCancellation.CreateMeetingCancellationSeries(mailboxSession));
 }