<?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</groupId>
  <artifactId>confit-root</artifactId>
  <name>confit</name>
  <packaging>pom</packaging>
  <version>0.16.0</version>
  <description>Configuration Management for Java applications.</description>
  <url>http://confit.deephacks.org</url>
  <inceptionYear>2013</inceptionYear>
  <mailingLists>
    <mailingList>
      <name>Development List</name>
      <post>confit-dev@googlegroups.com</post>
    </mailingList>
    <mailingList>
      <name>User List</name>
      <post>confit-user@googlegroups.com</post>
    </mailingList>
  </mailingLists>
  <issueManagement>
    <system>github</system>
    <url>https://github.com/deephacks/confit/issues</url>
  </issueManagement>
  <scm>
    <connection>scm:git:git@github.com:deephacks/confit.git</connection>
    <developerConnection>scm:git:git@github.com:deephacks/confit.git</developerConnection>
    <url>scm:git:git@github.com/deephacks/confit</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>

  <properties>
    <version.confit>0.16.0</version.confit>
    <!-- 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>
    <!-- provided -->
    <version.javaee-web-api>6.0</version.javaee-web-api>

    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>

  </properties>

  <modules>
    <module>core</module>
    <module>api-model</module>
    <module>api-runtime</module>
    <module>api-admin</module>
    <module>api-provider</module>
    <module>provider-hbase</module>
    <module>provider-hbase-filter</module>
    <module>provider-jpa20</module>
    <module>provider-yaml</module>
    <module>provider-cached</module>
    <module>admin-jaxrs</module>
    <module>tck</module>
    <module>perf</module>
    <module>examples</module>
    <module>docbkx</module>
  </modules>


  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <groupId>org.apache.maven.plugins</groupId>
        <version>${version.compiler-plugin}</version>
        <configuration>
          <showDeprecation>false</showDeprecation>
          <showWarnings>true</showWarnings>
          <optimize>true</optimize>
          <fork>true</fork>
          <argLine>-Xmx512M</argLine>
        </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://confit.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>
          <trimStackTrace>false</trimStackTrace>
          <printSummary>true</printSummary>
          <useFile>true</useFile>
          <redirectTestOutputToFile>true</redirectTestOutputToFile>
          <includes>
            <include>**/*TestCase.java</include>
            <include>**/*TestSuite.java</include>
            <include>**/*Test.java</include>
          </includes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-source-plugin</artifactId>
        <version>${version.source-plugin}</version>
        <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>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <descriptors>
            <descriptor>assembly.xml</descriptor>
          </descriptors>
          <tarLongFileMode>gnu</tarLongFileMode>
        </configuration>
      </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://download.eclipse.org/rt/eclipselink/maven.repo</url>
    </repository>
    <repository>
      <id>conjars.org</id>
      <url>http://conjars.org/repo</url>
    </repository>
  </repositories>

  <dependencies>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>14.0.1</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.googlecode.cqengine</groupId>
      <artifactId>cqengine</artifactId>
      <version>1.0.3</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.10</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-all</artifactId>
      <version>1.8.5</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.unitils</groupId>
      <artifactId>unitils-core</artifactId>
      <version>3.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-api-model</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-api-runtime</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-api-provider</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-api-admin</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-api-admin</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-admin-jaxrs</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-core</artifactId>
        <version>${version.confit}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-core</artifactId>
        <version>${version.confit}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-jpa20</artifactId>
        <version>${version.confit}</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-jpa20</artifactId>
        <version>${version.confit}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-osgi</artifactId>
        <version>${version.confit}</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-yaml</artifactId>
        <version>${version.confit}</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-hbase</artifactId>
        <version>${version.confit}</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-hbase-filter</artifactId>
        <version>${version.confit}</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-hbase</artifactId>
        <version>${version.confit}</version>
        <type>test-jar</type>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-provider-cached</artifactId>
        <version>${version.confit}</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.deephacks</groupId>
        <artifactId>confit-tck</artifactId>
        <version>${version.confit}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>14.0.1</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>javax.enterprise</groupId>
        <artifactId>cdi-api</artifactId>
        <version>1.1</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>6.0</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>5.1.18</version>
        <scope>compile</scope>
      </dependency>
      <dependency>
        <groupId>org.hibernate.javax.persistence</groupId>
        <artifactId>hibernate-jpa-2.0-api</artifactId>
        <version>1.0.0.Final</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-entitymanager</artifactId>
        <version>4.0.0.Final</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>javax.validation</groupId>
        <artifactId>validation-api</artifactId>
        <version>1.1.0.Final</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.hibernate</groupId>
        <artifactId>hibernate-validator</artifactId>
        <version>5.0.0.Final</version>
        <scope>provided</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <profiles>
    <profile>
      <id>sign-artifacts</id>
      <modules>
        <module>dist</module>
      </modules>
      <build>
        <plugins>
          <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-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>
    </profile>
  </profiles>
  <distributionManagement>
    <repository>
      <id>sonatype-nexus-staging</id>
      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
    </repository>
  </distributionManagement>
</project>
