@Override
 public Object visitCommitCommand(TxInvocationContext ctx, CommitCommand command)
     throws Throwable {
   if (Configurations.isOnePhaseTotalOrderCommit(cacheConfiguration) || !ctx.hasModifications()) {
     return invokeNextInterceptor(ctx, command);
   }
   totalOrderTxCommit(ctx);
   return super.visitCommitCommand(ctx, command);
 }
 @Override
 public Object visitRollbackCommand(TxInvocationContext ctx, RollbackCommand command)
     throws Throwable {
   if (Configurations.isOnePhaseTotalOrderCommit(cacheConfiguration)
       || !ctx.hasModifications()
       || !shouldTotalOrderRollbackBeInvokedRemotely(ctx)) {
     return invokeNextInterceptor(ctx, command);
   }
   totalOrderTxRollback(ctx);
   return super.visitRollbackCommand(ctx, command);
 }