transactions/src/main/java/org/jboss/as/txn/integration/JBossContextXATerminator.java
@Override
    public void registerWork(Work work, Xid xid, long timeout) throws WorkCompletedException {
        try {
            // jca provides timeout in milliseconds, SubordinationManager expects seconds
            int timeout_seconds = (int) timeout/1000;
            // unlimited timeout for jca means -1 which fails in wfly client
            if(timeout_seconds <= 0) timeout_seconds = ContextTransactionManager.getGlobalDefaultTransactionTimeout();
            localTransactionContext.findOrImportTransaction(xid, timeout_seconds);
        } catch (XAException xae) {
            throw TransactionLogger.ROOT_LOGGER.cannotFindOrImportInflowTransaction(xid, work, xae);
        }

        jbossXATerminator.registerWork(work, xid, timeout);
    }
@Override
    public void registerWork(Work work, Xid xid, long timeout) throws WorkCompletedException {
        try {
            // jca provides timeout in milliseconds, SubordinationManager expects seconds
            int timeout_seconds = (int) timeout/1000;
            // unlimited timeout for jca means -1 which fails in wfly client
            if(timeout_seconds <= 0) timeout_seconds = ContextTransactionManager.getGlobalDefaultTransactionTimeout();
            localTransactionContext.findOrImportTransaction(xid, timeout_seconds);
        } catch (XAException xae) {
            throw TransactionLogger.ROOT_LOGGER.cannotFindOrImportInflowTransaction(xid, work, xae);
        }

        jbossXATerminator.registerWork(work, xid, timeout);
    }
<p>
Interception of register work call to get transaction being imported to wildfly transacton client.
<p>
For importing a transaction Wildfly transaction client eventually calls {@link SubordinationManager}
as Narayana {@link XATerminator}s do. This wrapping then let wildfly transacton client to register the transaction
for itself, wildfly transacton client then import transaction to Narayana too and finally this method
uses Narayana's {@link XATerminator} to register all {@link Work}s binding.<br>
Narayana's {@link XATerminator} tries to import transaction too but as transaction is already
imported it just gets instance of transaction already imported via call of wildfly transacton client.