<project default="java:jar" xmlns:j="jelly:core" xmlns:ant="jelly:ant"
	xmlns:deploy="deploy" xmlns:u="jelly:util" xmlns:maven="jelly:maven">

  <preGoal name="test:test">
    <!-- Work area for unit tests -->
    <mkdir dir="target/test-sandbox/logs"/>
    <copy todir="target/test-classes">
        <fileset dir="src/test-conf"/>
    </copy>
  </preGoal>

  <preGoal name="test:single">
    <!-- Work area for unit tests -->
    <mkdir dir="target/test-sandbox/logs"/>
    <copy todir="target/test-classes">
        <fileset dir="src/test-conf"/>
    </copy>
  </preGoal>

  <postGoal name="java:compile" >
      <attainGoal name="rmic"/>
  </postGoal>


  <goal name="rmic" xmlns:j="jelly:core" xmlns:u="jelly:util">
    <rmic base="${maven.build.dest}" classname="org.apache.jcs.auxiliary.remote.RemoteCacheListener">
      <classpath>
        <path refid="maven.dependency.classpath"/>
      </classpath>
    </rmic> 

    <rmic base="${maven.build.dest}" classname="org.apache.jcs.auxiliary.remote.server.RemoteCacheServerListener"> 
      <classpath>
        <path refid="maven.dependency.classpath"/>
      </classpath>
    </rmic> 

    <rmic base="${maven.build.dest}" classname="org.apache.jcs.auxiliary.remote.server.RemoteCacheServer"> 
      <classpath>
        <path refid="maven.dependency.classpath"/>
      </classpath>
    </rmic> 
  </goal>

  <goal name="copyjars">
    <j:forEach var="lib" items="${pom.artifacts}">
      <ant:copy todir="${basedir}/jars" file="${lib.path}"/>
    </j:forEach>
  </goal>

  <postGoal name="site">
    <attainGoal name="pdf"/>
  </postGoal>
  
  <!-- The eclipse goal runs .project and .classpath generation -->
  <!-- I want to prevent the .project file genreation, so -->
  <!-- the ant external tool builder will not get wiped out. -->
  <goal name="eclipse:generate-project">
    <!-- do nothing -->
    <ant:echo>Not generating the .project file.</ant:echo>	  
  </goal>
  
</project>
