}
@SuppressWarnings("deprecation")
private Object handleAll(InvocationContext ctx, VisitableCommand command, GlobalTransaction gtx, boolean scrubContextOnCompletion) throws Throwable
{
Option optionOverride = ctx.getOptionOverrides();
boolean suppressExceptions = false;
Transaction suspendedTransaction = null;
boolean resumeSuspended = false;
if (trace) log.trace("Invoked with command " + command + " and InvocationContext [" + ctx + "]");
try
{
if (txManager != null)
{
Transaction tx = getTransaction();
GlobalTransaction realGtx = getGlobalTransaction(tx, gtx);
if (tx == null && realGtx != null && realGtx.isRemote()) tx = txTable.getLocalTransaction(gtx);
setTransactionalContext(tx, realGtx, null, ctx);
}
else
{
setTransactionalContext(null, null, null, ctx);
}
if (optionOverride != null && optionOverride.isFailSilently())
{
log.debug("FAIL_SILENTLY Option is present - suspending any ongoing transaction.");
suppressExceptions = true;
if (ctx.getTransaction() != null)
{