code: public boolean enlistResource(XAResource xaRes, int recoveryIndex) throws RollbackException, IllegalStateException, SystemException {
          return enlistResource(xaRes, recoveryIndex, XAResource.TMNOFLAGS);
      }
docs: Enlist the resouce with the transaction associated with the target
  TransactionImpl object.
  
  This is the implementation version of the method and does take in the
  XA resource class name and info objects required during recovery. If
  these fields are provided (ie are not passed in as nulls) the resource
  will be logged and recovered as required. If these fields are null,
  the resource must a one phase capable resource or an exception will
  be thrown.
  
  @return <i>true</i> if the resource was enlisted successfully; otherwise <i>false</i>.
  
  @param xaRes the XAResource object associated with XAConnection
  
  @exception RollbackException
  @exception IllegalStateException
  @exception SystemException