<?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">
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.deephacks.tools4j</groupId>
  <artifactId>root</artifactId>
  <name>Tools4j Root</name>
  <packaging>pom</packaging>
  <version>1</version>
  <description>The Tools4j Root pom provides common settings for all Tools4j components.</description>
  <url>http://tools4j.deephacks.org</url>
  <inceptionYear>2012</inceptionYear>
  <mailingLists>
    <mailingList>
      <name>Development List</name>
      <post>tools4j-dev@googlegroups.com</post>
    </mailingList>
    <mailingList>
      <name>User List</name>
      <post>tools4j-user@googlegroups.com</post>
    </mailingList>
  </mailingLists>
  <issueManagement>
    <system>github</system>
    <url>https://github.com/deephacks/tools4j/issues</url>
  </issueManagement>
  <scm>
    <connection>scm:git:git@github.com:deephacks/tools4j.git</connection>
    <developerConnection>scm:git:git@github.com:deephacks/tools4j.git</developerConnection>
    <url>scm:git:git@github.com/deephacks/tools4j</url>
  </scm>
  <licenses>
    <license>
      <name>Apache License</name>
      <url>license.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <developers>
    <developer>
      <name>Kristoffer Sjogren</name>
      <id>krisskross</id>
      <email>stoffe -at- gmail.com</email>
      <organization/>
      <roles>
        <role>Developer</role>
      </roles>
      <url>http://stoffe.deephacks.org/</url>
      <timezone>+1</timezone>
    </developer>
  </developers>

  <parent>
    <groupId>org.sonatype.oss</groupId>
    <artifactId>oss-parent</artifactId>
    <version>7</version>
  </parent>

  <modules>
    <module>cli</module>
    <module>config</module>
    <module>log</module>
    <module>support</module>
  </modules>

  <properties>
    <!-- java -->
    <version.java-compiler>1.6</version.java-compiler>
    <version.java-source>1.6</version.java-source>
    <version.java-target>1.6</version.java-target>
    <!-- plugins -->
    <version.surefire-plugin>2.10</version.surefire-plugin>
    <version.eclipse-plugin>2.8</version.eclipse-plugin>
    <version.compiler-plugin>2.3.2</version.compiler-plugin>
    <version.jar-plugin>2.3.2</version.jar-plugin>
    <version.war-plugin>2.1.1</version.war-plugin>
    <version.javadoc-plugin>2.8</version.javadoc-plugin>
    <version.findbugs-plugin>2.4.0-SNAPSHOT</version.findbugs-plugin>
    <version.source-plugin>2.1.2</version.source-plugin>
    <!-- compile -->
    <version.slf4j-api>1.6.3</version.slf4j-api>
    <version.guava>11.0.0</version.guava>
    <!-- provided -->
    <version.javaee_api>6.0</version.javaee_api>
    <version.servlet-api>3.0.1</version.servlet-api>
    <version.javaee-web-api>6.0</version.javaee-web-api>
    <version.cdi-api>1.0</version.cdi-api>
    <version.el-api>2.2</version.el-api>
    <version.jsf-api>2.1</version.jsf-api>
    <version.hibernate-jpa-2.0-api>1.0.0.Final</version.hibernate-jpa-2.0-api>
    <!-- test -->
    <version.logback-classic>1.0.0</version.logback-classic>
    <version.log4j>1.2.16</version.log4j>
    <version.junit>4.10</version.junit>
    <version.mockito-all>1.8.5</version.mockito-all>
    <version.unitils-core>3.1</version.unitils-core>
  </properties>

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <groupId>org.apache.maven.plugins</groupId>
        <version>${version.compiler-plugin}</version>
        <configuration>
          <source>${version.java-source}</source>
          <target>${version.java-target}</target>
          <compilerVersion>${version.java-compiler}</compilerVersion>
          <showDeprecation>false</showDeprecation>
          <showWarnings>true</showWarnings>
          <optimize>true</optimize>
          <fork>true</fork>
          <argLine>-Xmx512M</argLine>
          <executable>${JAVA_HOME}/bin/javac</executable>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-jar-plugin</artifactId>
        <groupId>org.apache.maven.plugins</groupId>
        <version>${version.jar-plugin}</version>
        <configuration>
          <archive>
            <manifestEntries>
              <Specification-Title>${project.name}</Specification-Title>
              <Specification-Version>${project.version}</Specification-Version>
              <Specification-Vendor>deephacks</Specification-Vendor>
              <Implementation-Title>${project.name}</Implementation-Title>
              <Implementation-Version>${project.version}</Implementation-Version>
              <Implementation-Vendor>deephacks</Implementation-Vendor>
              <Implementation-Vendor-Id>org.deephacks</Implementation-Vendor-Id>
              <url>http://tools4j.deephacks.org</url>
            </manifestEntries>
          </archive>
        </configuration>
      </plugin>
      <plugin>
        <!-- attach source files to the eclipse project -->
        <artifactId>maven-eclipse-plugin</artifactId>
        <groupId>org.apache.maven.plugins</groupId>
        <version>${version.eclipse-plugin}</version>
        <configuration>
          <downloadSources>true</downloadSources>
          <downloadJavadocs>true</downloadJavadocs>
          <outputDirectory>eclipse-out/target</outputDirectory>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <groupId>org.apache.maven.plugins</groupId>
        <version>${version.surefire-plugin}</version>
        <configuration>
          <redirectTestOutputToFile>true</redirectTestOutputToFile>
          <trimStackTrace>false</trimStackTrace>
          <printSummary>true</printSummary>
          <includes>
            <include>**/*TestCase.java</include>
            <include>**/*TestSuite.java</include>
            <include>**/*Test.java</include>
          </includes>
          <useFile>true</useFile>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-javadoc-plugin</artifactId>
        <groupId>org.apache.maven.plugins</groupId>
        <version>${version.javadoc-plugin}</version>
        <executions>
          <execution>
            <id>attach-javadocs</id>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
          <execution>
            <goals>
              <goal>aggregate</goal>
            </goals>
            <phase>site</phase>
          </execution>
        </executions>
        <configuration>
          <javadoc:aggregate>true</javadoc:aggregate>
<!--          <excludePackageNames>*.internal:*.test:*.examples</excludePackageNames> -->
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <executions>
          <execution>
            <id>attach-sources</id>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-war-plugin</artifactId>
        <version>${version.war-plugin}</version>
        <configuration>
          <failOnMissingWebXml>false</failOnMissingWebXml>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-gpg-plugin</artifactId>
        <version>1.1</version>
        <executions>
          <execution>
            <id>sign-artifacts</id>
            <phase>verify</phase>
            <goals>
              <goal>sign</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

  <repositories>
    <repository>
      <id>maven2</id>
      <name>Maven Central Repository</name>
      <layout>default</layout>
      <url>http://repo2.maven.org/maven2</url>
    </repository>
    <repository>
      <id>jboss-groups</id>
      <name>JBoss Group Repsitory</name>
      <layout>default</layout>
      <url>http://repository.jboss.org/nexus/content/groups/public</url>
    </repository>
    <repository>
      <id>prime-repo</id>
      <name>PrimeFaces Maven Repository</name>
      <url>http://repository.primefaces.org</url>
      <layout>default</layout>
    </repository>
    <repository>
      <id>EclipseLink Repo</id>
      <url>http://www.eclipse.org/downloads/download.php?r=1&amp;nf=1&amp;file=/rt/eclipselink/maven.repo</url>
    </repository>
    <repository>
      <id>oss.sonatype.org</id>
      <name>oss.sonatype.org</name>
      <url>https://oss.sonatype.org/content/repositories/releases/</url>
    </repository>
  </repositories>

  <dependencies>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-all</artifactId>
    </dependency>
    <dependency>
      <groupId>org.unitils</groupId>
      <artifactId>unitils-core</artifactId>
    </dependency>
  </dependencies>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${version.slf4j-api}</version>
      </dependency>
      <dependency>
        <groupId>com.googlecode.guava-osgi</groupId>
        <artifactId>guava-osgi</artifactId>
        <scope>compile</scope>
        <version>${version.guava}</version>
      </dependency>
      <dependency>
        <groupId>javax.enterprise</groupId>
        <artifactId>cdi-api</artifactId>
        <version>${version.cdi-api}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.el</groupId>
        <artifactId>el-api</artifactId>
        <version>${version.el-api}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.faces</groupId>
        <artifactId>jsf-api</artifactId>
        <version>${version.jsf-api}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>${version.javaee_api}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>${version.servlet-api}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.0-api</artifactId>
        <version>${version.hibernate-jpa-2.0-api}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>${version.logback-classic}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>${version.log4j}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${version.junit}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-all</artifactId>
        <version>${version.mockito-all}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.unitils</groupId>
        <artifactId>unitils-core</artifactId>
        <version>${version.unitils-core}</version>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <reporting>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>${version.findbugs-plugin}</version>
        <configuration>
          <findbugsXmlOutput>true</findbugsXmlOutput>
          <!-- Optional directory to put findbugs xml report -->
          <findbugsXmlOutputDirectory>target/site</findbugsXmlOutputDirectory>
        </configuration>
      </plugin>
    </plugins>
  </reporting>
</project>
