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

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

    <property name="desc" value="Service Component"/>
    <property name="name" value="ofbiz-service"/>
    <property name="ofbiz.home.dir" value="../.."/>

    <path id="local.class.path">
        <fileset dir="${lib.dir}" includes="*.jar"/>
        <fileset dir="../.." includes="ofbiz.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="../base/build/lib" includes="*.jar"/>
        <fileset dir="../entity/lib" includes="*.jar"/>
        <fileset dir="../entity/build/lib" includes="*.jar"/>
        <fileset dir="../security/build/lib" includes="*.jar"/>
    </path>

    <target name="stubs" depends="classes">
        <rmic base="${build.dir}/classes" classname="org.ofbiz.service.rmi.RemoteDispatcherImpl">
            <classpath>
                <path refid="local.class.path"/>
            </classpath>
        </rmic>
    </target>

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

    <target name="rmi-jar" depends="stubs">
        <mkdir dir="${build.dir}/rmi"/>
        <jar jarfile="${build.dir}/rmi/${name}-rmi.jar">
            <fileset dir="${build.dir}/classes" includes="**/GenericServiceException.class"/>
            <fileset dir="${build.dir}/classes" includes="**/GenericResultWaiter.class"/>
            <fileset dir="${build.dir}/classes" includes="**/GenericRequester.class"/>
            <fileset dir="${build.dir}/classes" includes="**/LocalDispatcher.class"/>
            <fileset dir="${build.dir}/classes" includes="**/ModelService.class"/>
            <fileset dir="${build.dir}/classes" includes="org/ofbiz/service/rmi/**"/>
        </jar>
    </target>

    <target name="jar" depends="main-jar, rmi-jar"/>
</project>
