<?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.
  -->

<project basedir="." default="testsetup">
   
	<target name="testsetup">
        <mkdir dir="${maven.build.dir}/test-resources/java2sec/more"/>        
        <mkdir dir="${maven.build.dir}/test-resources/java2sec/less"/>        

        <jar destfile="${maven.build.dir}/test-resources/java2sec/more/MorePermission.jar" update="true">
              <fileset dir="${maven.build.dir}/test-classes">
                  <include name="org/apache/axis2/java/security/driver/*"/>
                  <include name="org/apache/axis2/java/security/action/*"/>
                  <include name="org/apache/axis2/java/security/interf/*"/>
                  <include name="org/apache/axis2/java/security/more/*"/>
              </fileset>
        </jar>
        
        <delete dir="${maven.build.dir}/test-classes/org/apache/axis2/java/security/driver" />   
        <delete dir="${maven.build.dir}/test-classes/org/apache/axis2/java/security/more" />
        <delete dir="${maven.build.dir}/test-classes/org/apache/axis2/java/security/action" />
        <delete dir="${maven.build.dir}/test-classes/org/apache/axis2/java/security/interf" />
         
        <jar destfile="${maven.build.dir}/test-resources/java2sec/less/LessPermission.jar" update="true">
              <fileset dir="${maven.build.dir}/test-classes">
                  <include name="org/apache/axis2/java/security/less/*"/>
              </fileset>
        </jar>
        
        <delete dir="${maven.build.dir}/test-classes/org/apache/axis2/java/security/less" />

    </target>
</project>
