<?xml version="1.0" encoding="UTF-8"?>
<project name="test" default="compile" basedir=".">
  <!-- define the properties for target reference -->
  <property name="dir.src" value="src"/>
  <property name="dir.etc" value="etc"/>   
  <property name="dir.web" value="web"/>
  <property name="dir.meta" value="meta"/>   
  <property name="dir.lib" value="${dir.web}/WEB-INF/lib"/>
  <property name="dir.build" value="${dir.web}/WEB-INF"/>
  <property name="dir.classes" value="${dir.web}/WEB-INF/classes"/>
  <property name="app.name" value="ocs"/>
		
		
				  <!-- data base -->   
  <property file="${dir.web}/WEB-INF/config/jdbc.properties"/>   
  <property name="database.driver"   value="${jdbc.driverClassName}"/>
  <property name="database.url"      value="${jdbc.url}"/>
  <property name="database.username" value="${jdbc.username}"/>
  <property name="database.password" value="${jdbc.password}"/>
		
		
				  <!-- the classpth of ant -->
  <path id="classpath">
    <fileset dir="${dir.lib}" includes="**/*.jar" />
    <pathelement path="${dir.classes}"/>
  </path>
		
		
				
				  <!-- compile the src and test source code -->
  <target name="compile" description="Compile main source and test tree java files">
   <delete dir="${dir.classes}"/>    
   <mkdir dir="${dir.classes}"/>
    <javac srcdir="${dir.src}" destdir="${dir.classes}" debug="on">
      <classpath refid="classpath"/>
    </javac>
    <copy todir="${dir.classes}">
      <fileset dir="${dir.src}" includes="**/*.xml,**/*.properties">
          <!--exclude name="**/*.hbm.xml" /-->
      </fileset>
      <fileset dir="${dir.etc}" includes="**/*.properties"/>
    </copy>
  <native2ascii dest="${dir.classes}" src="${dir.etc}" encoding="UTF-8" includes="**/*.src" ext=".properties" />
  </target>
		
		
				 
  <!-- setup the database and initialize the data -->
  <target name="setup-db">
    <echo message="=========================================================="/>
    <echo message="database driver:${database.driver}"/>
    <echo message="database 
				
						url:${database.url}"/
				
				>
    <echo message="database username:${database.username}"/>
    <echo message="database password:${database.password}"/>
    <echo message="=========================================================="/>   
    
    <antcall target="runSql" inheritAll="false">
      <param name="script.sql" value="${dir.meta}/database-setup.sql"/>
      <param name="database.driver" value="${database.driver}"/>
      <param name="database.url" value="${database.url}"/>
      <param name="database.username" value="${database.username}"/>
      <param name="database.password" value="${database.password}"/>
    </antcall>
    <echo message="initialize Sample data..."/>
    <antcall target="runSql" inheritAll="false">
      <param name="script.sql" value="${dir.meta}/database-init.sql"/>
      <param name="database.driver" value="${database.driver}"/>
      <param name="database.url" value="${database.url}"/>
      <param name="database.username" value="${database.username}"/>
      <param name="database.password" value="${database.password}"/>
    </antcall>
  </target>
   
 
  <!-- run the sql to setup database -->
  <target name="runSql">
    <sql src="${script.sql}"
         driver="${database.driver}"
         url="${database.url}"
         userid="${database.username}"
         password="${database.password}"
         classpathref="classpath"
         onerror="continue"/>
  </target>
		
		
				  <target name="clean" description="Clean output directories">
    <delete dir="${dir.classes}"/>
  </target>
 
    
  <target name="deploy" description="deploy......" depends="clean,compile" >
  </target> 
</project>