iQQ.Net.WebQQCore.Im.QQException.GetErrorCode C# (CSharp) Method

GetErrorCode() private static method

private static GetErrorCode ( Exception e ) : QQErrorCode
e System.Exception
return QQErrorCode
        private static QQErrorCode GetErrorCode(Exception e)
        {
            if (e is TimeoutException) return QQErrorCode.IOTimeout;
            if (e is IOException) return QQErrorCode.IOError;
            if (e is ArgumentException) return QQErrorCode.InvalidParameter;
            if (e is JsonException) return QQErrorCode.JsonError;

            var webEx = e as WebException;
            if (webEx != null)
            {
                switch (webEx.Status)
                {
                    case WebExceptionStatus.Success: break;

                    case WebExceptionStatus.NameResolutionFailure: return QQErrorCode.InvalidParameter;

                    case WebExceptionStatus.ConnectFailure:
                    case WebExceptionStatus.ReceiveFailure:
                    case WebExceptionStatus.SendFailure:
                    case WebExceptionStatus.PipelineFailure:
                        return QQErrorCode.IOError;

                    case WebExceptionStatus.RequestCanceled:
                        break;
                    case WebExceptionStatus.ProtocolError:
                        break;
                    case WebExceptionStatus.ConnectionClosed:
                        break;
                    case WebExceptionStatus.TrustFailure:
                        break;
                    case WebExceptionStatus.SecureChannelFailure:
                        break;
                    case WebExceptionStatus.ServerProtocolViolation:
                        break;
                    case WebExceptionStatus.KeepAliveFailure:
                        break;
                    case WebExceptionStatus.Pending:
                        break;
                    case WebExceptionStatus.Timeout: return QQErrorCode.IOTimeout;

                    case WebExceptionStatus.ProxyNameResolutionFailure:
                        break;
                    case WebExceptionStatus.UnknownError: return QQErrorCode.UnknownError;
                    case WebExceptionStatus.MessageLengthLimitExceeded:
                        break;
                    case WebExceptionStatus.CacheEntryNotFound:
                        break;
                    case WebExceptionStatus.RequestProhibitedByCachePolicy:
                        break;
                    case WebExceptionStatus.RequestProhibitedByProxy:
                        break;
                    default:
                        break;
                }
            }

            return QQErrorCode.UnknownError;
        }