Пример #1
0
            private static void OnConnect(IAsyncResult result)
            {
                bool flag;

                if (result.CompletedSynchronously)
                {
                    return;
                }
                ConnectionPoolHelper.EstablishConnectionAsyncResult asyncState = (ConnectionPoolHelper.EstablishConnectionAsyncResult)result.AsyncState;
                Exception exception = null;

                try
                {
                    flag = asyncState.HandleConnect(result);
                }
                catch (Exception exception2)
                {
                    Exception exception1 = exception2;
                    if (Fx.IsFatal(exception1))
                    {
                        throw;
                    }
                    flag      = true;
                    exception = exception1;
                }
                if (flag)
                {
                    asyncState.Cleanup();
                    asyncState.Complete(false, exception);
                }
            }
Пример #2
0
            private static void OnProcessConnection(IAsyncResult result)
            {
                bool flag;

                if (result.CompletedSynchronously)
                {
                    return;
                }
                ConnectionPoolHelper.EstablishConnectionAsyncResult asyncState = (ConnectionPoolHelper.EstablishConnectionAsyncResult)result.AsyncState;
                Exception exception = null;

                try
                {
                    bool flag1 = false;
                    try
                    {
                        flag = asyncState.HandleProcessConnection(result);
                        if (flag)
                        {
                            flag1 = true;
                        }
                    }
                    catch (CommunicationException communicationException1)
                    {
                        CommunicationException communicationException = communicationException1;
                        if (asyncState.newConnection)
                        {
                            flag      = true;
                            exception = communicationException;
                        }
                        else
                        {
                            Fx.Exception.TraceHandled(communicationException, string.Concat(asyncState.GetType(), ".OnProcessConnection"), asyncState.Activity);
                            asyncState.Cleanup();
                            flag = asyncState.Begin();
                        }
                    }
                    catch (TimeoutException timeoutException1)
                    {
                        TimeoutException timeoutException = timeoutException1;
                        if (asyncState.newConnection)
                        {
                            flag      = true;
                            exception = timeoutException;
                        }
                        else
                        {
                            Fx.Exception.TraceHandled(timeoutException, string.Concat(asyncState.GetType(), ".OnProcessConnection"), asyncState.Activity);
                            asyncState.Cleanup();
                            flag = asyncState.Begin();
                        }
                    }
                    if (flag1)
                    {
                        asyncState.SnapshotConnection();
                    }
                }
                catch (Exception exception2)
                {
                    Exception exception1 = exception2;
                    if (Fx.IsFatal(exception1))
                    {
                        throw;
                    }
                    flag      = true;
                    exception = exception1;
                }
                if (flag)
                {
                    asyncState.Cleanup();
                    asyncState.Complete(false, exception);
                }
            }