protected override AnchorMailbox ResolveAnchorMailbox() { string text = base.ClientRequest.Headers[Constants.PreferServerAffinityHeader]; if (!string.IsNullOrEmpty(text) && text.Equals(bool.TrueString, StringComparison.OrdinalIgnoreCase)) { HttpCookie httpCookie = base.ClientRequest.Cookies[Constants.BackEndOverrideCookieName]; string text2 = (httpCookie == null) ? null : httpCookie.Value; if (!string.IsNullOrEmpty(text2)) { try { BackEndServer backendServer = BackEndServer.FromString(text2); base.Logger.Set(HttpProxyMetadata.RoutingHint, Constants.BackEndOverrideCookieName); return(new ServerInfoAnchorMailbox(backendServer, this)); } catch (ArgumentException arg) { base.Logger.AppendGenericError("Unable to parse TargetServer: {0}", text2); ExTraceGlobals.ExceptionTracer.TraceDebug <string, ArgumentException>((long)this.GetHashCode(), "[EwsProxyRequestHandler::ResolveAnchorMailbox]: exception hit where target server was '{0}': {1}", text2, arg); } } } return(base.ResolveAnchorMailbox()); }
protected override AnchorMailbox ResolveAnchorMailbox() { string beresouceCookie = BEResourceRequestHandler.GetBEResouceCookie(base.ClientRequest); if (!string.IsNullOrEmpty(beresouceCookie)) { base.Logger.Set(HttpProxyMetadata.RoutingHint, Constants.BEResource + "-Cookie"); ExTraceGlobals.VerboseTracer.TraceDebug <string, int>((long)this.GetHashCode(), "[BEResourceRequestHanlder::ResolveAnchorMailbox]: BEResource cookie used: {0}; context {1}.", beresouceCookie, base.TraceContext); return(new ServerInfoAnchorMailbox(BackEndServer.FromString(beresouceCookie), this)); } return(base.ResolveAnchorMailbox()); }
protected override AnchorMailbox ResolveAnchorMailbox() { HttpCookie httpCookie = base.ClientRequest.Cookies[Constants.AnonResourceBackend]; if (httpCookie != null) { this.savedBackendServer = httpCookie.Value; } if (!string.IsNullOrEmpty(this.savedBackendServer)) { base.Logger.Set(HttpProxyMetadata.RoutingHint, Constants.AnonResourceBackend + "-Cookie"); ExTraceGlobals.VerboseTracer.TraceDebug <HttpCookie, int>((long)this.GetHashCode(), "[OwaResourceProxyRequestHandler::ResolveAnchorMailbox]: AnonResourceBackend cookie used: {0}; context {1}.", httpCookie, base.TraceContext); return(new ServerInfoAnchorMailbox(BackEndServer.FromString(this.savedBackendServer), this)); } return(new AnonymousAnchorMailbox(this)); }
// Token: 0x06000530 RID: 1328 RVA: 0x0001CD1C File Offset: 0x0001AF1C protected override AnchorMailbox ResolveAnchorMailbox() { string text; string text2; if (RequestHeaderParser.TryGetPreferServerAffinity(base.HttpContext.Request.Headers, ref text) && text.Equals(bool.TrueString, StringComparison.OrdinalIgnoreCase) && RequestCookieParser.TryGetTargetServerOverride(base.HttpContext.Request.Cookies, ref text2)) { try { BackEndServer backendServer = BackEndServer.FromString(text2); base.Logger.Set(3, Constants.BackEndOverrideCookieName); return(new ServerInfoAnchorMailbox(backendServer, this)); } catch (ArgumentException ex) { base.Logger.AppendGenericError("Unable to parse TargetServer: {0}", text2); if (ExTraceGlobals.ExceptionTracer.IsTraceEnabled(1)) { ExTraceGlobals.ExceptionTracer.TraceDebug <string, ArgumentException>((long)this.GetHashCode(), "[EwsProxyRequestHandler::ResolveAnchorMailbox]: exception hit where target server was '{0}': {1}", text2, ex); } } } return(base.ResolveAnchorMailbox()); }