<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ JBoss, Home of Professional Open Source.
  ~ Copyright 2015, Red Hat, Inc., and individual contributors
  ~ as indicated by the @author tags. See the copyright.txt file in the
  ~ distribution for a full listing of individual contributors.
  ~
  ~ This is free software; you can redistribute it and/or modify it
  ~ under the terms of the GNU Lesser General Public License as
  ~ published by the Free Software Foundation; either version 2.1 of
  ~ the License, or (at your option) any later version.
  ~
  ~ This software is distributed in the hope that it will be useful,
  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  ~ Lesser General Public License for more details.
  ~
  ~ You should have received a copy of the GNU Lesser General Public
  ~ License along with this software; if not, write to the Free
  ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
  -->
<module name="org.wildfly.security.elytron-base" xmlns="urn:jboss:module:1.9">
    <properties>
        <!--
             Although this module is private see the module 'org.wildfly.security.elytron' for the re-exported public API.
         -->
        <property name="jboss.api" value="private"/>
    </properties>

    <exports>
        <exclude path="org/wildfly/security/_private"/>
        <exclude path="org/wildfly/security/manager/_private"/>
        <exclude path="org/wildfly/security/sasl/digest/_private"/>
        <exclude path="org/wildfly/security/util/_private"/>
    </exports>

    <resources>
        <artifact name="org.wildfly.security:wildfly-elytron-asn1:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-audit:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server-deprecated:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server-http:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server-sasl:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-util:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-base:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-client:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-credential:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-credential-source-impl:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-credential-store:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-digest:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-encryption:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-basic:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-bearer:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-cert:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-digest:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-deprecated:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-external:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-form:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-spnego:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-sso:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-util:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-json-util:1.16.1.Final"/>
        <!-- <artifact name="${org.wildfly.security:wildfly-elytron-jwt}"/> To be added as independent module in WildFly -->
        <artifact name="org.wildfly.security:wildfly-elytron-keystore:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-digest:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-http:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-gssapi:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-oauth2:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-scram:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-password-impl:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-permission:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-provider-util:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm-jdbc:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm-ldap:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm-token:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-auth-util:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-anonymous:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-digest:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-entity:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-external:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-gs2:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-gssapi:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-localuser:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-oauth2:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-otp:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-plain:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-scram:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-security-manager:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-security-manager-action:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-ssl:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-util:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-cert:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-cert-acme:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-cert-util:1.16.1.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-principal:1.16.1.Final"/>
    </resources>

    <dependencies>
        <module name="java.logging"/>
        <module name="java.naming"/>
        <module name="java.security.jgss"/>
        <module name="java.security.sasl"/>
        <module name="java.sql"/>
        <module name="java.xml"/>
        <module name="javax.json.api"/>
        <module name="jdk.security.auth"/>
        <module name="jdk.unsupported"/>
        <module name="org.jboss.logging"/>
        <module name="org.jboss.logmanager"/>
        <module name="org.jboss.modules"/>
        <module name="org.jboss.threads"/>
        <module name="org.wildfly.common"/>
        <module name="javax.xml.ws.api" optional="true"/>
        <module name="org.jboss.ws.spi" optional="true"/>
        <module name="org.apache.sshd"/>
        <module name="org.jboss.resteasy.resteasy-jaxrs" optional="true"/>
        <!--
        This is only exported because some of the ElytronXmlParser methods throw an exception in this module. If other
        modules use the parser, they need to have visibility to this module.
        -->
        <module name="org.wildfly.client.config" export="true"/>
    </dependencies>
</module>
