<?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.turbine</groupId>
     <artifactId>turbine-parent</artifactId>
     <version>6-SNAPSHOT</version>
  </parent>
  <artifactId>turbine</artifactId>
  <name>Apache Turbine</name>
  <version>5.1-SNAPSHOT</version>
  <description>Turbine is a servlet based framework that allows experienced Java
    developers to quickly build secure web applications. Parts of Turbine
    can also be used independently of the web portion of Turbine as
    well. In other words, we strive to make portions of Turbine easily
    available for use in other applications.</description>

  <url>http://turbine.apache.org/${turbine.site.path}</url>

  <inceptionYear>2000</inceptionYear>

  <developers>
    <developer>
      <id>brekke</id>
      <name>Jeff Brekke</name>
      <email>ekkerbj@yahoo.com</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>hoffmann</id>
      <name>Jürgen Hoffmann</name>
      <email>hoffmann@apache.org</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>daveb</id>
      <name>Dave Bryson</name>
      <email>mbryson@mont.mindspring.com</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>burton</id>
      <name>Kevin A. Burton</name>
      <email>burton@relativity.yi.org</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>dobbs</id>
      <name>Eric Dobbs</name>
      <email>dobbs@apache.org</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>seade</id>
      <name>Scott Eade</name>
      <email>seade@backstagetech.com.au</email>
      <url />
      <organization>Backstage Technologies Pty. Ltd.</organization>
      <timezone />
    </developer>
    <developer>
      <id>fedor</id>
      <name>Fedor Karpelevitch</name>
      <email>fedor@karpelevitch.net</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>legassick</id>
      <name>Sean Legassick</name>
      <email>sean@informage.net</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>jmcnally</id>
      <name>John McNally</name>
      <email>jmcnally@collab.net</email>
      <url />
      <organization>CollabNet, Inc.</organization>
      <timezone />
    </developer>
    <developer>
      <id>quintonm</id>
      <name>Quinton McCombs</name>
      <email>quintonm@bellsouth.net</email>
      <url />
      <organization>NEqualsOne</organization>
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone />
    </developer>
    <developer>
      <id>painter</id>
      <name>Jeffery Painter</name>
      <email>jeff@jivecast.com</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>mpoeschl</id>
      <name>Martin Poeschl</name>
      <email>mpoeschl@marmot.at</email>
      <url />
      <organization>tucana.at</organization>
      <timezone />
    </developer>
    <developer>
      <id>epugh</id>
      <name>Eric Pugh</name>
      <email>epugh@upstate.com</email>
      <url />
      <organization />
      <timezone />
    </developer>
    <developer>
      <id>dlr</id>
      <name>Daniel Rall</name>
      <email>dlr@finemaltcoding.com</email>
      <url />
      <organization>CollabNet, Inc.</organization>
      <timezone />
    </developer>
    <developer>
      <id>henning</id>
      <name>Henning P. Schmiedehausen</name>
      <email>hps@intermeta.de</email>
      <url />
      <organization>INTERMETA - Gesellschaft fuer Mehrwertdienste mbH</organization>
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone>1</timezone>
    </developer>
    <developer>
      <id>kschrader</id>
      <name>Kurt Schrader</name>
      <email>kschrader@karmalab.org</email>
      <url />
      <organization>University of Michigan</organization>
      <timezone />
    </developer>
    <developer>
      <id>jon</id>
      <name>Jon Scott Stevens</name>
      <email>jon@latchkey.com</email>
      <url />
      <organization>CollabNet, Inc.</organization>
      <timezone />
    </developer>
    <developer>
      <name>Thomas Vandahl</name>
      <id>tv</id>
      <email>tv@apache.org</email>
      <organization />
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone>1</timezone>
    </developer>
    <developer>
      <name>Ludwig Magnusson</name>
      <id>ludwig</id>
      <email>ludwig@apache.org</email>
      <organization />
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone>1</timezone>
    </developer>
    <developer>
      <name>Georg Kallidis</name>
      <id>gk</id>
      <email>gk@apache.org</email>
      <organization />
      <roles>
        <role>Java Developer</role>
      </roles>
      <timezone>1</timezone>
    </developer>
  </developers>
  <contributors>
    <contributor>
      <name>Gary Bartlett</name>
      <email>gary_a_bartlett@yahoo.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Youngho Cho</name>
      <email>youngho@nannet.co.kr</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Frank Conradie</name>
      <email>frank@opticode.co.za</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Gonzalo A. Diethelm</name>
      <email>gonzalo.diethelm@iname.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>David Duddleston</name>
      <email>david@i2a.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Christopher Elkins</name>
      <email>celkins@scardini.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>M. Sean Gilligan</name>
      <email>Sean_Gilligan@catalla.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Jian He</name>
      <email>hjnet@163.net</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Humberto Hernandez</name>
      <email>hhernandez@itweb.com.mx</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Nissim Karpenstein</name>
      <email>nissim@nksystems.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Rafal Krzewski</name>
      <email>krzewski@e-point.pl</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Chris Kimpton</name>
      <email>kimptoc.mail@bigfoot.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Brian Lawler</name>
      <email>brian@tribenetwork.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Josh Lucas</name>
      <email>josh@stonecottage.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Carl Ludwig</name>
      <email>carl@destinymusic.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Jonas Mauras</name>
      <email>jm@mediaphil.de</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Brett McLaughlin</name>
      <email>bmclaugh@algx.net</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Leon Messerschmidt</name>
      <email>leon@opticode.co.za</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Chris Meyer</name>
      <email>cmeyer@gatan.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Steven Nagy</name>
      <email>snagy@web-publicity.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Kasper Nielsen</name>
      <email>kav@kav.dk</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Paul O'Leary</name>
      <email>paul@evolventtech.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Giacomo Pati</name>
      <email>Giacomo.Pati@pwr.ch</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Mark Porter</name>
      <email>mark.porter@canlink.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Jeff Prickett</name>
      <email>jeffprickett@mindspring.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Ilkka Priha</name>
      <email>ilkka.priha@simsoft.fi</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Cameron Riley</name>
      <email>criley@ekmail.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Greg Ritter</name>
      <email>greg@shwoop.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Ingo Schuster</name>
      <email>ingo@raleigh.ibm.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Costas Stergiou</name>
      <email>csterg@aias.gr</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>George Stewart</name>
      <email>georgestewart@yahoo.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Ralf Stranzenbach</name>
      <email>ralf@reswi.ruhr.de</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Hakan Tandogan</name>
      <email>hakan42@gmx.de</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Scott C. Tavares</name>
      <email>stavares@home.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>John Thorhauer</name>
      <email>john@zenplex.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Magnús Þór Torfason</name>
      <email>magnus@handpoint.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Scott Weaver</name>
      <email>sweaver@rippe.com</email>
      <url />
      <organization />
      <timezone />
    </contributor>
    <contributor>
      <name>Siegfried Goeschl</name>
      <email>sgoeschl@apache.org</email>
      <url />
      <organization />
      <timezone />
    </contributor>
  </contributors>

  <scm>
    <connection>scm:svn:https://svn.apache.org/repos/asf/turbine/core/trunk</connection>
    <developerConnection>scm:svn:https://svn.apache.org/repos/asf/turbine/core/trunk</developerConnection>
    <url>https://svn.apache.org/viewcvs/turbine/core/trunk/</url>
  </scm>

  <build>
    <sourceDirectory>src/java</sourceDirectory>
    <testSourceDirectory>src/test</testSourceDirectory>

    <resources>
      <resource>
        <directory>src/macros</directory>
        <targetPath>macros</targetPath>
        <includes>
          <include>TurbineMacros.vm</include>
        </includes>
      </resource>
      <resource>
          <directory>${basedir}/src/main/resources</directory>
          <!-- remove filtering to allow for non utf-8, if required; e.g. the case of i10n and non ascii chars - otherwise use html entities or \u notation. java.util.Properties files are in latin-1.  -->
          <filtering>true</filtering>
          <includes>
              <include>**/*.properties</include>
              <include>**/*.xml</include>
          </includes>
      </resource>
    </resources>

    <!-- cft. loading path https://logging.apache.org/log4j/2.x/manual/configuration.html -->
    <testResources>
      <testResource>
        <directory>conf/test</directory>
        <includes>
          <include>log4j2-test.xml</include>
        </includes>
      </testResource>
    </testResources>
    
     <pluginManagement>
      <plugins>
       <plugin>
        <groupId>org.apache.torque</groupId>
        <artifactId>torque-maven-plugin</artifactId>
        <version>${torque.version}</version>
        </plugin>
      </plugins>
    </pluginManagement>

    <plugins>
      <!-- run optionally, use not as reporting plugin, as it exposes file paths to artifacts and
        check each possible vulnerability carefully, find more info about how to read, false positives et al. here: 
        https://jeremylong.github.io/DependencyCheck/dependency-check-maven/plugin-info.html or
        https://github.com/jeremylong/DependencyCheck
        CLI mvn phase
        $>mvn verify -Ddependency.check.skip=false
        or to invoke goal only:
        $>mvn org.owasp:dependency-check-maven:check -Ddependency.check.skip=false
      -->
     <plugin>
        <groupId>org.owasp</groupId>
        <artifactId>dependency-check-maven</artifactId>
        <version>5.0.0-M1</version>
        <executions>
           <execution>
                <goals>
                    <goal>check</goal>
                </goals>
            </execution>
        </executions>
        <configuration>
           <skip>${dependency.check.skip}</skip>
           <!-- suppress false positive -->
           <suppressionFiles>
            <suppressionFile>${project.basedir}/suppression-owasp-fp.xml</suppressionFile>
            </suppressionFiles>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>3.0.0-M3</version><!-- override parent -->
        <configuration>
          <!--default setting is forkCount=1/reuseForks=true -->
          <reuseForks>false</reuseForks>
          <forkCount>1</forkCount>
          <groups>!performance</groups>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.torque</groupId>
        <artifactId>torque-maven-plugin</artifactId>
        <version>${torque.version}</version>
        <configuration>
          <targetDatabase>mysql</targetDatabase>
          <schemaDir>src/torque/schema</schemaDir>
        </configuration>
        <executions>
          <execution>
            <id>generate-om-scheduler-sources</id>
            <phase>generate-sources</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.om</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <sourceIncludes>
                <include>scheduler-schema.xml</include>
              </sourceIncludes>
              <loglevel>error</loglevel>
              <options>
                <torque.database>mysql</torque.database>
                <torque.om.addGetByNameMethods>false</torque.om.addGetByNameMethods>
                <torque.om.save.saveException>TorqueException</torque.om.save.saveException>
                <torque.om.package>org.apache.turbine.services.schedule</torque.om.package>
                <torque.om.useIsForBooleanGetters>true</torque.om.useIsForBooleanGetters>
                <torque.runOnlyOnSourceChange>true</torque.runOnlyOnSourceChange>
              </options>
              <outputDirMap>
                <modifiable>${project.build.directory}/generated-sources</modifiable>
              </outputDirMap>
            </configuration>
          </execution>
          <execution>
            <id>torque-sql-mysql</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.sql</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/mysql</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>mysql</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-sql-hsqldb</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.sql</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/hsqldb</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>hsqldb</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-sql-derby</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.sql</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/derby</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>derby</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-sql-oracle</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.sql</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/oracle</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>oracle</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-sql-postgresql</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.sql</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/postgresql</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>postgresql</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-sql-mssql</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.sql</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/mssql</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>mssql</torque.database>
              </options>
            </configuration>
          </execution>

          <execution>
            <id>torque-idtable-mysql</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.idtable</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/mysql</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>mysql</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-idtable-hsqldb</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.idtable</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/hsqldb</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>hsqldb</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-idtable-derby</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.idtable</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/derby</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>derby</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-idtable-oracle</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.idtable</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/oracle</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>oracle</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-idtable-postgresql</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.idtable</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/postgresql</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>postgresql</torque.database>
              </options>
            </configuration>
          </execution>
          <execution>
            <id>torque-idtable-mssql</id>
            <phase>package</phase>
            <goals>
              <goal>generate</goal>
            </goals>
            <configuration>
              <packaging>classpath</packaging>
              <configPackage>org.apache.torque.templates.idtable</configPackage>
              <sourceDir>src/torque/schema</sourceDir>
              <defaultOutputDir>${project.build.directory}/generated-sql/torque/mssql</defaultOutputDir>
              <defaultOutputDirUsage>none</defaultOutputDirUsage>
              <loglevel>error</loglevel>
              <options>
                <torque.database>mssql</torque.database>
              </options>
            </configuration>
          </execution>
        </executions>
        <dependencies>
            <dependency>
                <groupId>org.apache.torque</groupId>
                <artifactId>torque-templates</artifactId>
                <version>${torque.version}</version>
            </dependency>
        </dependencies>
      </plugin>
      <!-- no fat jar  -->
      <!-- remove, if using parent 6 or above, not activated, agent seems to block gpg agent ? -->
      <!-- unskip this by setting -Djacoco.skip=true, cf. to pom property
           Be aware, as we exclude tests itself, jacoco only starts, if not skipping tests, as it is a coverage tool!  -->
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>0.8.4</version>
        <configuration>
            <skip>${jacoco.skip}</skip>
            <excludes>
              <exclude>*/*Test*</exclude>
            </excludes>
        </configuration>
        <executions>
          <execution>
            <id>default-prepare-agent</id>
            <goals>
            <goal>prepare-agent</goal>
            </goals>
           </execution>
           <execution>
              <id>report</id>
              <phase>prepare-package</phase>
              <goals>
                <goal>report</goal>
              </goals>
           </execution>
           <!--execution>
              <id>check</id>
              <goals>
                <goal>check</goal>
              </goals>
              <configuration>
                <haltOnFailure>false</haltOnFailure>
               </configuration>
            </execution-->
        </executions>
      </plugin>
    </plugins>
  </build>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jxr-plugin</artifactId>
        <configuration>
          <aggregate>false</aggregate>
        </configuration>
      </plugin>
      <!-- since 2.7 running the old report requires to register it explicitely, otherwise the build may fail -->
      <!-- TODO resolve log4j2 logback double binding in parent, wait for cobertura 2.8 probably, see https://github.com/mojohaus/cobertura-maven-plugin/issues/36 -->
      <plugin> 
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
        <reportSets>
          <reportSet>
            <reports>
              <report>cobertura</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <reportSets>
          <reportSet>
            <reports>
              <!-- select non-aggregate reports -->
              <report>report</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
    </plugins>
  </reporting>

  <dependencies>
	<dependency>
	    <groupId>javax.servlet</groupId>
	    <artifactId>javax.servlet-api</artifactId>
	    <version>3.1.0</version>
	    <scope>provided</scope>
	</dependency>
    <dependency>
      <groupId>org.apache.avalon.framework</groupId>
      <artifactId>avalon-framework-api</artifactId>
      <version>4.3.1</version>
    </dependency>
    <dependency>
    	<groupId>commons-codec</groupId>
    	<artifactId>commons-codec</artifactId>
      <version>1.11</version>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-configuration2</artifactId>
      <version>2.4</version>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-email</artifactId>
      <version>1.5</version>
    </dependency>
    <dependency>
      <groupId>org.apache.commons</groupId>
      <artifactId>commons-lang3</artifactId>
      <version>3.8.1</version>
    </dependency>
    <dependency>
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-text</artifactId>
       <version>1.6</version>
    </dependency>
    <dependency>
      <groupId>commons-beanutils</groupId>
      <artifactId>commons-beanutils</artifactId>
      <version>1.9.3</version>
    </dependency>
    <dependency>
      <groupId>nl.basjes.parse.useragent</groupId>
      <artifactId>yauaa</artifactId>
      <version>5.8</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-cache</artifactId>
      <version>1.1.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-factory</artifactId>
      <version>1.1.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-pool</artifactId>
      <version>1.0.5</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-localization</artifactId>
      <version>1.0.7</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-parser</artifactId>
      <version>2.0.0</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-intake</artifactId>
      <version>${fulcrum.intake}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-yaafi</artifactId>
      <version>1.0.8</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-crypto</artifactId>
      <version>1.0.8</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-xslt</artifactId>
      <version>1.1.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-mimetype</artifactId>
      <version>1.0.6</version>
    </dependency>
    <dependency>
      <groupId>org.apache.torque</groupId>
      <artifactId>torque-runtime</artifactId>
      <version>${torque.version}</version>
      <exclusions>
        <exclusion>
            <groupId>avalon-framework</groupId>
            <artifactId>avalon-framework-api</artifactId>
        </exclusion>
        <exclusion>
            <groupId>avalon-logkit</groupId>
            <artifactId>avalon-logkit</artifactId>
        </exclusion>
        <exclusion>  <!-- exclude this to exclude beanutils v1.8.0 -> CVE-2014-0114  -->
          <groupId>commons-configuration</groupId>
          <artifactId>commons-configuration</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency> <!-- include more modern version just for torque-runtime v4.0 -->
         <groupId>commons-configuration</groupId>
         <artifactId>commons-configuration</artifactId>
         <version>1.10</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-security-api</artifactId>
      <version>${fulcrum.security}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-security-memory</artifactId>
      <version>${fulcrum.security}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-security-api</artifactId>
      <version>${fulcrum.security}</version>
      <classifier>tests</classifier>
      <scope>test</scope>
    </dependency>
    <!-- suppress owasp warning until v1.1.2 is released, which fixes https://github.com/quartz-scheduler/quartz/issues/316 -->
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-quartz</artifactId>
      <version>1.1.1</version>
    </dependency>
    <!-- suppress owasp CVE-2018-11771, CVE-2018-1324, as jython-standalone is optional.-->
    <dependency>
      <groupId>org.python</groupId>
      <artifactId>jython-standalone</artifactId>
      <version>2.7.1</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.jabsorb</groupId>
      <artifactId>jabsorb</artifactId>
      <version>1.3.2</version>
      <optional>true</optional>
      <!-- requires maven version >= 3,  exclude old versions: org.slf4j:slf4j-jdk14,slf4j-api,(renamed)cl104-over-slf4j,org.mortbay.jetty:jsp-2.1, commons-httpclient:commons-httpclient,
         mvn eclipse:eclipse still no wildcard exclude (mvn version 3.3.9)
      -->
      <exclusions>
       <exclusion>
          <artifactId>jsp-2.1</artifactId>
          <groupId>org.mortbay.jetty</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jcl104-over-slf4j</artifactId>
          <groupId>org.slf4j</groupId>
        </exclusion>
        <exclusion>
          <artifactId>slf4j-jdk14</artifactId>
          <groupId>org.slf4j</groupId>
        </exclusion>
        <exclusion>
          <artifactId>*</artifactId>
          <groupId>*</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-jcl</artifactId>
      <version>${turbine.log4j2.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-slf4j-impl</artifactId>
      <version>${turbine.log4j2.version}</version>
      <scope>runtime</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-api</artifactId>
      <version>${turbine.log4j2.version}</version>
    </dependency>
    <dependency>
       <groupId>org.apache.logging.log4j</groupId>
       <artifactId>log4j-core</artifactId>
       <version>${turbine.log4j2.version}</version>
    </dependency>
    <!-- support of log4j-web (autodetect of log4j2 in WEB-INF folder) 
         may allow to remove explicit log4j2 loading/configuration except for tests -->
    <dependency>
      <groupId>org.apache.logging.log4j</groupId>
      <artifactId>log4j-web</artifactId>
      <version>${turbine.log4j2.version}</version>
      <optional>true</optional>
    </dependency>
    <!-- optional log4j1.2 bridge instead of log4j -->
    <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-1.2-api</artifactId>
        <version>${turbine.log4j2.version}</version>
        <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.apache.velocity</groupId>
      <artifactId>velocity-engine-core</artifactId>
      <version>2.0</version>
    </dependency>
    <dependency>
      <groupId>org.hsqldb</groupId>
      <artifactId>hsqldb</artifactId>
      <version>2.2.9</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.fulcrum</groupId>
      <artifactId>fulcrum-testcontainer</artifactId>
      <version>1.0.8</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <profiles>
    <profile>
      <id>apache-release</id>
      <build>
        <plugins>
           <plugin>
            <groupId>org.owasp</groupId>
            <artifactId>dependency-check-maven</artifactId>
            <configuration>
               <skip>false</skip>
            </configuration>
          </plugin>
          <!-- if set active (e.g. by -Djacoco.skip=false), may block gpg agent, use -Dgpg.useagent=false or kill gpg agent before start -->
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <configuration>
              <skip>${jacoco.skip}</skip><!-- by default true -->
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-site-plugin</artifactId>
            <executions>
              <execution>
                <id>turbine-release-site</id>
                <phase>prepare-package</phase>
                <goals>
                  <goal>site</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <!-- build the source and binary distribution packages -->
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <id>turbine-default-assembly</id>
                <configuration>
                  <skipAssembly>true</skipAssembly>
                </configuration>
              </execution>
              <execution>
                <id>turbine-core-assembly</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot>
                  <descriptors>
                    <descriptor>./src/assembly/binaries.xml</descriptor>
                    <descriptor>./src/assembly/source.xml</descriptor>
                  </descriptors>
                  <tarLongFileFormat>gnu</tarLongFileFormat>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
      <properties> 
        <dependency.check.skip>false</dependency.check.skip>
        <doclint>none</doclint><!-- since javadoc v.3 this is the required instead of -Xdoclint:none, remove if turbine parent (v6) is correct again using profile java8  -->
      </properties>
    </profile>
  </profiles>

  <properties>
    <!-- maven.compiler setting in turbine parent -->
    <!-- TODO: Change for release: remove development part in path "/turbine/development" --> 
    <turbine.site.path>turbine/turbine-5.0</turbine.site.path>
    <fulcrum.intake>2.0.0</fulcrum.intake>
    <fulcrum.security>1.1.3</fulcrum.security>
    <slf4j.version>1.7.26</slf4j.version>
    <dependency.check.skip>true</dependency.check.skip>
    <torque.version>4.0</torque.version>
    <jacoco.skip>true</jacoco.skip>
    <doclint>none</doclint>
  </properties>

</project>
