<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License.  You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

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.
-->

<project name="OFBiz - Base" default="jar" basedir=".">
    <import file="../../common.xml"/>

    <!-- ================================================================== -->
    <!-- Initialization of all property settings                            -->
    <!-- ================================================================== -->

    <property name="desc" value="Base API"/>
    <property name="name" value="ofbiz-base"/>
    <property name="ofbiz.home.dir" value="../.."/>

    <path id="local.class.path">
        <fileset dir="${lib.dir}" includes="*.jar"/>
        <fileset dir="${lib.dir}/commons" includes="*.jar"/>
        <fileset dir="${lib.dir}/j2eespecs" includes="*.jar"/>
        <fileset dir="${lib.dir}/scripting" includes="*.jar"/>
        <fileset dir="../start/build/lib" includes="*.jar"/>
    </path>

    <filelist id="test.classes" dir="${src.dir}">
        <file name="org/ofbiz/base/lang/test/ComparableRangeTests.java"/>
        <file name="org/ofbiz/base/util/test/IndentingWriterTests.java"/>
        <file name="org/ofbiz/base/util/test/ObjectTypeTests.java"/>
        <file name="org/ofbiz/base/util/test/UtilObjectTests.java"/>
        <file name="org/ofbiz/base/util/string/test/FlexibleStringExpanderTests.java"/>
        <file name="org/ofbiz/base/util/collections/test/FlexibleMapAccessorTests.java"/>
        <file name="org/ofbiz/base/util/test/TimeDurationTests.java"/>
        <file name="org/ofbiz/base/util/test/StringUtilTests.java"/>
        <file name="org/ofbiz/base/util/cache/test/UtilCacheTests.java"/>
        <file name="org/ofbiz/base/json/test/JSONTests.java"/>
        <file name="org/ofbiz/base/conversion/test/TestBooleanConverters.java"/>
        <file name="org/ofbiz/base/conversion/test/DateTimeTests.java"/>
        <file name="org/ofbiz/base/conversion/test/MiscTests.java"/>
        <file name="org/ofbiz/base/conversion/test/TestJSONConverters.java"/>
        <file name="org/ofbiz/base/util/test/UtilIOTests.java"/>
        <file name="org/ofbiz/base/test/BaseUnitTests.java"/>
        <file name="org/ofbiz/base/util/collections/test/GenericMapTest.java"/>
    </filelist>

    <patternset id="cobertura-src-dirs">
        <include name="build/gen-src"/>
        <include name="src"/>
    </patternset>

    <target name="init">
        <!-- make sure we have crypto packages available -->
        <condition property="exclude.crypto" value="org/ofbiz/base/crypto/**">
            <not>
                <available classname="javax.crypto.Cipher" classpathref="local.class.path"/>
            </not>
        </condition>
        <condition property="exclude.cobertura" value="org/ofbiz/base/config/Cobertura*.java">
            <not>
                <available classname="net.sourceforge.cobertura.instrument.ClassInstrumenter" classpathref="cobertura.class.path"/>
            </not>
        </condition>
        <patternset id="src.exc.set">
            <exclude name="${exclude.cobertura}"/>
            <exclude name="${exclude.crypto}"/>
            <exclude name="org/ofbiz/base/util/OfbizJsBsfEngine.java"/>
        </patternset>
    </target>

    <target name="jar" depends="classes">
        <main-jar>
            <main-elements>
                <!-- also put the DTDs in the jar file... -->
                <fileset dir="${dtd.dir}" includes="*.dtd"/>
                <service type="org.ofbiz.base.conversion.ConverterLoader">
                    <provider classname="org.ofbiz.base.conversion.BooleanConverters"/>
                    <provider classname="org.ofbiz.base.conversion.CollectionConverters"/>
                    <provider classname="org.ofbiz.base.conversion.DateTimeConverters"/>
                    <provider classname="org.ofbiz.base.conversion.JSONConverters"/>
                    <provider classname="org.ofbiz.base.conversion.MiscConverters"/>
                    <provider classname="org.ofbiz.base.conversion.NetConverters"/>
                    <provider classname="org.ofbiz.base.conversion.NumberConverters"/>
                </service>
            </main-elements>
        </main-jar>
        <test-jar>
            <test-elements>
                <service type="org.ofbiz.base.util.test.UtilObjectTests$TestFactoryIntf">
                    <provider classname="org.ofbiz.base.util.test.UtilObjectTests$FirstTestFactory"/>
                    <provider classname="org.ofbiz.base.util.test.UtilObjectTests$SecondTestFactory"/>
                </service>
            </test-elements>
        </test-jar>
    </target>
</project>
