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

  <groupId>org.apache.xmlgraphics</groupId>
  <artifactId>fop-events</artifactId>
  <name>Apache FOP Events</name>
  <description>XML Graphics Format Object Processor Events</description>

  <parent>
    <groupId>org.apache.xmlgraphics</groupId>
    <artifactId>fop-parent</artifactId>
    <version>2.5.0-SNAPSHOT</version>
  </parent>

  <dependencies>
    <!-- fop deps -->
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>fop-util</artifactId>
      <version>${project.version}</version>
    </dependency>
    <!-- external deps -->
    <dependency>
      <groupId>com.thoughtworks.qdox</groupId>
      <artifactId>qdox</artifactId>
      <version>1.12</version>
    </dependency>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
      <version>${commons.io.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.ant</groupId>
      <artifactId>ant</artifactId>
      <version>${ant.version}</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.xmlgraphics</groupId>
      <artifactId>xmlgraphics-commons</artifactId>
      <version>${xmlgraphics.commons.version}</version>
    </dependency>
    <!-- test-only deps -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>${junit.version}</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <!-- generate event collector models -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <version>${antrun.plugin.version}</version>
        <executions>
          <execution>
            <id>codegen-test-events</id>
            <phase>process-test-classes</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target>
                <taskdef name="collectEvents" classname="org.apache.fop.tools.EventProducerCollectorTask">
                  <classpath>
                    <path refid="maven.compile.classpath"/>
                    <path refid="maven.test.classpath"/>
                  </classpath>
                </taskdef>
                <collectEvents destdir="${project.build.testOutputDirectory}">
                  <fileset dir="${project.basedir}/src/test/java">
                    <include name="**/events/TestEventProducer.java"/>
                  </fileset>
                </collectEvents>
              </target>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <!-- junit testing -->
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <includes>
            <include>**/*TestCase.java</include>
          </includes>
          <redirectTestOutputToFile>true</redirectTestOutputToFile>
        </configuration>
      </plugin>
      <!-- code analysis - checkstyle -->
      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <configuration>
          <configLocation>${project.baseUri}../fop-core/src/tools/resources/checkstyle/checkstyle.xml</configLocation>
          <headerLocation>${project.baseUri}../fop-core/src/tools/resources/checkstyle/LICENSE.txt</headerLocation>
          <includeResources>false</includeResources>
          <includeTestResources>false</includeTestResources>
          <linkXRef>false</linkXRef>
          <logViolationsToConsole>true</logViolationsToConsole>
          <suppressionsLocation>${project.baseUri}../fop-core/src/tools/resources/checkstyle/suppressions.xml</suppressionsLocation>
          <violationSeverity>warning</violationSeverity>
        </configuration>
      </plugin>
      <!-- code analysis - findbugs -->
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>${findbugs.plugin.version}</version>
        <configuration>
          <excludeFilterFile>../fop-core/src/tools/resources/findbugs/exclusions.xml</excludeFilterFile>
          <effort>Max</effort>
          <threshold>Low</threshold>
        </configuration>
      </plugin>
    </plugins>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
      </resource>
      <resource>
        <directory>${basedir}/..</directory>
        <includes>
          <include>LICENSE</include>
          <include>NOTICE</include>
        </includes>
        <targetPath>META-INF</targetPath>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>src/test/resources</directory>
        <includes>
          <include>**/*</include>
        </includes>
      </testResource>
    </testResources>
  </build>

</project>
