<?xml version="1.0"?>
<!--
  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.
-->
<!-- $Id$ -->
<project default="compile" basedir=".">
	<property name="Name" value="Apache FOP - Embedding Examples"/>
	<property name="name" value="embedding"/>
	<!-- compiler switches -->
	<property name="debug" value="on"/>
	<property name="optimize" value="off"/>
	<property name="deprecation" value="on"/>
	<!-- directories -->
	<property name="src.dir" value="./java"/>
	<property name="fop.lib.dir" value="../../lib"/>
	<property name="lib.dir" value="./lib"/>
	<property name="build.dir" value="./build"/>
	<property name="build.src" value="./build/src"/>
	<property name="build.dest" value="./build/classes"/>
	<!-- stuff -->
	<path id="project.class.path">
     <fileset dir="${fop.lib.dir}">
        <include name="avalon-framework*.jar"/>
        <include name="batik*.jar"/>
        <include name="xml-apis*.jar"/>
        <include name="xerces*.jar"/>
        <include name="xalan*.jar"/>
        <include name="serializer*.jar"/>
        <include name="commons-io*.jar"/>
        <include name="commons-logging*.jar"/>
        <include name="xmlgraphics-commons*.jar"/>
     </fileset>
     <fileset dir="${fop.lib.dir}/../build">
		 <include name="fop.jar"/>
     </fileset>
	</path>
	<!-- =================================================================== -->
	<!-- Initialization target                                               -->
	<!-- =================================================================== -->
	<target name="init">
		<tstamp/>
		<property name="year" value="2002-2004,2006"/>
		<echo message="------------------- ${Name} [${year}] ----------------"/>
	</target>
	<!-- =================================================================== -->
	<!-- Prepares the build directory                                        -->
	<!-- =================================================================== -->
	<target name="prepare" depends="init">
		<!-- create directories -->
		<echo message="Preparing the build directories"/>
		<mkdir dir="${build.dir}"/>
		<mkdir dir="${build.dest}"/>
	</target>
	<!-- =================================================================== -->
	<!-- Compiles the source directory                                       -->
	<!-- =================================================================== -->
	<target name="compile" depends="prepare" description="Compiles the examples">
		<echo message="Compiling the sources"/>
		<javac srcdir="${src.dir}" destdir="${build.dest}" debug="${debug}" deprecation="${deprecation}" optimize="${optimize}" includeAntRuntime="true">
			<classpath refid="project.class.path"/>
		</javac>
	</target>
	<!-- =================================================================== -->
	<!-- Runs the various examples                                           -->
	<!-- =================================================================== -->
	<target name="example1" depends="compile" description="Runs the FO to PDF example">
		<echo message="Running the FO to PDF example"/>
		<java classname="${name}.ExampleFO2PDF" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example2" depends="compile" description="Runs the FO to PDF example using a SAXParser">
		<echo message="Running the FO to PDF example using a SAXParser"/>
		<java classname="${name}.ExampleFO2PDFUsingSAXParser" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example3" depends="compile" description="Runs the XML to FO example">
		<echo message="Running the XML to FO example"/>
		<java classname="${name}.ExampleXML2FO" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example4" depends="compile" description="Runs the XML to PDF example">
		<echo message="Running the XML to PDF example"/>
		<java classname="${name}.ExampleXML2PDF" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example5" depends="compile" description="Runs the Object to XML example">
		<echo message="Running the Object to XML example"/>
		<java classname="${name}.ExampleObj2XML" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example6" depends="compile" description="Runs the Object to PDF example">
		<echo message="Running the Object to PDF example"/>
		<java classname="${name}.ExampleObj2PDF" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example7" depends="compile" description="Runs the DOM to PDF example">
		<echo message="Running the DOM to PDF example"/>
		<java classname="${name}.ExampleDOM2PDF" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
		</java>
	</target>
	<target name="example8" depends="compile" description="Runs the SVG to PDF example">
		<echo message="Running the SVG to PDF example"/>
		<java classname="${name}.ExampleSVG2PDF" fork="yes">
		  <classpath>
		    <path refid="project.class.path"/>
		    <pathelement location="${build.dest}"/>
		  </classpath>
                  <jvmarg value="-Xmx1024m"/>
		</java>
	</target>
	<target name="run" depends="example1,example2,example3,example4,example5,example5,example7,example8" description="Runs examples"/>
	<!-- =================================================================== -->
	<!-- Clean targets                                                       -->
	<!-- =================================================================== -->
	<target name="clean" depends="init" description="Cleans the build directory">
		<delete dir="${build.dir}"/>
	</target>
</project>
