// Token: 0x06001D08 RID: 7432 RVA: 0x00078A14 File Offset: 0x00076C14 public MailboxLocationInfo(Guid mailboxGuid, ADObjectId databaseLocation, MailboxLocationType mailboxLocationType) { MailboxLocationInfo.ValidateMailboxInfo(mailboxGuid, databaseLocation); this.MailboxGuid = mailboxGuid; this.databaseLocation = ((databaseLocation != null) ? new ADObjectId(databaseLocation.ObjectGuid, databaseLocation.PartitionFQDN) : null); this.MailboxLocationType = mailboxLocationType; this.infoToString = null; }
// Token: 0x06001D09 RID: 7433 RVA: 0x00078A60 File Offset: 0x00076C60 public MailboxLocationInfo(string mailboxLocationString) { if (string.IsNullOrEmpty(mailboxLocationString)) { throw new ArgumentNullException("mailboxLocationString"); } string[] array = mailboxLocationString.Split(new string[] { MailboxLocationInfo.MailboxLocationDelimiter }, StringSplitOptions.None); int minValue = int.MinValue; if (array.Length > 1 && (!int.TryParse(array[0], out minValue) || minValue > MailboxLocationInfo.MaxSerializableVersion || minValue < 0)) { throw new ArgumentException("mailboxLocationString"); } Guid guid = Guid.Empty; string text = null; for (int i = 1; i < array.Length; i++) { if (!string.IsNullOrEmpty(array[i])) { try { switch (i) { case 1: this.MailboxGuid = Guid.Parse(array[1]); break; case 2: this.MailboxLocationType = (MailboxLocationType)Enum.Parse(typeof(MailboxLocationType), array[2]); break; case 3: text = array[3]; break; case 4: guid = Guid.Parse(array[4]); break; } } catch (Exception innerException) { throw new ADOperationException(DirectoryStrings.CannotParse(array[i]), innerException); } } } if (!guid.Equals(Guid.Empty) && text != null) { this.databaseLocation = new ADObjectId(guid, text); } MailboxLocationInfo.ValidateMailboxInfo(this.MailboxGuid, this.databaseLocation); this.infoToString = null; }