<?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 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.apache.james</groupId>
        <artifactId>james-project</artifactId>
        <version>1.6</version>
    </parent>
    <groupId>org.apache.james.jdkim</groupId>
    <artifactId>apache-jdkim-project</artifactId>
    <name>Apache JAMES DomainKey Project</name>
    <version>0.2-SNAPSHOT</version>
    <packaging>pom</packaging>
    <description>Apache JAMES jDKIM Project</description>
    <url>http://james.apache.org/jdkim/</url>
    <inceptionYear>2009</inceptionYear>

    <properties>
        <target.jdk>1.5</target.jdk>
    </properties>

    <modules>
        <module>main</module>
        <module>mailets</module>
        <module>assemble</module>
    </modules>

    <distributionManagement>
        <site>
            <id>jdkim-current-website</id>
            <url>scp://people.apache.org/www/james.apache.org/jdkim/current/</url>
        </site>
    </distributionManagement>

    <issueManagement>
        <system>JIRA</system>
        <url>https://issues.apache.org/jira/browse/JDKIM</url>
    </issueManagement>

    <scm>
        <connection>scm:svn:http://svn.apache.org/repos/asf/james/jdkim/trunk</connection>
        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/james/jdkim/trunk</developerConnection>
        <url>http://svn.apache.org/viewcvs.cgi/james/jdkim/trunk/?root=Apache-SVN</url>
    </scm>

    <mailingLists>
        <mailingList>
            <name>Apache JAMES Server List</name>
            <subscribe>server-dev-subscribe@james.apache.org</subscribe>
            <unsubscribe>server-dev-unsubscribe@james.apache.org</unsubscribe>
            <post>server-dev@james.apache.org</post>
            <archive>http://mail-archives.apache.org/mod_mbox/james-server-dev/</archive>
        </mailingList>
    </mailingLists>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>3.8.2</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>javax.mail</groupId>
                <artifactId>mail</artifactId>
                <version>1.4.1</version>
            </dependency>
            <dependency>
                <groupId>javax.activation</groupId>
                <artifactId>activation</artifactId>
                <version>1.1.1</version>
            </dependency>
            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>1.4</version>
            </dependency>
            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>1.1.1</version>
                <exclusions>
                    <exclusion>
                        <groupId>avalon-framework</groupId>
                        <artifactId>avalon-framework</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>logkit</groupId>
                        <artifactId>logkit</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>log4j</groupId>
                        <artifactId>log4j</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>javax.servlet</groupId>
                        <artifactId>servlet-api</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mailet-base</artifactId>
                <version>1.1</version>
            </dependency>
            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mailet-base</artifactId>
                <version>1.1</version>
                <scope>test</scope>
                <classifier>tests</classifier>
            </dependency>
            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mailet-base</artifactId>
                <version>1.1</version>
                <type>test-jar</type>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mailet</artifactId>
                <version>2.4</version>
            </dependency>
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <scope>runtime</scope>
                <version>1.2.16</version>
            </dependency>
            <dependency>
                <groupId>dnsjava</groupId>
                <artifactId>dnsjava</artifactId>
                <version>2.0.8</version>
            </dependency>
            <dependency>
                <groupId>org.apache.james.jdkim</groupId>
                <artifactId>apache-jdkim-library</artifactId>
                <version>0.2-SNAPSHOT</version>
            </dependency>
            <dependency>
                <groupId>org.apache.james.jdkim</groupId>
                <artifactId>apache-jdkim-library</artifactId>
                <version>0.2-SNAPSHOT</version>
                <type>test-jar</type>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.james.jdkim</groupId>
                <artifactId>apache-jdkim-mailets</artifactId>
                <version>0.2-SNAPSHOT</version>
            </dependency>
            <dependency>
                <groupId>ca.juliusdavies</groupId>
                <artifactId>not-yet-commons-ssl</artifactId>
                <version>0.3.11</version>
            </dependency>
            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mime4j-core</artifactId>
                <version>0.7-SNAPSHOT</version>
            </dependency>
            <dependency>
                <groupId>org.apache.james</groupId>
                <artifactId>apache-mime4j-dom</artifactId>
                <version>0.7-SNAPSHOT</version>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-clean-plugin</artifactId>
                    <version>2.4.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.3.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>2.3.1</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.8</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.5</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-remote-resources-plugin</artifactId>
                    <version>1.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-site-plugin</artifactId>
                    <version>3.0-beta-3</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-report-plugin</artifactId>
                    <version>2.8</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.rat</groupId>
                    <artifactId>apache-rat-plugin</artifactId>
                    <version>0.7</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jxr-plugin</artifactId>
                    <version>2.2</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-pmd-plugin</artifactId>
                    <version>2.5</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-javadoc-plugin</artifactId>
                    <version>2.7</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-doap-plugin</artifactId>
                    <version>1.1</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>findbugs-maven-plugin</artifactId>
                    <version>2.3.2</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>emma-maven-plugin</artifactId>
                    <version>1.0-alpha-3</version>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.rat</groupId>
                <artifactId>apache-rat-plugin</artifactId>
                <inherited>false</inherited>
                <executions>
                    <execution>
                        <phase>verify</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>${target.jdk}</source>
                    <target>${target.jdk}</target>
                    <encoding>iso8859-1</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-javadoc-plugin</artifactId>
                <executions>
                    <execution>
                        <id>aggregate</id>
                        <goals>
                            <goal>aggregate</goal>
                        </goals>
                        <phase>site</phase>
                    </execution>
                    <execution>
                        <id>javadoc-jar</id>
                        <phase>package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <!--
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-doap-plugin</artifactId>
                <configuration>
                    <doapOptions>
                        <programmingLanguage>java</programmingLanguage>
                        <downloadPage>http://james.apache.org/download.cgi</downloadPage>
                    </doapOptions>
                    <asfExtOptions>
                        <included>true</included>
                        <name>Apache JAMES</name>
                        <pmc>http://james.apache.org</pmc>
                        <chair>Norman Maurer</chair>
                        <charter>Apache JAMES is dedicated to email related code in Java</charter>
                        <standards>
                            <standard>
                                <title>DomainKeys Identified Mail (DKIM) Signatures</title>
                                <url>http://www.ietf.org/rfc/rfc4871.txt</url>
                                <id>RFC 4871</id>
                                <body>IETF</body>
                            </standard>
                        </standards>
                    </asfExtOptions>
                </configuration>
                <executions>
                    <execution>
                        <id>site</id>
                        <phase>site</phase>
                        <goals>
                            <goal>generate</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            -->

            <!-- Site generation -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <executions>
                    <execution>
                        <id>attach-descriptor</id>
                        <goals>
                            <goal>attach-descriptor</goal>
                        </goals>
                        <configuration>
                            <siteDirectory>${basedir}/src/site</siteDirectory>
                            <generateReports>false</generateReports>
                        </configuration>
                    </execution>
                </executions>
                <configuration>
                    <siteDirectory>${maven-site-plugin.siteDirectory}</siteDirectory>
                    <generateReports>${maven-site-plugin.generateReports}</generateReports>
                    <reportPlugins>
                        <!-- Order matters. First project-info-reports, second jxr. -->
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-project-info-reports-plugin</artifactId>
                            <reports>
                                <report>dependencies</report>
                                <report>dependency-management</report>
                                <report>dependency-convergence</report>
                                <report>distribution-management</report>
                                <report>index</report>
                                <report>license</report>
                                <report>mailing-list</report>
                                <report>modules</report>
                                <report>plugin-management</report>
                                <report>plugins</report>
                                <report>project-team</report>
                                <report>scm</report>
                                <report>summary</report>
                            </reports>
                        </plugin>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-jxr-plugin</artifactId>
                            <configuration>
                                <aggregate>true</aggregate>
                            </configuration>
                        </plugin>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-report-plugin</artifactId>
                            <configuration>
                                <aggregate>true</aggregate>
                            </configuration>
                        </plugin>
                        <plugin>
                            <groupId>org.apache.rat</groupId>
                            <artifactId>apache-rat-plugin</artifactId>
                            <configuration>
                                <excludes>
                                    <exclude>NOTICE.*</exclude>
                                    <exclude>LICENSE.*</exclude>
                                    <!-- Generated by Maven -->
                                    <exclude>release.properties</exclude>
                                    <exclude>dist/**/*</exclude>
                                    <!-- Eclipse -->
                                    <exclude>**/.*</exclude>
                                    <exclude>.*/**/*</exclude>
                                </excludes>
                            </configuration>
                        </plugin>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-pmd-plugin</artifactId>
                            <configuration>
                                <aggregate>true</aggregate>
                                <targetJdk>${target.jdk}</targetJdk>
                                <rulesets>
                                    <ruleset>/rulesets/basic.xml</ruleset>
                                    <ruleset>/rulesets/unusedcode.xml</ruleset>
                                    <ruleset>/rulesets/imports.xml</ruleset>
                                </rulesets>
                                <format>xml</format>
                                <linkXref>true</linkXref>
                                <sourceEncoding>utf-8</sourceEncoding>
                                <minimumTokens>100</minimumTokens>
                            </configuration>
                        </plugin>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-javadoc-plugin</artifactId>
                            <configuration>
                                <minmemory>256m</minmemory>
                                <maxmemory>1g</maxmemory>
                                <linksource>true</linksource>
                                <tags>
                                    <tag>
                                        <name>note</name>
                                        <placement>a</placement>
                                        <head>NOTE</head>
                                    </tag>
                                    <tag>
                                        <name>todo</name>
                                        <placement>a</placement>
                                        <head>TODO</head>
                                    </tag>
                                    <tag>
                                        <name>warning</name>
                                        <placement>a</placement>
                                        <head>WARNING</head>
                                    </tag>
                                </tags>
                                <source>1.5</source>
                            </configuration>
                            <reportSets>
                                <reportSet>
                                    <reports>
                                        <report>aggregate</report>
                                        <report>test-aggregate</report>
                                    </reports>
                                </reportSet>
                            </reportSets>
                        </plugin>
                        <plugin>
                            <groupId>org.codehaus.mojo</groupId>
                            <artifactId>findbugs-maven-plugin</artifactId>
                            <configuration>
                                <xrefLocation>${project.reporting.outputDirectory}/../xref</xrefLocation>
                                <xrefTestLocation>${project.reporting.outputDirectory}/../xref-test</xrefTestLocation>
                                <!-- required by dashboard plugin and hudson -->
                                <xmlOutput>true</xmlOutput>
                                <effort>Max</effort>
                                <findbugsXmlOutput>true</findbugsXmlOutput>
                                <findbugsXmlWithMessages>true</findbugsXmlWithMessages>
                            </configuration>
                        </plugin>
                        <!--
                        <plugin>
                          <groupId>org.apache.maven.plugins</groupId>
                          <artifactId>maven-changes-plugin</artifactId>
                          <configuration>
                            <onlyCurrentVersion>true</onlyCurrentVersion>
                            <resolutionIds>Fixed</resolutionIds>
                            <statusIds>Resolved,Closed</statusIds>
                            <columnNames>Type,Key,Summary,Status,Resolution,Fix Version</columnNames>
                          </configuration>
                          <reportSets>
                            <reportSet>
                              <reports>
                                <report>jira-report</report>
                              </reports>
                            </reportSet>
                          </reportSets>
                        </plugin>
                        -->
                    </reportPlugins>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>
