<?xml version="1.0" encoding="UTF-8"?>
<project default="jar"
         xmlns:j="jelly:core"
         xmlns:u="jelly:util"
         xmlns:deploy="deploy"
         xmlns:ant="jelly:ant"
         xmlns:maven="jelly:maven"
         xmlns:define="jelly:define">

    <j:set var="dist.name" value="${pom.artifactId}-${pom.currentVersion}"/>
    <!--<j:set var="dist.dir" value="target/dist"/>-->
    <j:set var="extensions.dir" value="target/extensions"/>

    <postGoal name="test:compile">
        <mkdir dir="${extensions.dir}"/>
        <attainGoal name="synapse_extensions"/>
        <attainGoal name="extensions"/>
    </postGoal>
    <goal name="synapse_extensions">
        <j:set var="class_test.dir" value="target/test-classes"/>

        <mkdir dir="target/synapse-repository"/>
        <ant:copy todir="target/synapse-repository">
            <ant:fileset dir="../core/target/synapse-repository">
                <ant:include name="**/**"/>
            </ant:fileset>
        </ant:copy>
        <ant:path id="classes_test.dir" location="${class_test.dir}"/>
        <maven:addPath id="maven.dependency.classpath" refid="classes_test.dir"/>
    </goal>


    <goal name="extensions">
        <mkdir dir="${extensions.dir}"/>
        <mkdir dir="target/dist"/>
        <mkdir dir="${extensions.dir}/META-INF"/>
        <ant:copy todir="${extensions.dir}">
            <ant:fileset dir="target/classes">
                <ant:include name="**/**"/>
            </ant:fileset>
        </ant:copy>
        <ant:copy todir="${extensions.dir}/META-INF">
            <ant:fileset dir="src/META-INF">
                <ant:include name="**/**"/>
            </ant:fileset>
            <ant:fileset file="../../LICENSE.txt"/>

        </ant:copy>
        <ant:copy file="../../NOTICE-JAR.txt"
                  tofile="src/META-INF/NOTICE.txt"/>

        <manifest file="target/MANIFEST.MF">
            <attribute name="Extension-Name" value="org.apache.synapse"/>
            <attribute name="Specification-Title" value="${pom.artifactId}"/>
            <attribute name="Specification-Vendor"
                       value="Apache Software Foundation"/>
            <attribute name="Specification-Version"
                       value="${pom.currentVersion}"/>
            <attribute name="Implementation-Title" value="Apache Synapse"/>
            <attribute name="Implementation-Vendor-Id" value="org.apache"/>
            <attribute name="Implementation-Vendor"
                       value="Apache Software Foundation"/>
            <attribute name="Implementation-Version"
                       value="${pom.currentVersion}"/>
        </manifest>

        <jar jarfile="target/dist/extension_mediators.jar"
             basedir="${extensions.dir}" manifest="target/MANIFEST.MF">
            <include name="**/**"/>
        </jar>
        <ant:delete dir="${extensions.dir}"/>
    </goal>
</project>
