<?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 name="itest" basedir=".">

	<target name="wsdl-codegen" unless="test.skip">
		<!-- Set a property that can be picked up from the ant build.xml's -->

		<property name="maven.junit.jvmargs" value="" />
		<path id="maven.dependency.classpath">
			<path refid="maven.compile.classpath" />
		</path>
		<!-- compiling some custom wsdl files -->
		<property name="wsdl.source.dir" value="test-resources/wsdls" />
		<property name="wsdl.output.base.dir" value="target/wsdls" />
		<!-- make the dirs -->
		<mkdir dir="${wsdl.output.base.dir}" />

		<echo>Compiling Version.wsdl</echo>
    <delete dir="${wsdl.output.base.dir}/version"/>
		<mkdir dir="${wsdl.output.base.dir}/version" />
    <mkdir dir="target/test-classes"/>

		<java fork="yes" classname="org.apache.axis2.wsdl.WSDL2Java" failonerror="yes">
			<jvmarg value="-Djavax.xml.accessExternalSchema=all" />
			<classpath refid="maven.test.classpath" />
			<classpath location="${compiled.classes.dir}" />
			<arg line="-ap -o ${wsdl.output.base.dir}/version -d none -s -u -uri test-resources/wsdls/Version.wsdl" />
		</java>
		<javac fork="yes" destdir="target/test-classes" debug="on">
			<classpath refid="maven.test.classpath" />
			<classpath location="${compiled.classes.dir}" />
			<src path="${wsdl.output.base.dir}/version" />
		</javac>
  </target>
</project>