/** * Prepare this resource. */ public Vote prepare() throws HeuristicMixed, HeuristicHazard, SystemException { try { commit_one_phase() ; return Vote.VoteCommit ; } catch (final TRANSACTION_ROLLEDBACK tr) { return Vote.VoteRollback ; } }
/** * Attempt to create an XAResourceRecord wrapping the given XAResource. Return null if this fails, or * is diallowed by the current configuration of multiple last resource behaviour. * * @param xaRes * @param params * @param xid * @return */ private XAResourceRecord createRecord(XAResource xaRes, Object[] params, Xid xid) { final XAResourceRecord record; if ((xaRes instanceof LastResourceCommitOptimisation) || ((LAST_RESOURCE_OPTIMISATION_INTERFACE != null) && LAST_RESOURCE_OPTIMISATION_INTERFACE .isInstance(xaRes))) { record = new LastResourceRecord(this, xaRes, xid, params); } else { record = new XAResourceRecord(this, xaRes, xid, params); } return record; }
public boolean shouldAdd(OTSAbstractRecord record) throws SystemException { if( record.type_id() == type_id() ) { if(ALLOW_MULTIPLE_LAST_RESOURCES) { if (!_disableMLRWarning || (_disableMLRWarning && !_issuedWarning)) { jtaxLogger.i18NLogger.warn_jtax_resources_jts_orbspecific_lastResource_multipleWarning(record.toString()); _issuedWarning = true; } return true; } else { jtaxLogger.i18NLogger.warn_jtax_resources_jts_orbspecific_lastResource_disallow(record.toString()); return false; } } else { return true; } }
/** * Attempt to create an XAResourceRecord wrapping the given XAResource. Return null if this fails, or * is diallowed by the current configuration of multiple last resource behaviour. * * @param xaRes * @param params * @param xid * @return */ private XAResourceRecord createRecord(XAResource xaRes, Object[] params, Xid xid) { final XAResourceRecord record; if ((xaRes instanceof LastResourceCommitOptimisation) || ((LAST_RESOURCE_OPTIMISATION_INTERFACE != null) && LAST_RESOURCE_OPTIMISATION_INTERFACE .isInstance(xaRes))) { record = new LastResourceRecord(this, xaRes, xid, params); } else { record = new XAResourceRecord(this, xaRes, xid, params); } return record; }
if( record.type_id() == type_id() )
/** * Prepare this resource. */ public Vote prepare() throws HeuristicMixed, HeuristicHazard, SystemException { try { commit_one_phase() ; return Vote.VoteCommit ; } catch (final TRANSACTION_ROLLEDBACK tr) { return Vote.VoteRollback ; } }