public class XAResourceInvocationHandler extends AbstractChildInvocationHandler<javax.sql.XADataSource,javax.sql.XAConnection,javax.transaction.xa.XAResource>
AbstractInvocationHandler.SimpleInvoker
cluster, logger
Modifier | Constructor and Description |
---|---|
protected |
XAResourceInvocationHandler(javax.sql.XAConnection connection,
SQLProxy<javax.sql.XADataSource,javax.sql.XAConnection> proxy,
Invoker<javax.sql.XADataSource,javax.sql.XAConnection,javax.transaction.xa.XAResource> invoker,
java.util.Map<Database<javax.sql.XADataSource>,javax.transaction.xa.XAResource> objectMap) |
Modifier and Type | Method and Description |
---|---|
protected void |
close(javax.sql.XAConnection connection,
javax.transaction.xa.XAResource resource) |
protected InvocationStrategy<javax.sql.XADataSource,javax.transaction.xa.XAResource,?> |
getInvocationStrategy(javax.transaction.xa.XAResource resource,
java.lang.reflect.Method method,
java.lang.Object[] parameters)
Returns the appropriate
InvocationStrategy for the specified method. |
protected boolean |
isRecordable(java.lang.reflect.Method method) |
close, createObject, getParent, getParentProxy, getRoot
addChild, detectClusterPanic, entries, entry, getDatabaseCluster, getInvoker, getObject, handleFailure, handleFailures, handlePartialFailure, invoke, isSQLMethod, postInvoke, record, removeChild, removeChildren, replay, retain
protected XAResourceInvocationHandler(javax.sql.XAConnection connection, SQLProxy<javax.sql.XADataSource,javax.sql.XAConnection> proxy, Invoker<javax.sql.XADataSource,javax.sql.XAConnection,javax.transaction.xa.XAResource> invoker, java.util.Map<Database<javax.sql.XADataSource>,javax.transaction.xa.XAResource> objectMap) throws java.lang.Exception
connection
- proxy
- invoker
- objectMap
- java.lang.Exception
protected InvocationStrategy<javax.sql.XADataSource,javax.transaction.xa.XAResource,?> getInvocationStrategy(javax.transaction.xa.XAResource resource, java.lang.reflect.Method method, java.lang.Object[] parameters) throws java.lang.Exception
AbstractInvocationHandler
InvocationStrategy
for the specified method.
This implementation detects Wrapper
methods; and Object.equals(java.lang.Object)
, Object.hashCode()
, and Object.toString()
.
Default invocation strategy is DatabaseWriteInvocationStrategy
.getInvocationStrategy
in class AbstractInvocationHandler<javax.sql.XADataSource,javax.transaction.xa.XAResource>
resource
- the proxied objectmethod
- the method to invokeparameters
- the method invocation parametersjava.lang.Exception
AbstractInvocationHandler.getInvocationStrategy(java.lang.Object, java.lang.reflect.Method, java.lang.Object[])
protected void close(javax.sql.XAConnection connection, javax.transaction.xa.XAResource resource)
close
in class AbstractChildInvocationHandler<javax.sql.XADataSource,javax.sql.XAConnection,javax.transaction.xa.XAResource>
AbstractChildInvocationHandler.close(java.lang.Object, java.lang.Object)
protected boolean isRecordable(java.lang.reflect.Method method)
isRecordable
in class AbstractInvocationHandler<javax.sql.XADataSource,javax.transaction.xa.XAResource>
AbstractInvocationHandler.isRecordable(java.lang.reflect.Method)