<!--
  Copyright (C) 2009-2013, JoshuaTree. All Rights Reserved.
  Licensed to Joshua Tree Software, LLC under New BSD license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  JTS licenses this file to You under the New BSD License
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

       http://jts.us/License

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<ivy-module version="2.0">
    <info organisation="org.apache" module="openldap-fortress-core"/>

    <dependencies>
        <!-- Fortress core is dependent on these libs: -->
        <dependency org="commons-lang" name="commons-lang" rev="2.4" conf="default->master"/>
        <dependency org="commons-configuration" name="commons-configuration" rev="1.6" conf="default->master"/>
        <dependency org="commons-lang" name="commons-lang" rev="2.4" conf="default->master"/>
        <dependency org="commons-collections" name="commons-collections" rev="3.2.1" conf="default->master"/>
        <dependency org="commons-pool" name="commons-pool" rev="1.5.2" conf="default->master"/>
        <dependency org="commons-logging" name="commons-logging" rev="1.1.1" conf="default->master"/>
        <dependency org="commons-codec" name="commons-codec" rev="1.2" conf="default->master"/>
        <dependency org="commons-io" name="commons-io" rev="2.4" conf="default->master"/>
        <dependency org="com.unboundid" name="unboundid-ldapsdk" rev="2.1.0" conf="default->master"/>
        <dependency org="junit" name="junit" rev="4.9" conf="default->master"/>
        <dependency org="log4j" name="log4j" rev="1.2.17" conf="default->master"/>
        <dependency org="org.jasypt" name="jasypt" rev="1.8" conf="default->master"/>
        <dependency org="org.jgrapht" name="jgrapht-jdk1.5" rev="0.7.3" conf="default->master"/>
        <dependency org="com.sun.xml.bind" name="jaxb-xjc" rev="2.2.4-1" conf="default->master"/>
        <dependency org="com.sun.xml.bind" name="jaxb-impl" rev="2.2.4-1" conf="default->master"/>
        <dependency org="javax.xml.bind" name="jaxb-api" rev="2.2.6" conf="default->master"/>
        <dependency org="commons-httpclient" name="commons-httpclient" rev="3.1" conf="default->master"/>
        <dependency org="org.codehaus.jackson" name="jackson-jaxrs" rev="1.9.0" conf="default->master"/>
        <dependency org="javax.ws.rs" name="jsr311-api" rev="1.1.1" conf="default->master" />
        <dependency org="org.apache.cxf" name="cxf-common-utilities" rev="2.5.0" conf="default->master"/>
        <dependency org="net.sf.ehcache" name="ehcache-core" rev="2.6.5" conf="default->master"/>
        <dependency org="org.slf4j" name="slf4j-api" rev="1.7.5" conf="default->master"/>
        <dependency org="org.slf4j" name="slf4j-log4j12" rev="1.7.5" conf="default->master"/>
        <dependency org="org.slf4j" name="slf4j-jcl" rev="1.7.5" conf="default->master"/>
        <dependency org="org.apache.directory.server" name="apacheds-all" rev="2.0.0-M15" conf="default->master"/>
        <dependency org="net.sf.opencsv" name="opencsv" rev="2.3" conf="default->master" />

        <!-- Fortress core source is NOT dependent on Sentry, EnMasse or Commander artifacts rather they're required for its QUICKSTART demo apps: -->
<!--
        <dependency org="us.joshuatreesoftware" name="sentry" rev="1.0-RC31"  conf="default->master">
            <artifact name="sentry" type="jar"/>
        </dependency>
        <dependency org="us.joshuatreesoftware" name="enmasse" rev="1.0-RC31"  conf="default->master">
            <artifact name="enmasse" type="jar"/>
        </dependency>
        <dependency org="us.joshuatreesoftware" name="commander" rev="1.0-RC31"  conf="default->master">
            <artifact name="commander" type="jar"/>
        </dependency>
-->

    </dependencies>
</ivy-module>
