Package com.altibase.document.exception
Class ExceptionTranslator
java.lang.Object
com.altibase.document.exception.ExceptionTranslator
하위 계층에서 발생한 예외를 Altibase Document API의 의미있는
상위 계층 예외로 변환하는 유틸리티 클래스이다.
이 클래스는 SQLException의 SQLSTATE 코드를 분석하여,
단순한 데이터베이스 오류를 AltibaseConnectionException,
AltibaseQueryException 등과 같이 구체적인 예외 상황으로 변환하는
핵심 로직을 담당한다.
이 클래스는 상태를 가지지 않는(stateless) 유틸리티 클래스이며, 모든 메서드는 static이다.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic AltibaseRuntimeExceptiontranslateException(Exception aEx, String aOperation) 일반적인Exception을 적절한AltibaseRuntimeException하위 클래스로 변환한다.static AltibaseRuntimeExceptiontranslateSqlException(SQLException aSqlEx, String aOperation) 주어진SQLException을 적절한AltibaseRuntimeException하위 클래스로 변환한다.
-
Constructor Details
-
ExceptionTranslator
public ExceptionTranslator()
-
-
Method Details
-
translateSqlException
public static AltibaseRuntimeException translateSqlException(SQLException aSqlEx, String aOperation) 주어진SQLException을 적절한AltibaseRuntimeException하위 클래스로 변환한다.변환은 예외에 포함된 SQLSTATE 코드를 기반으로 수행된다. 적절한 하위 예외를 찾지 못할 경우, 가장 일반적인
AltibaseCollectionException으로 변환된다.- Parameters:
aSqlEx- 변환할 원본 SQL 예외aOperation- 예외가 발생한 작업의 종류 (예: "find", "insert"). 예외 메시지에 포함되어 디버깅을 돕는다.- Returns:
- 변환된
AltibaseRuntimeException인스턴스
-
translateException
일반적인Exception을 적절한AltibaseRuntimeException하위 클래스로 변환한다.이 메서드는
SQLException외에도UnsupportedEncodingException등 다른 유형의 예외를 처리하는 범용 변환기 역할을 한다. 만약 입력된 예외가 이미AltibaseRuntimeException의 인스턴스라면, 아무 변환 없이 그대로 반환한다.- Parameters:
aEx- 변환할 원본 예외aOperation- 예외가 발생한 작업의 종류. 예외 메시지에 포함된다.- Returns:
- 변환된
AltibaseRuntimeException인스턴스
-