Altibase.jdbc.driver.ex

## Class Error

- java.lang.Object
- - Altibase.jdbc.driver.ex.Error

    public final class Error
    extends java.lang.Object

### Constructor Summary

Constructors
Constructor and Description
`Error()`

### Method Summary

All Methods Static Methods Concrete Methods
`static void` `checkXidAndThrowXAException(javax.transaction.xa.Xid aXid)` Xid가 올바른지 확인하고, 필요하면 예외를 던진다.
`static java.sql.SQLException` `createSQLException(int aJDBCErrorCode)`
`static java.sql.SQLException` `createSQLException(int aJDBCErrorCode, java.lang.String aArg1)`
`static java.sql.SQLException` `createSQLException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2)`
`static java.sql.SQLException` `createSQLException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.Throwable aCause)`
`static java.sql.SQLException` `createSQLFeatureNotSupportedException()`
`static java.sql.SQLException` `createSQLFeatureNotSupportedException(java.lang.String aReason)`
`static java.sql.SQLWarning` `createWarning(java.sql.SQLWarning aParent, int aJDBCErrorCode)` JDBCErrorCode에 해당하는 SQLWarning을 만든다.
`static java.sql.SQLWarning` `createWarning(java.sql.SQLWarning aParent, int aJDBCErrorCode, java.lang.String aArg)` JDBCErrorCode에 해당하는 SQLWarning을 만든다.
`static java.sql.SQLWarning` `createWarning(java.sql.SQLWarning aParent, int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2)` JDBCErrorCode에 해당하는 SQLWarning을 만든다.
`static java.sql.SQLWarning` `createWarning(java.sql.SQLWarning aParent, int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2, java.lang.Throwable aCause)` JDBCErrorCode에 해당하는 SQLWarning을 만든다.
`static java.sql.SQLWarning` `createWarning(java.sql.SQLWarning aParent, int aJDBCErrorCode, java.lang.String aArg, java.lang.Throwable aCause)` JDBCErrorCode에 해당하는 SQLWarning을 만든다.
`static java.sql.SQLWarning` `createWarning(java.sql.SQLWarning aParent, int aJDBCErrorCode, java.lang.Throwable aCause)` JDBCErrorCode에 해당하는 SQLWarning을 만든다.
`static boolean` `hasServerError(CmErrorResult aErrorResult)` 서버에서 받은 에러가 있나 확인한다.
`static boolean` `isException(CmErrorResult aErrorResult)` This checks if there is a serious exception which must be handled as an error by user applications.
`static java.sql.SQLWarning` `processServerError(java.sql.SQLWarning aWarning, CmErrorResult aErrorResult)` 서버에서 받은 에러/경고 정보를 처리한다.
`static void` `processXaError(CmErrorResult aErrorResult, CmXAResult aXAResult)` 서버에서 받은 에러 정보와 XA 결과를 확인하고, 필요하면 예외를 던진다.
`static void` `throwBatchUpdateException(int aJDBCErrorCode)` `BatchUpdateException`을 던진다.
`static void` `throwBatchUpdateException(int aJDBCErrorCode, int[] aUpdateCounts)` `BatchUpdateException`을 던진다.
`static void` `throwBatchUpdateException(java.sql.SQLException aCause, int[] aUpdateCounts)` SQLException을 BatchUpdateException으로 포장해서 던진다.
`static void` `throwCommunicationErrorException(java.lang.Throwable aCause)` communication으로 인한 예외를 `SQLException`으로 포장해서 던져준다.
`static void` `throwIllegalArgumentException(int aJDBCErrorCode)`
`static void` `throwIllegalArgumentException(int aJDBCErrorCode, java.lang.String aArg1)`
`static void` `throwIllegalArgumentException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2)`
`static void` `throwIllegalArgumentException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2, java.lang.String aArg3)`
`static void` `throwInternalError(int aJDBCErrorCode)`
`static void` `throwInternalError(int aJDBCErrorCode, java.lang.String aArg1)`
`static void` `throwInternalError(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2)`
`static void` `throwInternalError(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2, java.lang.String aArg3)`
`static void` `throwInternalError(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2, java.lang.Throwable aCause)`
`static void` `throwInternalError(int aJDBCErrorCode, java.lang.String aArg1, java.lang.Throwable aCause)`
`static void` `throwInternalError(int aJDBCErrorCode, java.lang.Throwable aCause)`
`static void` `throwIOException(int aJDBCErrorCode)`
`static void` `throwIOException(java.lang.Throwable aCause)`
`static void` `throwSQLException(int aJDBCErrorCode)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLException(int aJDBCErrorCode, java.lang.String aArg)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2, java.lang.String aArg3)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLException(int aJDBCErrorCode, java.lang.String aArg1, java.lang.String aArg2, java.lang.Throwable aCause)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLException(int aJDBCErrorCode, java.lang.String aArg, java.lang.Throwable aCause)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLException(int aJDBCErrorCode, java.lang.Throwable aCause)` JDBCErrorCode에 해당하는 SQLException을 던진다.
`static void` `throwSQLExceptionForFailover(java.sql.SQLException aCause)` Failover success로 포장한 예외를 던진다.
`static void` `throwSQLExceptionForIOException(java.lang.Throwable aCause)`
`static void` `throwXAException(int aJDBCErrorCode, int aXaResult)` XAException 예외를 던진다.
`static void` `throwXaException(java.sql.SQLException aCause)` SQLException을 XAException으로 감싸 던진다.
`static int` `toClientSideErrorCode(int aErrorCode)`
`static int` `toServerSideErrorCode(int aErrorCode, int aSeq)`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### Error

    public Error()

### Method Detail

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
Throws:
  `java.sql.SQLException`

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode,
                                         java.lang.Throwable aCause)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aCause` - 원래 났던 예외
Throws:
  `java.sql.SQLException`

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode,
                                         java.lang.String aArg)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aArg` - 메시지의 첫번째 인자에 설정할 인자값
Throws:
  `java.sql.SQLException`

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode,
                                         java.lang.String aArg,
                                         java.lang.Throwable aCause)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aArg` - 메시지의 첫번째 인자에 설정할 인자값
  `aCause` - 원래 났던 예외
Throws:
  `java.sql.SQLException`

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode,
                                         java.lang.String aArg1,
                                         java.lang.String aArg2)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aArg1` - 메시지의 1번째 인자에 설정할 인자값
  `aArg2` - 메시지의 2번째 인자에 설정할 인자값
Throws:
  `java.sql.SQLException`

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode,
                                         java.lang.String aArg1,
                                         java.lang.String aArg2,
                                         java.lang.Throwable aCause)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aArg1` - 메시지의 1번째 인자에 설정할 인자값
  `aArg2` - 메시지의 2번째 인자에 설정할 인자값
  `aCause` - 원래 났던 예외
Throws:
  `java.sql.SQLException`

#### throwSQLException

    public static void throwSQLException(int aJDBCErrorCode,
                                         java.lang.String aArg1,
                                         java.lang.String aArg2,
                                         java.lang.String aArg3)
                                  throws java.sql.SQLException

JDBCErrorCode에 해당하는 SQLException을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aArg1` - 메시지의 1번째 인자에 설정할 인자값
  `aArg2` - 메시지의 2번째 인자에 설정할 인자값
  `aArg2` - 메시지의 3번째 인자에 설정할 인자값
Throws:
  `java.sql.SQLException`

#### createSQLException

    public static java.sql.SQLException createSQLException(int aJDBCErrorCode)

#### createSQLException

    public static java.sql.SQLException createSQLException(int aJDBCErrorCode,
                                                           java.lang.String aArg1)

#### createSQLException

    public static java.sql.SQLException createSQLException(int aJDBCErrorCode,
                                                           java.lang.String aArg1,
                                                           java.lang.String aArg2)

#### createSQLException

    public static java.sql.SQLException createSQLException(int aJDBCErrorCode,
                                                           java.lang.String aArg1,
                                                           java.lang.Throwable aCause)

#### throwBatchUpdateException

    public static void throwBatchUpdateException(int aJDBCErrorCode)
                                          throws java.sql.BatchUpdateException

`BatchUpdateException`을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
Throws:
  `java.sql.BatchUpdateException`

#### throwBatchUpdateException

    public static void throwBatchUpdateException(int aJDBCErrorCode,
                                                 int[] aUpdateCounts)
                                          throws java.sql.BatchUpdateException

`BatchUpdateException`을 던진다.

Parameters:
  `aJDBCErrorCode` - 예외를 만드는데 사용할 에러 코드
  `aUpdateCounts` - 각 쿼리에 대한 update counts
Throws:
  `java.sql.BatchUpdateException`

#### throwBatchUpdateException

    public static void throwBatchUpdateException(java.sql.SQLException aCause,
                                                 int[] aUpdateCounts)
                                          throws java.sql.BatchUpdateException

SQLException을 BatchUpdateException으로 포장해서 던진다.

Parameters:
  `aCause` - 원래 났던 예외
  `aUpdateCounts` - 각 쿼리에 대한 update count
Throws:
  `java.sql.BatchUpdateException`

#### throwCommunicationErrorException

    public static void throwCommunicationErrorException(java.lang.Throwable aCause)
                                                 throws java.sql.SQLException

communication으로 인한 예외를 `SQLException`으로 포장해서 던져준다. 만약, 원본 예외가 SQLException이라면 그냥 원본 예외를 던진다.

원본 예외가 SQLException이 아니면 SQLException으로 한번 감싸주며, 에러 메시지 앞에 'Communication link failure'를 덧붙인다.

Parameters:
  `aCause` - 원래 났던 예외
Throws:
  `java.sql.SQLException`

#### throwSQLExceptionForIOException

    public static void throwSQLExceptionForIOException(java.lang.Throwable aCause)
                                                throws java.sql.SQLException

Throws:
  `java.sql.SQLException`

#### throwSQLExceptionForFailover

    public static void throwSQLExceptionForFailover(java.sql.SQLException aCause)
                                             throws java.sql.SQLException

Failover success로 포장한 예외를 던진다.

메시지에 통신 'Failover success'라고 찍히므로, 통신 하다가 난 경우에만 쓸 것.

Parameters:
  `aCause` - 원래 났던 예외
Throws:
  `java.sql.SQLException`

#### hasServerError

    public static boolean hasServerError(CmErrorResult aErrorResult)

서버에서 받은 에러가 있나 확인한다.

next error까지 모두 확인한다.

Parameters:
  `aErrorResult` - 서버에서 받은 에러/경고 정보
Returns:
  에러가 있는지 여부

#### processServerError

    public static java.sql.SQLWarning processServerError(java.sql.SQLWarning aWarning,
                                                         CmErrorResult aErrorResult)
                                                  throws java.sql.SQLException

서버에서 받은 에러/경고 정보를 처리한다. 에러가 있으면 SQLException으로 포장해서 던지며, 경고는 aWarning에 chain으로 연결한다.

만약, 서버에서 받은 에러가 여러개라면 이를 chain으로 연결한다.

Parameters:
  `aWarning` - 경고를 연결할 객체. null이면 새로 만든다.
  `aErrorResult` - 서버에서 받은 에러/경고 정보
Returns:
  aWarning이 null이면 새로 만든 객체, 아니면 aWarning
Throws:
  `java.sql.SQLException` - 서버에서 받은 에러가 1개라도 있는 경우

#### toClientSideErrorCode

    public static int toClientSideErrorCode(int aErrorCode)

#### toServerSideErrorCode

    public static int toServerSideErrorCode(int aErrorCode,
                                            int aSeq)

#### isException

    public static boolean isException(CmErrorResult aErrorResult)

This checks if there is a serious exception which must be handled as an error by user applications. If there is no error or only warnings exist, then this will ignore it.

Parameters:
  `aErrorResult` - Errors happened while processing user requests.
Returns:
  If there is a serious exception, then true will be returned.

#### processXaError

    public static void processXaError(CmErrorResult aErrorResult,
                                      CmXAResult aXAResult)
                               throws javax.transaction.xa.XAException

서버에서 받은 에러 정보와 XA 결과를 확인하고, 필요하면 예외를 던진다.

Parameters:
  `aErrorResult` - 서버에서 받은 에러/경고 정보
  `aXAResult` - 서버에서 받은 XA 결과
Throws:
  `javax.transaction.xa.XAException` - 서버에서 받은 에러가 있는 경우

#### checkXidAndThrowXAException

    public static void checkXidAndThrowXAException(javax.transaction.xa.Xid aXid)
                                            throws javax.transaction.xa.XAException

Xid가 올바른지 확인하고, 필요하면 예외를 던진다.

Parameters:
  `aXid` - 올바른지 확인할 Xid
Throws:
  `javax.transaction.xa.XAException` - Xid가 올바르지 않을 경우

#### throwXAException

    public static void throwXAException(int aJDBCErrorCode,
                                        int aXaResult)
                                 throws javax.transaction.xa.XAException

XAException 예외를 던진다.

Parameters:
  `aJDBCErrorCode` - 에러 코드
  `aXaResult` - XA Result
Throws:
  `javax.transaction.xa.XAException`

#### throwXaException

    public static void throwXaException(java.sql.SQLException aCause)
                                 throws javax.transaction.xa.XAException

SQLException을 XAException으로 감싸 던진다.

Parameters:
  `aCause` - 원래 났던 예외
Throws:
  `javax.transaction.xa.XAException`

#### createWarning

    public static java.sql.SQLWarning createWarning(java.sql.SQLWarning aParent,
                                                    int aJDBCErrorCode)

JDBCErrorCode에 해당하는 SQLWarning을 만든다.

Parameters:
  `aParent` - 경고를 연결할 객체. null이면 새로 만든다.
  `aJDBCErrorCode` - 경고를 만드는데 사용할 에러 코드
Returns:
  새로 만든 SQLWarning 객체

#### createWarning

    public static java.sql.SQLWarning createWarning(java.sql.SQLWarning aParent,
                                                    int aJDBCErrorCode,
                                                    java.lang.Throwable aCause)

JDBCErrorCode에 해당하는 SQLWarning을 만든다.

Parameters:
  `aParent` - 경고를 연결할 객체. null이면 새로 만든다.
  `aJDBCErrorCode` - 경고를 만드는데 사용할 에러 코드
  `aCause` - 원래 났던 예외
Returns:
  새로 만든 SQLWarning 객체

#### createWarning

    public static java.sql.SQLWarning createWarning(java.sql.SQLWarning aParent,
                                                    int aJDBCErrorCode,
                                                    java.lang.String aArg)

JDBCErrorCode에 해당하는 SQLWarning을 만든다.

Parameters:
  `aParent` - 경고를 연결할 객체. null이면 새로 만든다.
  `aJDBCErrorCode` - 경고를 만드는데 사용할 에러 코드
  `aArg` - 메시지의 첫번째 인자에 설정할 인자값
Returns:
  새로 만든 SQLWarning 객체

#### createWarning

    public static java.sql.SQLWarning createWarning(java.sql.SQLWarning aParent,
                                                    int aJDBCErrorCode,
                                                    java.lang.String aArg,
                                                    java.lang.Throwable aCause)

JDBCErrorCode에 해당하는 SQLWarning을 만든다.

Parameters:
  `aParent` - 경고를 연결할 객체. null이면 새로 만든다.
  `aJDBCErrorCode` - 경고를 만드는데 사용할 에러 코드
  `aArg` - 메시지의 첫번째 인자에 설정할 인자값
  `aCause` - 원래 났던 예외
Returns:
  새로 만든 SQLWarning 객체

#### createWarning

    public static java.sql.SQLWarning createWarning(java.sql.SQLWarning aParent,
                                                    int aJDBCErrorCode,
                                                    java.lang.String aArg1,
                                                    java.lang.String aArg2)

JDBCErrorCode에 해당하는 SQLWarning을 만든다.

Parameters:
  `aParent` - 경고를 연결할 객체. null이면 새로 만든다.
  `aJDBCErrorCode` - 경고를 만드는데 사용할 에러 코드
  `aArg1` - 메시지의 1번째 인자에 설정할 인자값
  `aArg2` - 메시지의 2번째 인자에 설정할 인자값
Returns:
  새로 만든 SQLWarning 객체

#### createWarning

    public static java.sql.SQLWarning createWarning(java.sql.SQLWarning aParent,
                                                    int aJDBCErrorCode,
                                                    java.lang.String aArg1,
                                                    java.lang.String aArg2,
                                                    java.lang.Throwable aCause)

JDBCErrorCode에 해당하는 SQLWarning을 만든다.

Parameters:
  `aParent` - 경고를 연결할 객체. null이면 새로 만든다.
  `aJDBCErrorCode` - 경고를 만드는데 사용할 에러 코드
  `aArg1` - 메시지의 1번째 인자에 설정할 인자값
  `aArg2` - 메시지의 2번째 인자에 설정할 인자값
  `aCause` - 원래 났던 예외
Returns:
  새로 만든 SQLWarning 객체

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode)

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode,
                                          java.lang.Throwable aCause)

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode,
                                          java.lang.String aArg1)

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode,
                                          java.lang.String aArg1,
                                          java.lang.Throwable aCause)

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode,
                                          java.lang.String aArg1,
                                          java.lang.String aArg2)

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode,
                                          java.lang.String aArg1,
                                          java.lang.String aArg2,
                                          java.lang.Throwable aCause)

#### throwInternalError

    public static void throwInternalError(int aJDBCErrorCode,
                                          java.lang.String aArg1,
                                          java.lang.String aArg2,
                                          java.lang.String aArg3)

#### throwIOException

    public static void throwIOException(int aJDBCErrorCode)
                                 throws java.io.IOException

Throws:
  `java.io.IOException`

#### throwIOException

    public static void throwIOException(java.lang.Throwable aCause)
                                 throws java.io.IOException

Throws:
  `java.io.IOException`

#### throwIllegalArgumentException

    public static void throwIllegalArgumentException(int aJDBCErrorCode)

#### throwIllegalArgumentException

    public static void throwIllegalArgumentException(int aJDBCErrorCode,
                                                     java.lang.String aArg1)

#### throwIllegalArgumentException

    public static void throwIllegalArgumentException(int aJDBCErrorCode,
                                                     java.lang.String aArg1,
                                                     java.lang.String aArg2)

#### throwIllegalArgumentException

    public static void throwIllegalArgumentException(int aJDBCErrorCode,
                                                     java.lang.String aArg1,
                                                     java.lang.String aArg2,
                                                     java.lang.String aArg3)

#### createSQLFeatureNotSupportedException

    public static java.sql.SQLException createSQLFeatureNotSupportedException()

#### createSQLFeatureNotSupportedException

    public static java.sql.SQLException createSQLFeatureNotSupportedException(java.lang.String aReason)