예제 #1
0
 protected MRSRequestIdParameter(string request)
 {
     if (request == null)
     {
         throw new ArgumentNullException("request");
     }
     if (request.Equals(string.Empty))
     {
         throw new ArgumentException(MrsStrings.MustProvideNonEmptyStringForIdentity);
     }
     if (request.Contains("\\"))
     {
         int    num = request.LastIndexOf('\\');
         string g   = request.Substring(num + 1);
         Guid   guid;
         if (GuidHelper.TryParseGuid(g, out guid))
         {
             this.mailboxName      = null;
             this.requestGuid      = guid;
             this.mailboxId        = null;
             this.requestName      = null;
             this.organizationName = request.Substring(0, num);
         }
         else
         {
             this.mailboxName      = request.Substring(0, num);
             this.requestGuid      = Guid.Empty;
             this.mailboxId        = null;
             this.requestName      = g;
             this.organizationName = null;
         }
         this.indexToUse = null;
         this.indexIds   = null;
     }
     else
     {
         Guid guid;
         if (!GuidHelper.TryParseGuid(request, out guid))
         {
             throw new ArgumentException(MrsStrings.IdentityWasNotInValidFormat(request));
         }
         this.requestGuid      = guid;
         this.mailboxName      = null;
         this.mailboxId        = null;
         this.requestName      = null;
         this.indexToUse       = null;
         this.indexIds         = null;
         this.organizationName = null;
     }
     this.organizationId = null;
     this.rawIdentity    = request;
 }