<?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 - WebApp Component" default="jar" basedir=".">
    <import file="../../common.xml"/>

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

    <property name="desc" value="Web App Component"/>
    <property name="name" value="ofbiz-webapp"/>
    <property name="ofbiz.home.dir" value="../.."/>

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

    <patternset id="src.exc.set">
        <!-- JasperReports dependent files -->
        <exclude name="org/ofbiz/webapp/view/JasperReportsPdfViewHandler.java"/>
        <exclude name="org/ofbiz/webapp/view/JasperReportsXmlViewHandler.java"/>
        <exclude name="org/ofbiz/webapp/view/JasperReportsJXlsViewHandler.java"/>
        <exclude name="org/ofbiz/webapp/view/JasperReportsPoiXlsViewHandler.java"/>
        <!-- JPublish/EdenLib dependent files -->
        <exclude name="org/ofbiz/webapp/view/GenericViewRenderer.java"/>
        <exclude name="org/ofbiz/webapp/view/JPublishViewHandler.java"/>
        <exclude name="org/ofbiz/webapp/view/JPublishWrapper.java"/>
        <exclude name="org/ofbiz/webapp/view/FopPdfViewHandler.java"/>
        <exclude name="org/ofbiz/webapp/ftl/FreeMarkerViewRenderer.java"/>
        <exclude name="org/ofbiz/webapp/ftl/JpCacheIncludeTransform.java"/>
    </patternset>

    <target name="jar" depends="classes">
        <main-jar/>
        <test-jar/>
    </target>
</project>
