Ejemplo n.º 1
0
        // Token: 0x06000797 RID: 1943 RVA: 0x0003604C File Offset: 0x0003424C
        private void UnparkMessage(MailboxSession session, IStorePropertyBag rowPropertyBag)
        {
            VersionedId valueOrDefault = rowPropertyBag.GetValueOrDefault <VersionedId>(ItemSchema.Id, null);

            try
            {
                using (ParkedMeetingMessage parkedMeetingMessage = ParkedMeetingMessage.Bind(session, valueOrDefault, new PropertyDefinition[0]))
                {
                    IExchangePrincipal mailboxOwner = session.MailboxOwner;
                    parkedMeetingMessage.Recipients.Clear();
                    Participant participant = new Participant(mailboxOwner.MailboxInfo.DisplayName, mailboxOwner.LegacyDn, "EX");
                    parkedMeetingMessage.Recipients.Add(participant);
                    parkedMeetingMessage.From = participant;
                    parkedMeetingMessage.SendWithoutSavingMessage(SubmitMessageFlags.None);
                }
            }
            catch (ObjectNotFoundException arg)
            {
                CalendarProcessing.ProcessingTracer.TraceWarning <VersionedId, ObjectNotFoundException>((long)this.GetHashCode(), "Cannot find parked message any more - skipping. Id: {0}, exception {1}", valueOrDefault, arg);
            }
        }