<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ 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 xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
	<parent>
		<groupId>org.apache</groupId>
		<artifactId>apache</artifactId>
		<version>3</version>
	</parent>
	<modelVersion>4.0.0</modelVersion>
	<groupId>org.apache.axis2</groupId>
	<artifactId>axis2</artifactId>
	<version>1.3_POST_MODS-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>Apache Axis 2.0 - Root</name>
	<modules>
		<module>modules/adb</module>
		<module>modules/adb-codegen</module>
		<module>modules/addressing</module>
		<module>modules/codegen</module>
		<module>modules/fastinfoset</module>
		<module>modules/integration</module>
		<module>modules/java2wsdl</module>
		<module>modules/jibx</module>
		<module>modules/json</module>
		<module>modules/kernel</module>
		<module>modules/mex</module>
		<module>modules/mex-mar</module>
		<module>modules/mtompolicy</module>
		<module>modules/parent</module>
		<module>modules/ping</module>
		<module>modules/samples/version</module>
		<module>modules/soapmonitor</module>
		<module>modules/spring</module>
		<module>modules/tool/axis2-aar-maven-plugin</module>
		<module>modules/tool/axis2-ant-plugin</module>
		<module>modules/tool/axis2-eclipse-codegen-plugin</module>
		<module>modules/tool/axis2-eclipse-service-plugin</module>
		<module>modules/tool/axis2-idea-plugin</module>
		<module>modules/tool/axis2-java2wsdl-maven-plugin</module>
		<module>modules/tool/axis2-mar-maven-plugin</module>
		<module>modules/tool/axis2-wsdl2code-maven-plugin</module>
		<module>modules/webapp</module>
		<module>modules/xmlbeans</module>
		<module>modules/samples</module>
	    <module>modules/scripting</module>
	</modules>
 	<profiles>
	   <profile>
		<activation>
		  <property>
			<name>release</name>
		  </property>
		</activation>
			<modules>
				<module>modules/documentation</module>
				<module>modules/distribution</module>
			</modules>
	    </profile>	
		<profile>
			<id>java14</id>
			<activation>
				<jdk>1.4</jdk>
			</activation>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-antrun-plugin</artifactId>
						<executions>
							<execution>
								<id>axis2-jar</id>
								<phase>package</phase>
								<configuration>
									<tasks>
										<mkdir dir="target/lib"/>
										<jar destfile="target/lib/axis2-${pom.version}.jar">
											<fileset dir="modules/java2wsdl/target/classes"/>
											<fileset dir="modules/kernel/target/classes"/>
											<fileset dir="modules/addressing/target/classes"/>
											<fileset dir="modules/codegen/target/classes"/>
											<fileset dir="modules/adb/target/classes"/>
											<fileset dir="modules/adb-codegen/target/classes"/>
											<fileset dir="modules/xmlbeans/target/classes"/>
										</jar>
									</tasks>
								</configuration>
								<goals>
									<goal>run</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>java15</id>
			<activation>
				<jdk>1.5</jdk>
			</activation>
			<modules>
				<module>modules/jaxbri</module>
				<module>modules/metadata</module>
				<module>modules/saaj-api</module>
				<module>modules/saaj</module>
                <module>modules/jws-api</module>
				<module>modules/jaxws-api</module>
				<module>modules/jaxws</module>
				<module>modules/clustering</module>
			</modules>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-antrun-plugin</artifactId>
						<executions>
							<execution>
								<id>axis2-jar</id>
								<phase>package</phase>
								<configuration>
									<tasks>
										<mkdir dir="target/lib"/>
										<jar destfile="target/lib/axis2-${pom.version}.jar">
											<fileset dir="modules/java2wsdl/target/classes"/>
											<fileset dir="modules/kernel/target/classes"/>
											<fileset dir="modules/addressing/target/classes"/>
											<fileset dir="modules/codegen/target/classes"/>
											<fileset dir="modules/adb/target/classes"/>
											<fileset dir="modules/adb-codegen/target/classes"/>
											<fileset dir="modules/xmlbeans/target/classes"/>
											<fileset dir="modules/clustering/target/classes"/>
										</jar>
									</tasks>
								</configuration>
								<goals>
									<goal>run</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
			<id>java16</id>
			<activation>
				<jdk>1.6</jdk>
			</activation>
			<modules>
				<module>modules/jaxbri</module>
				<module>modules/metadata</module>
				<module>modules/saaj-api</module>
				<module>modules/saaj</module>
                <module>modules/jws-api</module>
				<module>modules/jaxws-api</module>
				<module>modules/jaxws</module>
				<module>modules/clustering</module>
			</modules>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-antrun-plugin</artifactId>
						<executions>
							<execution>
								<id>axis2-jar</id>
								<phase>package</phase>
								<configuration>
									<tasks>
										<mkdir dir="target/lib"/>
										<jar destfile="target/lib/axis2-${pom.version}.jar">
											<fileset dir="modules/java2wsdl/target/classes"/>
											<fileset dir="modules/kernel/target/classes"/>
											<fileset dir="modules/addressing/target/classes"/>
											<fileset dir="modules/codegen/target/classes"/>
											<fileset dir="modules/adb/target/classes"/>
											<fileset dir="modules/adb-codegen/target/classes"/>
											<fileset dir="modules/xmlbeans/target/classes"/>
											<fileset dir="modules/clustering/target/classes"/>
										</jar>
									</tasks>
								</configuration>
								<goals>
									<goal>run</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
	<ciManagement>
		<system>continuum</system>
		<url>http://vmbuild.apache.org/continuum</url>
		<notifiers>
			<notifier>
				<configuration>
					<ADDRESS>axis2-cvs@ws.apache.org</ADDRESS>
				</configuration>
			</notifier>
		</notifiers>
	</ciManagement>
	<scm>
		<connection>
         scm:svn:http://svn.apache.org/repos/asf/webservices/axis2/trunk/java/
      </connection>
		<developerConnection>
         scm:svn:https://svn.apache.org/repos/asf/webservices/axis2/trunk/java/
      </developerConnection>
		<url>http://svn.apache.org/viewvc/webservices/webservices/axis2/trunk/java/</url>
	</scm>
	<distributionManagement>
		<repository>
			<id>apache-repo</id>
			<name>Maven Central Repository</name>
			<url>
            scpexe://people.apache.org//www/people.apache.org/repo/m2-ibiblio-rsync-repository</url>
		</repository>
		<snapshotRepository>
			<id>apache-snapshots</id>
			<name>Apache Development Repository</name>
			<url>scpexe://people.apache.org//www/people.apache.org/repo/m2-snapshot-repository</url>
		</snapshotRepository>
	</distributionManagement>
	<build>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>axis2-jar-package</id>
						<phase>package</phase>
						<goals>
							<goal>attach-artifact</goal>
						</goals>
						<configuration>
							<artifacts>
								<artifact>
									<file>target/lib/axis2-${pom.version}.jar</file>
									<type>jar</type>
								</artifact>
							</artifacts>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
