// Token: 0x06000DDE RID: 3550 RVA: 0x0003A340 File Offset: 0x00038540 public static OABManifest LoadFromMailbox(string fileSetId, MailboxSession session) { OABManifest.Tracer.TraceFunction(0L, "OABManifest.LoadFromMailbox: start"); OABManifest result = null; MailboxFileStore mailboxFileStore = new MailboxFileStore("OAB"); FileSetItem current = mailboxFileStore.GetCurrent(fileSetId, session); using (Stream singleFile = mailboxFileStore.GetSingleFile(current, "oab.xml", session)) { if (singleFile != null) { try { result = OABManifest.Deserialize(singleFile); goto IL_6B; } catch (InvalidDataException arg) { OABManifest.Tracer.TraceError <string, InvalidDataException>(0L, "OABManifest.LoadFromMailbox: unable to load OAB manifest from mailbox fileset {0} due to exception: {1}", fileSetId, arg); goto IL_6B; } } OABManifest.Tracer.TraceError <string>(0L, "OABManifest.LoadFromMailbox: unable to load OAB manifest from mailbox fileset {0} because the manifest attachment cannot be found", fileSetId); IL_6B :; } OABManifest.Tracer.TraceFunction(0L, "OABManifest.LoadFromMailbox: end"); return(result); }
protected override void Process(MailboxSession mailboxSession, MailboxFileStore mailboxFileStore) { foreach (FileSetItem sendToPipeline in mailboxFileStore.GetAll(base.FileSetId, mailboxSession)) { base.WriteObject(sendToPipeline); } }
protected override void InternalProcessRecord() { TaskLogger.LogEnter(new object[] { this.DataObject }); ADUser localOrganizationMailbox = this.GetLocalOrganizationMailbox(); if (localOrganizationMailbox != null) { MailboxFileStore mailboxFileStore = new MailboxFileStore(this.FolderName); ExchangePrincipal mailboxOwner = ExchangePrincipal.FromADUser(localOrganizationMailbox, null); using (MailboxSession mailboxSession = MailboxSession.OpenAsAdmin(mailboxOwner, CultureInfo.InvariantCulture, "Client=Management")) { this.Process(mailboxSession, mailboxFileStore); } } TaskLogger.LogExit(); }
protected override void Process(MailboxSession mailboxSession, MailboxFileStore mailboxFileStore) { mailboxFileStore.RemoveAll(base.FileSetId, mailboxSession); }
protected abstract void Process(MailboxSession mailboxSession, MailboxFileStore mailboxFileStore);