// Token: 0x060002C9 RID: 713 RVA: 0x0000A280 File Offset: 0x00008480
        public static WacRequest ParseWacRequest(string mailboxSmtpAddress, HttpRequest request)
        {
            if (request == null)
            {
                throw new OwaInvalidRequestException("Request object is null");
            }
            if (!UrlUtilities.IsWacRequest(request))
            {
                throw new OwaInvalidRequestException("Expected a WAC request, but got this instead: " + request.Url.AbsoluteUri);
            }
            WacRequestType requestType       = WacRequest.GetRequestType(request);
            string         text              = request.QueryString["access_token"] ?? string.Empty;
            string         exchangeSessionId = WacUtilities.GetExchangeSessionId(text);
            string         ewsAttachmentId;

            WacRequest.ParseAccessToken(text, out ewsAttachmentId);
            string     fileRepAsString = request.QueryString["owaatt"] ?? string.Empty;
            WacFileRep fileRep         = WacFileRep.Parse(fileRepAsString);
            string     value           = request.Headers["X-WOPI-PerfTraceRequested"] ?? string.Empty;
            bool       perfTraceRequested;

            if (!bool.TryParse(value, out perfTraceRequested))
            {
                perfTraceRequested = false;
            }
            return(new WacRequest(requestType, fileRep, (SmtpAddress)mailboxSmtpAddress, exchangeSessionId, ewsAttachmentId, request.QueryString["ui"] ?? "en-us", request.Headers["X-WOPI-InterfaceVersion"] ?? string.Empty, request.Headers["X-WOPI-MachineName"] ?? string.Empty, perfTraceRequested, request.Headers["X-WOPI-CorrelationID"] ?? string.Empty));
        }
 // Token: 0x060002B3 RID: 691 RVA: 0x0000A148 File Offset: 0x00008348
 private WacRequest(WacRequestType requestType, WacFileRep fileRep, SmtpAddress mailboxSmtpAddress, string exchangeSessionId, string ewsAttachmentId, string culture, string clientVersion, string machineName, bool perfTraceRequested, string correlationID)
 {
     this.RequestType        = requestType;
     this.WacFileRep         = fileRep;
     this.MailboxSmtpAddress = mailboxSmtpAddress;
     this.ExchangeSessionId  = exchangeSessionId;
     this.EwsAttachmentId    = ewsAttachmentId;
     this.CultureName        = culture;
     this.ClientVersion      = clientVersion;
     this.MachineName        = machineName;
     this.PerfTraceRequested = perfTraceRequested;
     this.CorrelationID      = correlationID;
 }