// Token: 0x06001201 RID: 4609 RVA: 0x0006D43C File Offset: 0x0006B63C private bool CheckAndHandleConnectionFailure(WebException webException, Exception outerException) { ExTraceGlobals.ProxyCallTracer.TraceDebug((long)this.GetHashCode(), "ProxyEventHandler.HandleConnectionFailure"); if (outerException == null) { outerException = webException; } if (!ProxyEventHandler.IsConnectionFailure(webException)) { return(false); } ExTraceGlobals.ProxyTracer.TraceDebug((long)this.GetHashCode(), "The proxy attempt failed, so we'll fail over to another CAS"); this.attemptedProxyUriCount++; if (base.OwaContext.ProxyUriQueue.Count == 1 || this.attemptedProxyUriCount > base.OwaContext.ProxyUriQueue.Count) { OwaDiagnostics.LogEvent(ClientsEventLogConstants.Tuple_ProxyErrorCASFailoverAllAttemptsFailed, base.OwaContext.SecondCasUri.ToString(), new object[] { base.OwaContext.LocalHostName, base.OwaContext.SecondCasUri.ToString(), string.Format("webExceptionStatus={0}", webException.Status) }); OwaProxyException exception = new OwaProxyException("None of the CAS servers are responding", LocalizedStrings.GetNonEncoded(-200732695), outerException, false); this.asyncResult.CompleteRequest(false, exception); return(true); } ProxyUri secondCasUri = base.OwaContext.SecondCasUri; this.GetNextFailoverCas(); OwaDiagnostics.LogEvent(ClientsEventLogConstants.Tuple_ProxyErrorCASFailoverTryNextOne, secondCasUri.ToString(), new object[] { base.OwaContext.LocalHostName, secondCasUri.ToString(), base.OwaContext.SecondCasUri.ToString(), string.Format("webExceptionStatus={0}", webException.Status) }); bool result; try { this.SendProxyRequest(); result = true; } catch (Exception exception2) { this.asyncResult.CompleteRequest(false, exception2); result = true; } return(result); }
internal void ExecuteApplicationStart(object sender, EventArgs e) { ExTraceGlobals.CoreCallTracer.TraceDebug(0L, "Global.Application_Start"); try { if (OwaApplicationBase.IsRunningDfpowa) { string localPath = new Uri(Assembly.GetExecutingAssembly().CodeBase).LocalPath; DirectoryInfo[] directories = Directory.GetParent(Directory.GetParent(localPath).FullName).GetDirectories("Config"); if (directories.Length > 0) { VariantConfiguration.Initialize(directories[0].FullName); } } Globals.Initialize(this.OwaVDirType); Kerberos.FlushTicketCache(); SmallIconManager.Initialize(); ThemeManager.Initialize(); FormsRegistryManager.Initialize(HttpRuntime.AppDomainAppPath); ADCustomPropertyParser.Initialize(HttpRuntime.AppDomainAppPath); PerformanceCounterManager.InitializePerformanceCounters(); ProxyEventHandler.Initialize(); ExRpcModule.Bind(); UIExtensionManager.Initialize(); HelpProvider.Initialize(HelpProvider.HelpAppName.Owa); this.ExecuteApplicationSpecificStart(); } catch (OwaSmallIconManagerInitializationException initializationError) { ExTraceGlobals.CoreTracer.TraceDebug(0L, "Application initialization failed"); Globals.InitializationError = initializationError; return; } catch (OwaThemeManagerInitializationException initializationError2) { ExTraceGlobals.CoreTracer.TraceDebug(0L, "Application initialization failed"); Globals.InitializationError = initializationError2; return; } catch (OwaFormsRegistryInitializationException initializationError3) { ExTraceGlobals.CoreTracer.TraceDebug(0L, "Application initialization failed"); Globals.InitializationError = initializationError3; return; } catch (OwaInvalidConfigurationException ex) { ExTraceGlobals.CoreTracer.TraceDebug(0L, "Application initialization failed because of a problem with configuration: " + ex.Message); Globals.InitializationError = ex; return; } catch (OwaWin32Exception ex2) { ExTraceGlobals.CoreTracer.TraceDebug <int>(0L, "Application initialization failed with a win32 error: {0}", ex2.LastError); Globals.InitializationError = ex2; return; } catch (Exception initializationError4) { ExTraceGlobals.CoreTracer.TraceDebug(0L, "Application initialization failed"); Globals.InitializationError = initializationError4; throw; } Globals.IsInitialized = true; ExTraceGlobals.CoreTracer.TraceDebug(0L, "Application initialization succeeded"); if (Globals.IsPreCheckinApp) { OwaDiagnostics.Logger.LogEvent(ClientsEventLogConstants.Tuple_DfpOwaStartedSuccessfully, string.Empty, new object[0]); return; } OwaDiagnostics.Logger.LogEvent(ClientsEventLogConstants.Tuple_OwaStartedSuccessfully, string.Empty, new object[0]); }