<?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 Main Build" default="build" basedir=".">
    <import file="macros.xml"/>
    <property name="site.dir" value="../site"/>
    <property name="memory.initial.param" value="-Xms128M"/>
    <property name="memory.max.param" value="-Xmx512M"/>
    <property name="pos.memory.max.param" value="-Xmx512M"/>
    <property name="memory.maxpermsize.param" value="-XX:MaxPermSize=128m"/>

    <available file="applications/build.xml" property="applications.present"/>
    <available file="specialpurpose/build.xml" property="specialpurpose.present"/>

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

    <target name="ofbiz-init">
        <property environment="env"/>
        <mkdir dir="tools/build/classes"/>
        <javac srcdir="tools/src" debug="on" deprecation="off" destdir="tools/build/classes" compiler="javac1.5" target="1.5" source="1.5"/>
        <mkdir dir="tools/build/lib"/>
        <jar jarfile="tools/build/lib/ofbiz-tools.jar" basedir="tools/build/classes"/>
    </target>

    <!-- ================================================================== -->
    <!-- Removes all created files and directories                          -->
    <!-- ================================================================== -->

    <target name="refresh"
          description="Clean all and rebuild">
        <antcall target="clean-all"/>
        <antcall target="build"/>
    </target>

    <target name="clean-all"
          description="Clean all DB, Catalina and caches data, logs, and runtime subdirectories and all specific files like .rej, .orig">
        <antcall target="clean-data"/>
        <antcall target="clean-logs"/>
        <antcall target="clean-output"/>
        <antcall target="clean-xtra"/>
        <antcall target="clean-catalina"/>
        <antcall target="clean-cache"/>
        <antcall target="clean-tempfiles"/>
        <antcall target="clean"/>
        <antcall target="clean-tools"/>
    </target>

    <target name="clean-data"
          description="Clean all DB data (Derby and HSQL) under runtime/data">
        <subant target="clean-data">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
        <delete file="runtime/data.zip"/>
        <delete file="runtime/test-list-build.xml"/>
    </target>

    <target name="clean-logs"
          description="Clean all logs in runtime/logs">
        <subant target="clean-logs">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
    </target>

    <target name="clean-output"
          description="Clean runtime/output directory">
        <subant target="clean-output">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
    </target>

    <target name="clean-xtra"
          description="Clean all other files like .rej, .orig, etc.">
        <delete verbose="on">
            <fileset dir="." includes="**/.nbattrs,**/*~,**/.#*,**/.DS_Store,**/*.rej,**/*.orig"/>
        </delete>
    </target>

    <target name="clean-catalina"
          description="Clean Catalina data in runtime/catalina/work">
        <subant target="clean-catalina">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
    </target>

   <target name="clean-cache"
           description="Clean the UtilCache file if errors found with old objects in the cache (Java runtime error something like 'local class incompatible')">
        <property file="framework/base/config/cache.properties"/>
        <echo message="NOTICE: deleting ${cache.file.store}.db"/>
        <delete file="${cache.file.store}.db" verbose="true"/>
    </target>

    <target name="clean-tempfiles"
          description="Remove files located in runtime/tempfiles (captcha, etc...)">
        <subant target="clean-tempfiles">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
    </target>

    <target name="download-selenium" 
          description="Download the selenium files">
        <subant target="install-seleniumxml">
            <filelist dir="." files="framework/testtools/build.xml"/>
        </subant>
    </target>

    <target name="download-PG-JDBC"
            description="Download the PostgreSQL JDBC driver file">
        <subant target="install-PG-JDBC">
            <filelist dir="." files="framework/entity/build.xml"/>
        </subant>
    </target>

    <target name="tests" depends="ofbiz-init">
        <subant target="tests">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
    </target>

    <target name="clean">
        <subant target="clean">
            <fileset dir="${basedir}/hot-deploy" casesensitive="no">
                <include name="*/build.xml"/>
            </fileset>
        </subant>

        <subant target="clean"  failonerror="${specialpurpose.present}" 
          description="Use failonerror=false in case the specialpurpose directory is not there">
            <filelist dir="." files="specialpurpose/build.xml"/>
        </subant>
        <subant target="clean" failonerror="${applications.present}" 
          description="Use failonerror=false in case the applications directory is not there">
            <filelist dir="." files="applications/build.xml"/>
        </subant>
        <subant target="clean">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
        <delete file="ofbiz.jar"/>
        <echo message="[clean] ========== Done Cleaning =========="/>
    </target>

    <target name="clean-tools">
        <delete dir="tools/build"/>
    </target>

    <target name="svninfo"
        description="Update the Release-revision info in the footer. Note that you need a valid Internet connection and Subversion connected to the OFBiz repository for that ">
        <echo message="Creating svninfo..."/>
        <exec executable="svn" dir="." output="runtime/svninfo_tmp.xml">
            <arg value="info"/>
            <arg value="--xml"/>
        </exec>
        <xmlproperty file="runtime/svninfo_tmp.xml"/>
        <echo message="Rev:${info.entry.commit(revision)}"/>
        <basename property="releasePath" file="${info.entry.url}"/>
        <echo message=" - Release-revision : ${releasePath}-${info.entry.commit(revision)}" file="runtime/svninfo.ftl"/>
        <delete file="runtime/svninfo_tmp.xml"/>
        <echo message="Done!"/>
    </target>

    <target name="clean-svninfo">
        <echo message="Resetting svninfo..."/>
        <echo message=" " file="runtime/svninfo.ftl"/>
        <echo message="Done!"/>
    </target>

    <!-- ================================================================== -->
    <!-- Build Components                                                   -->
    <!-- ================================================================== -->

    <target name="build" depends="ofbiz-init">
        <echo message="[build] ========== Start Building (Compile) =========="/>

        <subant inheritall="false">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
        <subant inheritall="false" failonerror="${applications.present}">
            <filelist dir="." files="applications/build.xml"/>
        </subant>
        <subant inheritall="false" failonerror="${specialpurpose.present}">
            <filelist dir="." files="specialpurpose/build.xml"/>
        </subant>
        <subant inheritall="false">
            <fileset dir="${basedir}/hot-deploy" casesensitive="no">
                <exclude name="disabled/**"/>
                <include name="*/build.xml"/>
            </fileset>
        </subant>
        <antcall target="clean-svninfo"></antcall>

        <echo message="[build] ========== Done Building (Compile) =========="/>
    </target>

    <!-- ================================================================== -->
    <!-- Build JavaDocs                                                     -->
    <!-- ================================================================== -->

    <target name="docs" depends="ofbiz-init">
        <echo message="[docs] ========== Start Building (JavaDoc) =========="/>

        <subant target="docs">
            <filelist dir="." files="framework/build.xml"/>
        </subant>
        <subant target="docs" failonerror="${applications.present}">
            <filelist dir="." files="applications/build.xml"/>
        </subant>
        <subant target="docs" failonerror="${specialpurpose.present}">
            <filelist dir="." files="specialpurpose/build.xml"/>
        </subant>
        <subant target="docs">
            <fileset dir="${basedir}/hot-deploy" casesensitive="no">
                <include name="*/build.xml"/>
            </fileset>
        </subant>

        <echo message="[docs] ========== Done Building (JavaDocs) =========="/>
    </target>

    <target name="docs-all" depends="build,ofbiz-init"
            description="For committers : Build all javadoc into one tree for easier viewing by the community">

        <echo message="[docs-all] ========== Start Building (JavaDoc) =========="/>

        <mkdir dir="${site.dir}/javadocs"/>
        <default-javadoc packagenames="org.ofbiz.*"
                destdir="${site.dir}/javadocs"
                maxmemory="256M"
                windowtitle="Open for Business - API"
                useexternalfile="yes">
            <fileset dir="${basedir}" defaultexcludes="yes">
                <include name="**/*.java"/>
                <exclude name="**/ControlApplet.java"/>
                <exclude name="**/ShipmentScaleApplet.java"/>
                <exclude name="**/test/"/>
            </fileset>
        </default-javadoc>

        <echo message="[docs-all] ========== Done Building (JavaDocs) =========="/>
   </target>

    <!-- ================================================================== -->
    <!-- Contrib Targets                                                    -->
    <!-- ================================================================== -->

    <target name="copy-contrib">
        <copy todir="${basedir}" overwrite="true" verbose="true">
            <fileset dir="${basedir}/contrib" excludes="contrib/**,**/*.class"/>
        </copy>
    </target>

    <target name="build-contrib" depends="copy-contrib,refresh"/>

    <!-- ================================================================== -->
    <!-- WebSite Targets                                                    -->
    <!-- ================================================================== -->

    <target name="build-website" 
            description="For committers : Update dtds and JavaDoc from OFBiz intance to site">
        <antcall target="copy-dtds"/>
        <antcall target="docs"/>
        <antcall target="copy-apis"/>
    </target>

    <target name="copy-apis">
        <mkdir dir="${site.dir}/api"/>
        <mkdir dir="${site.dir}/api/framework"/>
        <mkdir dir="${site.dir}/api/applications"/>
        <mkdir dir="${site.dir}/api/specialpurpose"/>
        <copy todir="${site.dir}/api/framework">
            <fileset dir="${basedir}/framework" includes="*/build/javadocs/**"/>
        </copy>
        <copy todir="${site.dir}/api/applications">
            <fileset dir="${basedir}/applications" includes="*/build/javadocs/**"/>
        </copy>
        <copy todir="${site.dir}/api/specialpurpose">
            <fileset dir="${basedir}/specialpurpose" includes="*/build/javadocs/**"/>
        </copy>
    </target>

    <target name="copy-dtds"
            description="For committers : Copy all dtds from OFBiz instance to website">
        <mkdir dir="${site.dir}/dtds"/>
        <copy todir="${site.dir}/dtds" flatten="true" overwrite="true">
            <fileset dir="${basedir}" includes="**/*.dtd"/>
            <fileset dir="${basedir}" defaultexcludes="yes"> <!-- all but oagis and external in general -->
                <include name="**/*.xsd"/>
                <exclude name="**/002*.xsd"/>
                <exclude name="**/068*.xsd"/>
                <exclude name="**/161*.xsd"/>
                <exclude name="**/196*.xsd"/>
                <exclude name="**/197*.xsd"/>
            </fileset>
        </copy>
    </target>

    <!-- ================================================================== -->
    <!-- Script Targets                                                     -->
    <!-- ================================================================== -->

    <target name="scriptfix">
        <fixcrlf srcdir="${basedir}" eol="lf" eof="remove" includes="**/*.sh"/>
        <fixcrlf srcdir="${basedir}" eol="crlf" includes="**/*.bat"/>
    </target>

    <!-- ================================================================== -->
    <!-- Start OFBiz                                                        -->
    <!-- ================================================================== -->

    <target name="run" 
            description="This will start OFBiz">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${pos.memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
        </java>
    </target>
    <target name="run-pos" 
            description="Start the POS (Point of sale) system">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="pos"/>
        </java>
    </target>
    <target name="run-install" depends="build"
            description="This loads all configured data; meant for generic OFBiz development, testing, demonstration, etc purposes">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="install"/>
        </java>
    </target>
    <target name="run-install-seed" depends="build"
            description="This loads ONLY the seed data (not seed-initial, demo, ext* or anything else); meant for use after an update of the code to reload the seed data as it is generally maintained along with the code and needs to be in sync for operation">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="install"/>
            <arg value="readers=seed"/>
        </java>
    </target>
    <target name="run-install-extseed" depends="build"
            description="This loads seed, seed-initial and ext data; meant for manual/generic testing, development, or going into production with a derived system based on stock OFBiz where the ext data basically replaces the demo data">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="install"/>
            <arg value="readers=seed,seed-initial,ext"/>
        </java>
    </target>
    <target name="run-install-exttest" depends="build"
            description="This loads seed, seed-initial, ext and ext-test data; meant for automated testing with a derived system based on stock OFBiz">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="install"/>
            <arg value="readers=seed,seed-initial,ext,ext-test"/>
        </java>
    </target>
    <target name="run-install-readers" depends="build"
            description="This loads data using the command line argument 'data-readers' that takes a comma separated list of readers (seed, seed-initial, demo, ext, ext-test, ext-demo)">
        <java jar="ofbiz.jar" fork="true" >
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="install"/>
            <arg value="readers=${data-readers}"/>
        </java>
    </target>
    <target name="run-install-file" depends="build"
            description="This loads data using the command line argument 'file' to load data from a given file">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="install"/>
            <arg value="delegator=default"/>
            <arg value="file=${data-file}"/>
        </java>
    </target>
    <target name="load-admin-user-login"
            description="Creates a user login with admin privileges and a temporary password equal to 'ofbiz'; after a succesful login the user will be prompted for a new password. Example command for the userLogin 'admin': ./ant load-admin-user-login -DuserLoginId=admin">
        <fail message="userLoginId parameter is required. To add the parameter to the command for user admin: -DuserLoginId=admin">
            <condition>
                <not><isset property="userLoginId"/></not>
            </condition>
        </fail>
        <copy file="${basedir}/framework/resources/templates/AdminUserLoginData.xml" tofile="runtime/tmp/tmpUserLogin.xml">
            <filterset>
                <filter token="userLoginId" value="${userLoginId}"/>
            </filterset>
        </copy>
        <antcall target="run-install-file">
            <param name="data-file" value="runtime/tmp/tmpUserLogin.xml"/>
        </antcall>
        <delete file="runtime/tmp/tmpUserLogin.xml"/>
    </target>
    <target name="create-admin-user-login"
            description="Prompts for a user name, then creates a user login with admin privileges and a temporary password equal to 'ofbiz'. After a succesful login the user will be prompted for a new password.">
        <input addproperty="userLoginId" message="Enter user name (log in with the temporary password 'ofbiz'):"/>
        <antcall target="load-admin-user-login"/>
    </target>

    <target name="run-debug" depends="build" 
            description="Starts OFBiz in debugging mode">
        <java jar="ofbiz.jar"  fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <jvmarg value="-Xnoagent"/>
            <jvmarg value="-Djava.compiler=NONE"/>
            <jvmarg value="-Xdebug"/>
            <jvmarg value="-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8091"/>
        </java>
    </target>
    <target name="run-tests" depends="build" 
          description="Run OFBiz default tests, execute ant run-install before and see results in runtime/logs/test-results/html/all-tests.html">
        <java jar="ofbiz.jar" fork="true" resultproperty="test.result">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="test"/>
        </java>
        <mkdir dir="runtime/logs/test-results/html"/>
        <junitreport todir="runtime/logs/test-results">
            <fileset dir="runtime/logs/test-results/">
                <include name="*.xml"/>
            </fileset>
            <report format="frames" todir="runtime/logs/test-results/html"/>
        </junitreport>
        <fail message="Test run was unsuccessful">
            <condition>
                <not>
                    <equals arg1="${test.result}" arg2="0"/>
                </not>
            </condition>
        </fail>
    </target>

    <target name="_check-separated-tests-already-setup">
        <available file="runtime/test-list-build.xml" property="_separated-tests-already-setup"/>
    </target>
    <target name="_setup-separated-test-run" depends="_check-separated-tests-already-setup" unless="_separated-tests-already-setup">
        <java jar="ofbiz.jar" fork="true">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="testlist"/>
            <arg file="runtime/test-list-build.xml"/>
            <arg value="-ant"/>
        </java>
    </target>
    <target name="run-single-test" depends="build"
          description="Run a single test">
        <java jar="ofbiz.jar" fork="true" resultproperty="test.result">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="test"/>
            <arg value="-component=${test.component}"/>
            <arg value="-case=${test.case}"/>
        </java>
        <delete dir="runtime/logs/test-results/${test.component}-${test.case}"/>
        <mkdir dir="runtime/logs/test-results/${test.component}-${test.case}"/>
        <move todir="runtime/logs/test-results/${test.component}-${test.case}">
            <fileset dir="runtime/logs/test-results" includes="*.xml"/>
        </move>
        <fail message="Test run was unsuccessful">
            <condition>
                <not>
                    <equals arg1="${test.result}" arg2="0"/>
                </not>
            </condition>
        </fail>
    </target>
    <target name="run-single-test-suite" depends="build"
            description="Run a single test suite">
        <java jar="ofbiz.jar" fork="true" resultproperty="test.result">
            <jvmarg value="${memory.initial.param}"/>
            <jvmarg value="${memory.max.param}"/>
            <jvmarg value="${memory.maxpermsize.param}"/>
            <arg value="test"/>
            <arg value="-component=${test.component}"/>
            <arg value="-suitename=${test.suiteName}"/>
        </java>
        <fail message="Test run was unsuccessful">
            <condition>
                <not>
                    <equals arg1="${test.result}" arg2="0"/>
                </not>
            </condition>
        </fail>
    </target>
    <target name="run-test-list" depends="_setup-separated-test-run" 
            description="Run all configured tests, stopping/starting ofbiz between each test">
        <delete dir="runtime/logs/test-results"/>
        <ant antfile="runtime/test-list-build.xml" target="all-tests"/>
    </target>
    
    <target name="cobertura-report">
        <delete dir="runtime/logs/cobertura-report"/>
        <mkdir dir="runtime/logs/cobertura-report"/>
        <taskdef resource="tasks.properties">
            <classpath>
                <fileset dir="framework/base/lib">
                    <include name="cobertura-1.9.3.jar" />
                    <include name="log4j-1.2.15.jar" />
                    <include name="scripting/asm*.jar" />
                </fileset>
            </classpath>
        </taskdef>
        <cobertura-report datafile="runtime/logs/cobertura.dat" destdir="runtime/logs/cobertura-report">
            <dirset dir=".">
                <include name="*/*/src"/>
            </dirset>

            <include name="**/*.java"/>
        </cobertura-report>
    </target>

    <!-- ================================================================== -->
    <!-- Create New Component. This target will create basic directory structure for an OFBiz component in hot-deploy directory. -->
    <!-- ================================================================== -->
    
    <target name="create-component"
            description="Creates the layout of an OFBiz component in the hot-deploy folder.">
        <input addproperty="component-name" message="Component name: (e.g. mycomponent) [Mandatory]"/>
        <input addproperty="component-resource-name" message="Component resource name: (e.g. MyComponent) [Mandatory]"/>
        <input addproperty="webapp-name" message="Webapp name: (e.g. mycomponent) [Mandatory]"/>
        <input addproperty="base-permission" message="Base permission: (e.g. MYCOMPONENT) [Mandatory]"/>
        <echo>The following hot-deploy component will be created:
              Name: ${component-name}
              Resource Name: ${component-resource-name}
              Webapp Name: ${webapp-name}
              Base permission: ${base-permission}
              Folder: ${basedir}/hot-deploy/${component-name}
        </echo>
        <input addproperty="confirm-component-creation" message="Confirm: " defaultvalue="N" validargs="Y,N,y,n"/>
        <fail message="Component creation cancelled by the user.">
            <condition>
                <equals arg1="${confirm-component-creation}" arg2="N" casesensitive="false"/>
            </condition>
        </fail>
        <fail message="Component name is mandatory">
            <condition>
                <equals arg1="${component-name}" arg2="" casesensitive="false" trim="yes"/>
            </condition>
        </fail>
      <fail message="Resource name is mandatory">
            <condition>
                <equals arg1="${component-resource-name}" arg2="" casesensitive="false" trim="yes"/>
            </condition>
        </fail>
        <fail message="Webapp name is mandatory">
            <condition>
                <equals arg1="${webapp-name}" arg2="" casesensitive="false" trim="yes"/>
            </condition>
        </fail>
        <fail message="Base permission is mandatory">
            <condition>
                <equals arg1="${base-permission}" arg2="" casesensitive="false" trim="yes"/>
            </condition>
        </fail>
      <filterset id="replacePlaceholders">
            <filter token="component-name" value="${component-name}"/>
            <filter token="component-resource-name" value="${component-resource-name}"/>
            <filter token="base-permission" value="${base-permission}"/>
            <filter token="webapp-name" value="${webapp-name}"/>
        </filterset>
        <mkdir dir="${basedir}/hot-deploy/${component-name}"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/config"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/data"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/dtd"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/entitydef"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/lib"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/patches"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/script"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/servicedef"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/src"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/testdef"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/webapp"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/error"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/WEB-INF"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/WEB-INF/actions"/>
        <mkdir dir="${basedir}/hot-deploy/${component-name}/widget/"/>
        <copy file="${basedir}/framework/resources/templates/ofbiz-component.xml" tofile="${basedir}/hot-deploy/${component-name}/ofbiz-component.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/build.xml" tofile="${basedir}/hot-deploy/${component-name}/build.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/TypeData.xml" tofile="${basedir}/hot-deploy/${component-name}/data/${component-resource-name}TypeData.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/SecurityData.xml" tofile="${basedir}/hot-deploy/${component-name}/data/${component-resource-name}SecurityData.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/DemoData.xml" tofile="${basedir}/hot-deploy/${component-name}/data/${component-resource-name}DemoData.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/entitymodel.xml" tofile="${basedir}/hot-deploy/${component-name}/entitydef/entitymodel.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/services.xml" tofile="${basedir}/hot-deploy/${component-name}/servicedef/services.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/Tests.xml" tofile="${basedir}/hot-deploy/${component-name}/testdef/${component-resource-name}Tests.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/UiLabels.xml" tofile="${basedir}/hot-deploy/${component-name}/config/${component-resource-name}UiLabels.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/index.jsp" tofile="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/index.jsp">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/error.jsp" tofile="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/error/error.jsp">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/controller.xml" tofile="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/WEB-INF/controller.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/web.xml" tofile="${basedir}/hot-deploy/${component-name}/webapp/${webapp-name}/WEB-INF/web.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/CommonScreens.xml" tofile="${basedir}/hot-deploy/${component-name}/widget/CommonScreens.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/Screens.xml" tofile="${basedir}/hot-deploy/${component-name}/widget/${component-resource-name}Screens.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/Menus.xml" tofile="${basedir}/hot-deploy/${component-name}/widget/${component-resource-name}Menus.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <copy file="${basedir}/framework/resources/templates/Forms.xml" tofile="${basedir}/hot-deploy/${component-name}/widget/${component-resource-name}Forms.xml">
            <filterset refid="replacePlaceholders"/>
        </copy>
        <echo>Component successfully created in folder ${basedir}/hot-deploy/${component-name}.
              Restart OFBiz and then visit the URL: http://localhost:8080/${webapp-name}
        </echo>
    </target>
</project>
