code: public boolean enlist(UOWCoordinator coord, XAResource xaRes, int recoveryIndex, int branchCoupling)
      throws RollbackException, IllegalStateException, SystemException
      {
          final boolean traceOn = TraceComponent.isAnyTracingEnabled();
  
          if (traceOn && tc.isEntryEnabled()) Tr.entry(tc, "enlist", new Object[] {xaRes, recoveryIndex, branchCoupling});
  
          boolean result = false;
  
          if (coord instanceof TransactionImpl)
          {
              try
              {
                  result = ((TransactionImpl)coord).enlistResource(xaRes, recoveryIndex, branchCoupling);
              }
              finally
              {
                  if (traceOn && tc.isEntryEnabled()) Tr.exit(tc, "enlist", result);
              }
          }
          else
          {
              final SystemException se = new SystemException("Invalid UOWCoordinator");
              FFDCFilter.processException(se, "com.ibm.tx.jta.impl.EmbeddableTranManagerSet.enlist", "154", this);
              if (traceOn && tc.isEntryEnabled()) Tr.exit(tc, "enlist", se);
              throw se;
          }
          
          return result;
      }
docs: /* Called by XATransactionWrapper and CScopeRootImpl