|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
public interface XAResource
XAResource 인터페이스는, X/Open CAE 스펙 (분산 트랜잭션(transaction) 처리: XA 스펙)에 근거하는 업계표준의 XA 인터페이스의 Java 매핑입니다.
XA 인터페이스는, 분산 트랜잭션(transaction) 처리 (DTP) 환경에서의 자원 매니저와 트랜잭션(transaction) 매니저의 사이의 규약을 정의합니다. JDBC 드라이버 또는 JMS 프로바이더는 이 인터페이스를 구현해, 글로벌 트랜잭션(transaction)와 데이타베이스 또는 메세지 서비스 접속동안이 관련짓고를 지원합니다.
XAResource 인터페이스는, 트랜잭션(transaction)가 외부의 트랜잭션(transaction) 매니저에 의해 제어되는 환경에서, 응용 프로그램에 의해 사용되는 모든 트랜잭션(transaction) 자원에 의해 지원할 수 있습니다. 이러한 자원의 예로서는, 데이타베이스 관리 시스템이 있습니다. 어플리케이션은 복수의 데이타베이스 접속을 개입시켜 데이터에 액세스 할 수 있습니다. 각 데이타베이스 접속은, 트랜잭션(transaction) 매니저에 의해 트랜잭션(transaction) 자원으로서 등록됩니다. 트랜잭션(transaction) 매니저는, 글로벌 트랜잭션(transaction)에 관련하는 각 접속의 XAResource 를 가져옵니다. 트랜잭션(transaction) 매니저는,start
메소드를 사용해 글로벌 트랜잭션(transaction)를 자원에 관련지어end
메소드를 사용해 트랜잭션(transaction)와 자원이 관련짓고를 해제합니다. 자원 매니저는, 글로벌 트랜잭션(transaction)를 start 메소드의 호출과 end 메소드의 호출동안에 그 데이터에 대해서 실행되는 모든 처리에 관련짓습니다.
트랜잭션(transaction)의 위탁시에, 자원 매니저는, 2 단계의 위탁 프로토콜에 따라, 트랜잭션(transaction)를 준비, 위탁, 또는 롤백(rollback) 하도록(듯이) 트랜잭션(transaction) 매니저로부터 통지됩니다.
필드의 개요 | |
---|---|
static int |
TMENDRSCAN
회복 주사를 종료합니다. |
static int |
TMFAIL
호출측이 관련짓고를 해제해, 트랜잭션(transaction) 브랜치(branch)에 롤백(rollback)만의 마크를 붙입니다. |
static int |
TMJOIN
호출측이 기존의 트랜잭션(transaction) 브랜치(branch)에 참가합니다. |
static int |
TMNOFLAGS
TMNOFLAGS 를 사용해, 플래그치가 선택되어 있지 않은 것을 나타냅니다. |
static int |
TMONEPHASE
호출측은 1 단계의 최적화를 사용하고 있습니다. |
static int |
TMRESUME
호출측은 중단된 트랜잭션(transaction) 브랜치(branch)와의 관련짓고를 재개합니다. |
static int |
TMSTARTRSCAN
회복 주사를 개시합니다. |
static int |
TMSUCCESS
호출측과 트랜잭션(transaction) 브랜치(branch)와의 관련짓고를 해제합니다. |
static int |
TMSUSPEND
호출측은 트랜잭션(transaction) 브랜치(branch)와의 관련짓고를 중단합니다 (종료는 아니다). |
static int |
XA_OK
트랜잭션(transaction) 처리가 정상적으로 준비되었습니다. |
static int |
XA_RDONLY
트랜잭션(transaction) 브랜치(branch)에서는 읽기 밖에 행해지지 않고, 위탁되었습니다. |
메소드의 개요 | |
---|---|
void |
commit (Xid xid,
boolean onePhase)
xid 로 지정된 글로벌 트랜잭션(transaction)를 위탁합니다. |
void |
end (Xid xid,
int flags)
트랜잭션(transaction) 브랜치(branch)를 위해서(때문에) 실행된 처리를 종료합니다. |
void |
forget (Xid xid)
휴리스틱에 결착된 트랜잭션(transaction) 브랜치(branch)를 무시하도록(듯이) 자원 매니저에게 통지합니다. |
int |
getTransactionTimeout ()
이 XAResource 인스턴스에 대해서 설정된 현재의 트랜잭션(transaction) 타임 아웃치를 가져옵니다. |
boolean |
isSameRM (XAResource xares)
이 메소드를 호출해, 타겟 객체로 나타내지는 자원 매니저 인스턴스가 파라미터 xares 로 나타내지는 자원 매니저 인스턴스와 같은가 어떤가를 판정할 수 있습니다. |
int |
prepare (Xid xid)
xid 로 지정된 트랜잭션(transaction)의 트랜잭션(transaction) 위탁의 준비를 하도록(듯이) 자원 매니저에게 요구합니다. |
Xid [] |
recover (int flag)
자원 매니저로부터 준비된 트랜잭션(transaction) 브랜치(branch)의 리스트를 가져옵니다. |
void |
rollback (Xid xid)
트랜잭션(transaction) 브랜치(branch)를 위해서(때문에) 실행된 처리를 롤백(rollback) 하도록(듯이) 자원 매니저에게 통지합니다. |
boolean |
setTransactionTimeout (int seconds)
이 XAResource 인스턴스의 현재의 트랜잭션(transaction) 타임 아웃치를 설정합니다. |
void |
start (Xid xid,
int flags)
xid 로 지정된 트랜잭션(transaction) 브랜치(branch)를 위한 처리를 개시합니다. |
필드의 상세 |
---|
static final int TMENDRSCAN
static final int TMFAIL
static final int TMJOIN
static final int TMNOFLAGS
static final int TMONEPHASE
static final int TMRESUME
static final int TMSTARTRSCAN
static final int TMSUCCESS
static final int TMSUSPEND
static final int XA_RDONLY
static final int XA_OK
메소드의 상세 |
---|
void commit(Xid xid, boolean onePhase) throws XAException
xid
- 글로벌 트랜잭션(transaction) 식별자onePhase
- true 의 경우, 자원 매니저는 1 단계의 위탁 프로토콜을 사용해,
xid 를 위해서(때문에) 행해진 처리를 위탁할 필요가 있다
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 XAException 치는,
XA_HEURHAZ, XA_HEURCOM, XA_HEURRB, XA_HEURMIX, XAER_RMERR,
XAER_RMFAIL, XAER_NOTA, XAER_INVAL, 또는 XAER_PROTO
자원 매니저가 트랜잭션(transaction)를 위탁하고 있지 않고, 파라미터 onePhase 가 true 로 설정되어 있는 경우, 자원 매니저는 XA_RB* 예외의 1 개를 throw 하는 일이 있다. 이 경우, 돌아올 때에, 자원 매니저는 트랜잭션(transaction) 브랜치(branch)의 처리를 롤백(rollback) 해, 보관 유지하고 있던 모든 자원을 해제했다
void end(Xid xid, int flags) throws XAException
TMSUSPEND 가 플래그로 지정되면(자), 트랜잭션(transaction) 브랜치(branch)는 불완전한 상태로 일시적으로 중단됩니다. 트랜잭션(transaction) 문맥은 중단 상태이며, TMRESUME 를 지정한 start
메소드를 개입시켜 재개할 필요가 있습니다.
TMFAIL 가 지정되고 있는 경우, 처리 부분은 실패했습니다. 자원 매니저는, 트랜잭션(transaction)에 롤백(rollback) 전용의 마크를 붙이는 일이 있습니다.
TMSUCCESS 가 지정되고 있는 경우, 처리 부분은 정상적으로 완료했습니다.
xid
- 이전에 start
메소드로 사용된 식별자와 같다
글로벌 트랜잭션(transaction) 식별자flags
- TMSUCCESS, TMFAIL, 또는 TMSUSPEND 의 언젠가
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 XAException 치는,
XAER_RMERR, XAER_RMFAILED, XAER_NOTA, XAER_INVAL,
XAER_PROTO, 또는 XA_RB*void forget(Xid xid) throws XAException
xid
- 글로벌 트랜잭션(transaction) 식별자
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 예외치는,
XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL, 또는
XAER_PROTOint getTransactionTimeout() throws XAException
XAResource.setTransactionTimeout
가 사용되어 있지 않았던 경우, 반환값은 자원 매니저에 대해서 설정된 디폴트의 타임 아웃입니다. 그렇지 않은 경우는, 이전의 setTransactionTimeout
호출로 사용된 값이 돌려주어집니다.
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 예외치는,
XAER_RMERR 또는 XAER_RMFAILboolean isSameRM(XAResource xares) throws XAException
xares
- 타겟 객체의 자원 매니저 인스턴스라고 비교된다
자원 매니저 인스턴스를 가진다
XAResource 객체
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 예외치는,
XAER_RMERR 또는 XAER_RMFAILint prepare(Xid xid) throws XAException
xid
- 글로벌 트랜잭션(transaction) 식별자
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 예외치는,
XA_RB*, XAER_RMERR, XAER_RMFAIL, XAER_NOTA, XAER_INVAL,
또는 XAER_PROTOXid [] recover(int flag) throws XAException
flag
- TMSTARTRSCAN, TMENDRSCAN, TMNOFLAGS 의 언젠가. TMNOFLAGS 는,
파라미터에 다른 플래그가 설정되어 있지 않은 경우에 사용할 필요가 있다
XAException
- 에러가 발생한 것을 나타냅니다. 다음의 값을 지정할 수 있습니다.
XAER_RMERR, XAER_RMFAIL, XAER_INVAL, 또는 XAER_PROTOvoid rollback(Xid xid) throws XAException
xid
- 글로벌 트랜잭션(transaction) 식별자
XAException
- 에러가 발생한 것을 나타냅니다. boolean setTransactionTimeout(int seconds) throws XAException
이 XAResource
인스턴스의 현재의 트랜잭션(transaction) 타임 아웃치를 설정합니다. 이 타임 아웃치는, 한 번 설정되면(자), 다른 값을 사용해 setTransactionTimeout
이 재차 불려 갈 때까지 유효합니다. 타임 아웃치를 자원 매니저로 사용되는 디폴트 값에 리셋 하려면 , 값을 제로로 설정합니다.
타임 아웃 조작이 정상적으로 실행되면(자), 이 메소드는 true 를 돌려주어, 그렇지 않은 경우는 false 를 돌려줍니다. 자원 매니저가 트랜잭션(transaction) 타임 아웃치의 명시적인 설정을 지원하고 있지 않는 경우는,false 를 돌려줍니다.
seconds
- 초단위의 트랜잭션(transaction) 타임 아웃치
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 예외치는,
XAER_RMERR, XAER_RMFAIL, 또는 XAER_INVALvoid start(Xid xid, int flags) throws XAException
xid
로 지정된 트랜잭션(transaction) 브랜치(branch)를 위한 처리를 개시합니다.
TMJOIN 가 지정되는 경우는, 자원 매니저로 이전에 사용된 트랜잭션(transaction)의 참가를 개시합니다. TMRESUME 가 지정되는 경우는, 파라미터 xid
로 지정된 중단 트랜잭션(transaction)를 재개합니다.
TMJOIN 도 TMRESUME 도 지정되지 않고,xid
로 지정된 트랜잭션(transaction)가 이전에 자원 매니저로 사용되었던 적이 있는 경우, 자원 매니저는 에러 코드 XAER_DUPID 로 XAException 예외를 throw 합니다.
xid
- 자원에 관련지을 수 있다
글로벌 트랜잭션(transaction) 식별자flags
- TMNOFLAGS, TMJOIN, 또는 TMRESUME 의 언젠가
XAException
- 에러가 발생한 것을 나타냅니다. 취할 수 있는 예외치는,
XA_RB*, XAER_RMERR, XAER_RMFAIL, XAER_DUPID, XAER_OUTSIDE,
XAER_NOTA, XAER_INVAL, 또는 XAER_PROTO
|
JavaTM Platform Standard Ed. 6 |
|||||||||
앞의 클래스 다음의 클래스 | 프레임 있어 프레임 없음 | |||||||||
개요: 상자 | 필드 | 생성자 | 메소드 | 상세 : 필드 | 생성자 | 메소드 |
Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.