<?xml version="1.0" encoding="UTF-8"?>
<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>com.addc.pom</groupId>
    <artifactId>addc-pom</artifactId>
    <version>8.7.3</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.addc</groupId>
  <artifactId>addc-server</artifactId>
  <packaging>pom</packaging>
  <name>addc-server</name>
  <version>2.9</version>
  <description>Parent for building server framework</description>
  <url>http://www.peterkanis.com/projects/addc-server</url>

  <properties>
    <siteVersion>${project.version}</siteVersion>
    <addc.commons.version>2.6</addc.commons.version>
    <isis.provider.version>3.2</isis.provider.version>
    <seshat.jndi.version>3.9</seshat.jndi.version>
    <build.site.version>1.1</build.site.version>
    <root.text.dir>${basedir}/..</root.text.dir>
  </properties>

  <scm>
    <connection>scm:svn:svn+ssh://pkanis@svn.code.sf.net/p/addc-server-commons/code/addc-server/trunk/</connection>
    <developerConnection>scm:svn:svn+ssh://pkanis@svn.code.sf.net/p/addc-server-commons/code/addc-server/trunk/</developerConnection>
    <url>https://svn.code.sf.net/p/addc-server-commons/code/addc-server/trunk/</url>
  </scm>

  <distributionManagement>
    <site>
      <id>addc.site</id>
      <url>http://www.peterkanis.com/projects/</url>
    </site>
  </distributionManagement>

  <profiles>
    <!-- ======================================================== -->
    <!-- Build a WAR project -->
    <!-- ======================================================== -->
    <profile>
      <id>build.war</id>
      <activation>
        <file>
          <exists>src/main/webapp</exists>
        </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <configuration>
              <packagingExcludes>**/*.jar,**/*_jsp.class,WEB-INF/classes/jsp/**,WEB-INF/classes/jsp</packagingExcludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>cobertura-maven-plugin</artifactId>
        <configuration>
          <instrumentation>
            <excludes>
              <exclude>**/*Exception.class</exclude>
              <exclude>**/*Constants.class</exclude>
              <exclude>**/Assert*.class</exclude>
              <exclude>**/*I18n.class</exclude>
              <exclude>**/*AuthenticationProvider.class</exclude>
              <exclude>**/HtmlLabels.class</exclude>
              <exclude>**/HibernateDAO.class</exclude>
              <exclude>**/*_jsp.class</exclude>
              <exclude>**/NamingServiceHelper.class</exclude>
              <exclude>**/LdapBindAuthenticator.class</exclude>
              <exclude>**/AuthorizeTag.class</exclude>
              <exclude>**/ServerRunner.class</exclude>
              <exclude>**/ServerStopper.class</exclude>
              <exclude>**/LoginController.class</exclude>
              <exclude>**/GlobalExceptionHandler.class</exclude>
              <exclude>**/BindingAppLifecycleBean.class</exclude>
              <exclude>**/LdapContextSource.class</exclude>
              <exclude>**/DefaultApplicationLifecycleBean.class</exclude>
              <exclude>com/addc/server/monitoring/*.class</exclude>
              <exclude>com/addc/server/commons/spring/mvc/*.class</exclude>
            </excludes>
            <ignoreMethodAnnotation>com.addc.commons.annotation.CoberturaIgnore</ignoreMethodAnnotation>
          </instrumentation>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>extract-site-zip</id>
            <phase>pre-site</phase>
            <goals>
              <goal>unpack</goal>
            </goals>
            <inherited>false</inherited>
            <configuration>
              <artifactItems>
                <artifactItem>
                  <groupId>com.addc.build</groupId>
                  <artifactId>site</artifactId>
                  <version>${build.site.version}</version>
                  <type>zip</type>
                  <outputDirectory>${project.build.directory}</outputDirectory>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <id>remove-unused-site-files</id>
            <goals>
              <goal>run</goal>
            </goals>
            <phase>post-site</phase>
            <inherited>true</inherited>
            <configuration>
              <target>
                <delete dir="${project.build.directory}/site/css" verbose="true" />
                <delete dir="${project.build.directory}/site/apidocs/css" verbose="true" />
                <delete dir="${project.build.directory}/site/fonts" verbose="true" />
                <delete dir="${project.build.directory}/site/images" verbose="true" />
                <delete dir="${project.build.directory}/site/img" verbose="true" />
                <delete dir="${project.build.directory}/site/js" verbose="true" />
                <delete file="${project.build.directory}/site/project-info.html" />
                <delete file="${project.build.directory}/site/project-reports.html" />
                <delete file="${project.build.directory}/site/plugins.html" />
              </target>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

  <reporting>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-project-info-reports-plugin</artifactId>
        <reportSets>
          <reportSet>
            <reports>
              <report>modules</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <excludePackageNames>com.addc.server.monitoring</excludePackageNames>
          <detectLinks />
          <links>
            <link>http://www.addc.com/projects/addc-commons/apidocs/</link>
          </links>
        </configuration>
        <reportSets>
          <reportSet>
            <id>javadoc.report</id>
            <reports>
              <report>aggregate</report>
            </reports>
          </reportSet>
        </reportSets>
      </plugin>
    </plugins>
  </reporting>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.objenesis</groupId>
        <artifactId>objenesis</artifactId>
        <version>2.6</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-base</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-base</artifactId>
        <classifier>tests</classifier>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-alerts</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-alerts</artifactId>
        <classifier>tests</classifier>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-security</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-slp</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-ssl</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-statistics</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-cache</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-jmx</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-iiop</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-iiop</artifactId>
        <classifier>tests</classifier>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-tag</artifactId>
        <version>${addc.commons.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>isis-provider</artifactId>
        <version>${isis.provider.version}</version>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>addc-test</artifactId>
        <version>${addc.commons.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>com.addc</groupId>
        <artifactId>seshat-jndi</artifactId>
        <version>${seshat.jndi.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-module-junit4</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-api-mockito</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <modules>
    <module>../addc-svr-base</module>
    <module>../addc-svr-monitor</module>
    <module>../addc-svr-iiop</module>
    <module>../addc-svr-security</module>
    <module>../addc-svr-tomcat</module>
    <module>../addc-svr-mvc</module>
    <module>../addc-web-mvc</module>
    <module>../addc-svr-runner</module>
  </modules>

</project>
