<?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">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.apache.ws.commons.axiom</groupId>
        <artifactId>axiom-parent</artifactId>
        <version>1.2.14</version>
        <relativePath>../axiom-parent/pom.xml</relativePath>
    </parent>
    <artifactId>axiom-testutils</artifactId>
    <name>Axiom Test Utilities</name>
    <description>
        Contains utility classes used by the test suites in Axiom.
    </description>
    <!-- This needs to be set explicitly because the project structure implies that the Maven calculated defaults are wrong -->
    <scm>
        <connection>scm:svn:http://svn.apache.org/repos/asf/webservices/commons/tags/axiom/1.2.14/modules/axiom-testutils</connection>
        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/webservices/commons/tags/axiom/1.2.14/modules/axiom-testutils</developerConnection>
        <url>http://svn.apache.org/viewvc/webservices/commons/tags/axiom/1.2.14/modules/axiom-testutils</url>
    </scm>
    <!-- This also needs to be set explicitly because the Maven calculated URL would point to nowhere -->
    <url>http://ws.apache.org/axiom/</url>
    <dependencies>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-stax-api_1.0_spec</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.geronimo.specs</groupId>
            <artifactId>geronimo-activation_1.1_spec</artifactId>
        </dependency>
        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
        </dependency>
        <dependency>
            <groupId>${stax.impl.groupid}</groupId>
            <artifactId>${stax.impl.artifact}</artifactId>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
        </dependency>
        <dependency>
            <groupId>xmlunit</groupId>
            <artifactId>xmlunit</artifactId>
        </dependency>
        <dependency>
            <!-- This should not be necessary, but XMLAssertEx contains code that fails on some Java runtimes,
                 presumably because of a bug in the DOM implementation. Therefore we use a well defined
                 version of Xerces. -->
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
        </dependency>
        <dependency>
            <!-- We use this only for LDAP like filters -->
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.core</artifactId>
        </dependency>
    </dependencies>
    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
            </resource>
            <resource>
                <directory>${project.build.directory}/generated-resources</directory>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>gmaven-plugin</artifactId>
                <version>1.2</version>
                <executions>
                    <execution>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>execute</goal>
                        </goals>
                        <configuration>
                            <source>
                                <!-- This generates a list of the files in src/main/resources/org/apache/axiom/testutils/conformance.
                                     This is useful when loading these files from the classpath. -->
                                <![CDATA[
                                    def filelist = new File(project.build.directory, "generated-resources/org/apache/axiom/testutils/conformance/filelist");
                                    filelist.parentFile.mkdirs();
                                    filelist.delete();
                                    new File(project.basedir, "src/main/resources/org/apache/axiom/testutils/conformance").eachFile({
                                        if (it.file && it.name.endsWith(".xml")) {
                                            filelist.append("$it.name\n");
                                        }
                                    })
                                ]]>
                            </source>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
    <profiles>
        <profile>
            <id>apache-release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.rat</groupId>
                        <artifactId>apache-rat-plugin</artifactId>
                        <configuration>
                            <excludes>
                                <!-- src/main/resources contains test files and they obviously cannot
                                     all contain a valid license header -->
                                <exclude>src/main/resources/**</exclude>
                            </excludes>
                        </configuration> 
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>
