Exemplo n.º 1
0
        public static Result NewWarningResult(CoreException w)
        {
            Result result1 = NewResult(0x13);

            result1._mainString = w.GetMessage();
            result1._subString  = w.GetSqlState();
            result1._errorCode  = w.GetErrorCode();
            return(result1);
        }
Exemplo n.º 2
0
        private Result HandleCondition(Session session, Result result)
        {
            string subString;
            int    errorCode;
            Result r = result;

            if (result.IsError())
            {
                subString = result.GetSubString();
                errorCode = result.GetErrorCode();
            }
            else
            {
                if (session.GetLastWarning() == null)
                {
                    return(result);
                }
                CoreException lastWarning = session.GetLastWarning();
                subString = lastWarning.GetSqlState();
                errorCode = lastWarning.GetErrorCode();
            }
            if ((subString != null) || (errorCode != 0))
            {
                for (int i = 0; i < this.Handlers.Length; i++)
                {
                    StatementHandler handler = this.Handlers[i];
                    session.ClearWarnings();
                    if (handler.HandlesCondition(subString, errorCode))
                    {
                        Result result3;
                        session.ResetSchema();
                        switch (handler.HandlerType)
                        {
                        case 5:
                            result = Result.UpdateZeroResult;
                            break;

                        case 6:
                            result = Result.NewPsmResult(0x59, null, null);
                            break;

                        case 7:
                            session.RollbackToSavepoint();
                            result = Result.NewPsmResult(0x59, this.label.Name, null);
                            break;
                        }
                        session.sessionContext.PushHandlerContext(r);
                        try
                        {
                            result3 = handler.Execute(session);
                        }
                        finally
                        {
                            session.sessionContext.PopHandlerContext();
                        }
                        if (result3.IsError())
                        {
                            result = result3;
                            break;
                        }
                        return(result);
                    }
                }
                if (base.Parent != null)
                {
                    return(base.Parent.HandleCondition(session, result));
                }
            }
            return(result);
        }
Exemplo n.º 3
0
 public static void ThrowError(CoreException e)
 {
     throw new UtlException(e.GetMessage(), e.GetSqlState(), e.GetErrorCode(), e);
 }
Exemplo n.º 4
0
 public static UtlException GetException(CoreException e)
 {
     return(new UtlException(e.GetMessage(), e.GetSqlState(), e.GetErrorCode(), e));
 }