<?xml version="1.0" encoding="UTF-8"?>

<!--
  ~ Copyright The WildFly Authors
  ~ SPDX-License-Identifier: Apache-2.0
  -->

<module xmlns="urn:jboss:module:1.9" name="org.jboss.jts">

    <properties>
        <property name="jboss.api" value="private"/>
    </properties>

    <resources>
        <artifact name="${org.jboss.narayana.jts:narayana-jts-idlj}"/>
    </resources>

    <dependencies>
        <module name="java.desktop"/>
        <module name="java.logging"/>
        <module name="java.management"/>
        <module name="java.naming"/>
        <module name="java.sql"/>
        <module name="java.transaction.xa"/>
        <module name="java.xml"/>
        <module name="jakarta.transaction.api"/>
		<!--
			The jdk.console module is a compile dependency of narayana-jts-idlj
			but is not a runtime one within WildFly. It's listed here with
			this comment to prevent it being re-added as a dependency
			without discussion.
			
			Narayana has a 'TxPerfPlugin' JConsolePlugin implementation but 
			WildFly does not support running JConsole as a modular application.
			
			WildFly should not have dependencies on JDK modules that are not 
			associated with the traditional 'JRE' concept.
			 
        <module name="jdk.jconsole"/>
        -->
        <module name="org.omg.api" />
        <module name="org.jboss.logging"/>
        <module name="org.jboss.jts.integration"/>
        <module name="org.jboss.jboss-transaction-spi"/>
        <module name="jakarta.resource.api"/>
        <module name="org.apache.activemq.artemis.journal" optional="true"/>
        <module name="javax.orb.api"/>
        <module name="jakarta.enterprise.api"/>
        <module name="org.jboss.weld.core"/>
        <module name="jakarta.annotation.api" export="true" />
        <module name="jakarta.interceptor.api" export="true" />
        <module name="org.wildfly.transaction.client"/>
        <module name="org.jboss.as.transactions">
            <imports>
                <include path="org.jboss.as.txn.integration"/>
            </imports>
        </module>
        <!-- For the ContextPropagationAsyncHandler used with the context propagation feature pack -->
        <module name="org.wildfly.reactive.dep.jts" services="import" optional="true"/>
    </dependencies>
</module>
