public interface Participant
extends java.io.Serializable
equals
and hashCode methods, in order for two-phase commit to work properly!| Modifier and Type | Field and Description |
|---|---|
static int |
READ_ONLY
Indicates that no commit/rollback is needed after prepare.
|
| Modifier and Type | Method and Description |
|---|---|
void |
commit(boolean onePhase)
Commits the participant's work.
|
void |
forget()
Indicates that a heuristic participant can forget about its work.
|
java.lang.String |
getResourceName() |
java.lang.String |
getURI() |
boolean |
isRecoverable()
Is this instance recoverable or not?
|
int |
prepare()
Prepares the participant.
|
void |
rollback()
Rollback of the participant's work.
|
void |
setCascadeList(java.util.Map<java.lang.String,java.lang.Integer> allParticipants)
For cascading 2PC, this method sets the information needed
to cascade.
|
void |
setGlobalSiblingCount(int count)
Set by the root coordinator: the total no of siblings detected.
|
static final int READ_ONLY
java.lang.String getURI()
void setCascadeList(java.util.Map<java.lang.String,java.lang.Integer> allParticipants)
throws SysException
allParticipants - The information needed by
the transaction monitor.SysExceptionvoid setGlobalSiblingCount(int count)
count - The global count.int prepare()
throws RollbackException,
HeurHazardException,
HeurMixedException,
SysException
RollbackException - For a NO vote.
This indicates that the participant has already rolled back
(or marked for rollback) the work on behalf of this participant.HeurHazardException - On possible conflicts.
This happens for remote participants instances, in case of
communication failures.HeurMixedException - If some subordinate
participants voted YES, timed out and committed heuristically
whereas afterwards some NO votes where received.SysExceptionvoid commit(boolean onePhase)
throws HeurRollbackException,
HeurHazardException,
HeurMixedException,
RollbackException,
SysException
onePhase - If true, one-phase commit is being started.
If the participant has received a prepare call earlier,
then it should throw a SysException here.HeuristicRollbackException - If the participant has rolled back.HeuristicMixedException - If part of it was rolled back.HeurHazardException - On possible conflicts.RollbackException - In case of one-phase commit,
and the transaction has been rolled back at the time
commit is called.SysExceptionHeurRollbackExceptionHeurMixedExceptionvoid rollback()
throws HeurCommitException,
HeurMixedException,
HeurHazardException,
SysException
HeurCommitException - If the participant committed.HeurHazardException - If the participant's final state
is unsure.HeurMixedException - If part of the work was rolled back.SysExceptionvoid forget()
boolean isRecoverable()
java.lang.String getResourceName()
Copyright © 2018. All Rights Reserved.