bool IMailbox.IsMailboxCapabilitySupported(MailboxCapabilities capability) { MrsTracer.ProxyClient.Function("RemoteMailbox.IsMailboxCapabilitySupported({0})", new object[] { capability }); bool result; if (this.mailboxCapabilities.TryGetValue(capability, out result)) { return(result); } this.VerifyMailboxConnection(); if (capability == MailboxCapabilities.FolderRules && this is RemoteDestinationMailbox) { MailboxInformation mailboxInformation = ((IMailbox)this).GetMailboxInformation(); if (mailboxInformation != null) { this.mailboxCapabilities[capability] = (mailboxInformation.ServerVersion >= Server.E14MinVersion); return(this.mailboxCapabilities[capability]); } } if (capability == MailboxCapabilities.FolderRules || capability == MailboxCapabilities.FolderAcls) { this.mailboxCapabilities[capability] = true; if (base.ServerVersion[60]) { this.mailboxCapabilities[capability] = base.MrsProxy.IMailbox_IsMailboxCapabilitySupported2(base.Handle, (int)capability); } return(this.mailboxCapabilities[capability]); } if (base.ServerVersion[47]) { this.mailboxCapabilities[capability] = base.MrsProxy.IMailbox_IsMailboxCapabilitySupported2(base.Handle, (int)capability); return(this.mailboxCapabilities[capability]); } if (base.ServerVersion[43] && (capability == MailboxCapabilities.PagedEnumerateChanges || capability == MailboxCapabilities.PagedGetActions || capability == MailboxCapabilities.ReplayActions)) { this.mailboxCapabilities[capability] = base.MrsProxy.IMailbox_IsMailboxCapabilitySupported(base.Handle, capability); return(this.mailboxCapabilities[capability]); } this.mailboxCapabilities[capability] = false; return(this.mailboxCapabilities[capability]); }
protected virtual bool IsMailboxCapabilitySupportedInternal(MailboxCapabilities capability) { switch (capability) { case MailboxCapabilities.PagedEnumerateChanges: case MailboxCapabilities.RunIsInteg: case MailboxCapabilities.ExtendedAclInformation: case MailboxCapabilities.PagedEnumerateHierarchyChanges: case MailboxCapabilities.FolderRules: case MailboxCapabilities.FolderAcls: break; default: if (capability != MailboxCapabilities.PagedGetActions) { return(false); } break; } return(true); }
bool IMailbox.IsMailboxCapabilitySupported(MailboxCapabilities capability) { bool result = false; base.CreateContext("IMailbox.IsMailboxCapabilitySupported", new DataContext[] { new SimpleValueDataContext("Capability", capability) }).Execute(delegate { bool result; if (this.mailboxCapabilities.TryGetValue((int)capability, out result)) { result = result; return; } MailboxCapabilities capability2 = capability; MailboxCapabilities capability3 = capability; MailboxCapabilities capability4 = capability; MailboxCapabilities capability5 = capability; result = this.WrappedObject.IsMailboxCapabilitySupported(capability); this.mailboxCapabilities.Add((int)capability, result); }, true); return(result); }
bool IMailbox.IsMailboxCapabilitySupported(MailboxCapabilities capability) { return(capability == MailboxCapabilities.ReplayActions); }
bool IMailbox.IsMailboxCapabilitySupported(MailboxCapabilities capability) { return(false); }
bool IMailbox.IsMailboxCapabilitySupported(MailboxCapabilities capability) { return(this.IsMailboxCapabilitySupportedInternal(capability)); }
protected override bool IsMailboxCapabilitySupportedInternal(MailboxCapabilities capability) { return(capability == MailboxCapabilities.ExportFolders || base.IsMailboxCapabilitySupportedInternal(capability)); }