<?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:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-audit:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server-deprecated:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server-http:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-server-sasl:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-auth-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-base:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-client:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-credential:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-credential-source-impl:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-credential-store:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-digest:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-encryption:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-basic:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-bearer:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-cert:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-digest:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-external:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-form:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-spnego:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-sso:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-http-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-json-util:2.1.0.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:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-digest:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-http:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-gssapi:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-oauth2:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-mechanism-scram:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-password-impl:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-permission:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-provider-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm-jdbc:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm-ldap:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-realm-token:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-auth-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-anonymous:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-digest:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-entity:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-external:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-gs2:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-gssapi:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-localuser:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-oauth2:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-otp:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-plain:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-sasl-scram:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-security-manager:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-security-manager-action:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-ssl:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-ssh-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-cert:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-cert-acme:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-cert-util:2.1.0.Final"/>
        <artifact name="org.wildfly.security:wildfly-elytron-x500-principal:2.1.0.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="java.xml.crypto"/>
        <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>
