Beispiel #1
0
 public MailboxAssociationIdParameter(MailboxAssociationIdParameter mailboxAssociationId) : this(mailboxAssociationId.ToString())
 {
     this.rawIdentity        = mailboxAssociationId.rawIdentity;
     this.MailboxId          = mailboxAssociationId.MailboxId;
     this.AssociationIdType  = mailboxAssociationId.AssociationIdType;
     this.AssociationIdValue = mailboxAssociationId.AssociationIdValue;
 }
Beispiel #2
0
        public IMailboxLocator CreateSlaveLocator(MailboxAssociationIdParameter mailboxAssociationIdParameter)
        {
            string externalId         = null;
            string associationIdValue = mailboxAssociationIdParameter.AssociationIdValue;

            if (mailboxAssociationIdParameter.AssociationIdType == MailboxAssociationIdParameter.IdTypeExternalId)
            {
                externalId = mailboxAssociationIdParameter.AssociationIdValue;
            }
            return(this.CreateSlaveLocator(externalId, associationIdValue));
        }
Beispiel #3
0
 public MailboxAssociationIdParameter(string mailboxAssociationId)
 {
     ArgumentValidator.ThrowIfNullOrEmpty("mailboxAssociationId", mailboxAssociationId);
     this.rawIdentity = mailboxAssociationId;
     string[] array = mailboxAssociationId.Split(MailboxAssociationIdParameter.IdTokenizer, 3);
     if (array.Length == 2 || array.Length > 3)
     {
         throw new FormatException(Strings.ErrorInvalidMailboxAssociationIdentity(this.rawIdentity));
     }
     try
     {
         MailboxStoreObjectIdParameter mailboxStoreObjectIdParameter = new MailboxStoreObjectIdParameter(array[0]);
         if (mailboxStoreObjectIdParameter.RawOwner != null)
         {
             this.MailboxId          = mailboxStoreObjectIdParameter.RawOwner;
             this.AssociationIdType  = MailboxAssociationIdParameter.IdTypeItemId;
             this.AssociationIdValue = mailboxStoreObjectIdParameter.RawStoreObjectId.ToBase64String();
         }
         return;
     }
     catch (FormatException)
     {
     }
     this.MailboxId          = new MailboxIdParameter(array[0]);
     this.AssociationIdType  = null;
     this.AssociationIdValue = null;
     if (array.Length == 3)
     {
         if (!MailboxAssociationIdParameter.IsValidIdType(array[1]) || string.IsNullOrWhiteSpace(array[2]))
         {
             throw new FormatException(Strings.ErrorInvalidMailboxAssociationIdentity(this.rawIdentity));
         }
         this.AssociationIdType  = array[1];
         this.AssociationIdValue = array[2];
     }
 }
 public MailboxAssociationContext(IRecipientSession adSession, ADUser mailbox, string cmdletName, MailboxAssociationIdParameter associationId, bool includeNotPromotedProperties = false)
 {
     ArgumentValidator.ThrowIfNull("adSession", adSession);
     ArgumentValidator.ThrowIfNull("mailbox", mailbox);
     ArgumentValidator.ThrowIfNullOrWhiteSpace("cmdletName", cmdletName);
     this.adSession                      = adSession;
     this.mailbox                        = mailbox;
     this.associationId                  = associationId;
     this.clientInfoString               = string.Format("Client=Management;Action={0}", cmdletName);
     this.cmdletName                     = cmdletName;
     this.includeNotPromotedProperties   = includeNotPromotedProperties;
     this.groupMailboxAccessLayerFactory = GroupMailboxAccessLayerEntityFactory.Instantiate(adSession, mailbox);
 }