Exemple #1
0
 private static ExchangePrincipal GetArchiveExchangePrincipalInternal(ExchangePrincipal exchangePrincipal, RemotingOptions?remotingOptions)
 {
     if (exchangePrincipal.MailboxInfo.IsAggregated)
     {
         throw new InvalidOperationException("Cannot get archive mailbox of an aggregated ExchangePrincipal");
     }
     if (exchangePrincipal.MailboxInfo.IsArchive)
     {
         throw new InvalidOperationException("Cannot get archive mailbox of an archive ExchangePrincipal");
     }
     return(ExchangePrincipalExtensions.CloneExchangePrincipal(exchangePrincipal, true, null, remotingOptions));
 }
Exemple #2
0
 public static ExchangePrincipal GetAggregatedExchangePrincipal(this ExchangePrincipal exchangePrincipal, Guid aggregatedMailboxGuid)
 {
     if (exchangePrincipal.MailboxInfo.IsAggregated)
     {
         throw new InvalidOperationException("Cannot get aggregated mailbox of an aggregated ExchangePrincipal");
     }
     if (exchangePrincipal.MailboxInfo.IsArchive)
     {
         throw new InvalidOperationException("Cannot get aggregated mailbox of an archive ExchangePrincipal");
     }
     if (exchangePrincipal.AggregatedMailboxGuids.All((Guid mailboxGuid) => aggregatedMailboxGuid != mailboxGuid))
     {
         throw new InvalidOperationException("Invalid aggregated mailbox Guid used");
     }
     return(ExchangePrincipalExtensions.CloneExchangePrincipal(exchangePrincipal, false, new Guid?(aggregatedMailboxGuid), null));
 }
Exemple #3
0
 public static ExchangePrincipal GetArchiveExchangePrincipal(this ExchangePrincipal exchangePrincipal, RemotingOptions remotingOptions)
 {
     EnumValidator.ThrowIfInvalid <RemotingOptions>(remotingOptions, "remotingOptions");
     return(ExchangePrincipalExtensions.GetArchiveExchangePrincipalInternal(exchangePrincipal, new RemotingOptions?(remotingOptions)));
 }
Exemple #4
0
 public static ExchangePrincipal GetArchiveExchangePrincipal(this ExchangePrincipal exchangePrincipal)
 {
     return(ExchangePrincipalExtensions.GetArchiveExchangePrincipalInternal(exchangePrincipal, null));
 }