<?xml version="1.0" encoding="UTF-8"?>
<!--

    Copyright 2015 Red Hat, Inc. and/or its affiliates
    and other contributors as indicated by the @author tags.

    Licensed 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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.hawkular</groupId>
    <artifactId>hawkular-parent</artifactId>
    <version>18</version>
  </parent>

  <groupId>org.hawkular.btm</groupId>
  <artifactId>hawkular-btm</artifactId>
  <version>0.2.0.Final</version>
  <packaging>pom</packaging>

  <name>Hawkular BTM</name>
  <description>Hawkular Business Transaction Management</description>
  <url>https://github.com/hawkular/hawkular-btm</url>
  <inceptionYear>2015</inceptionYear>
  <organization>
    <name>Red Hat, Inc.</name>
    <url>http://redhat.com/</url>
  </organization>
  <licenses>
    <license>
      <name>Apache License, Version 2.0</name>
      <distribution>repo</distribution>
      <url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
    </license>
  </licenses>

  <mailingLists>
    <mailingList>
      <name>Hawkular Developer List</name>
      <subscribe>https://lists.jboss.org/mailman/listinfo/hawkular-dev</subscribe>
      <unsubscribe>https://lists.jboss.org/mailman/listinfo/hawkular-dev</unsubscribe>
      <archive>http://lists.jboss.org/pipermail/hawkular-dev</archive>
    </mailingList>
  </mailingLists>

  <modules>
    <module>api</module>
    <module>client/api</module>
    <module>client/admin-service-rest-client</module>
    <module>client/btxn-collector</module>
    <module>client/btxn-instrumentation</module>
    <module>client/btxn-service-rest-client</module>
    <module>client/client-manager</module>
    <module>client/client-rest</module>
    <module>processors/btxn-builder</module>
    <module>processors/fault-detector</module>
    <module>processors/inventory-enricher</module>
    <module>processors/metrics-deriver</module>
    <module>server/api</module>
    <module>server/rest</module>
    <module>services/admin-service-inmemory</module>
    <module>services/btxn-service-cass-es</module>
    <module>services/btxn-service-inmemory</module>
    <module>dist</module>
  </modules>

  <scm>
    <connection>scm:git:git://github.com/hawkular/hawkular-btm.git</connection>
    <developerConnection>scm:git:ssh://git@github.com/hawkular/hawkular-btm.git</developerConnection>
    <url>https://github.com/hawkular/hawkular-btm</url>
    <tag>0.2.0.Final</tag>
  </scm>
  <issueManagement>
    <url>https://issues.jboss.org/browse/HWKBTM</url>
    <system>jira</system>
  </issueManagement>

  <properties>
    <plugin.version.org.apache.maven.plugins>1.2</plugin.version.org.apache.maven.plugins>

    <version.com.fasterxml.jackson.core>2.4.1</version.com.fasterxml.jackson.core>
    <version.commons-io>2.1</version.commons-io>
    <version.io.swagger>1.5.0</version.io.swagger>
    <version.io.undertow>1.1.0.Final</version.io.undertow>
    <version.io.vertx>3.0.0</version.io.vertx>
    <version.javaee.spec>7.0</version.javaee.spec>
    <version.javax.enterprise.concurrent>1.0</version.javax.enterprise.concurrent>
    <version.org.apache.activemq>5.11.1</version.org.apache.activemq>
    <version.org.apache.camel>2.15.2</version.org.apache.camel>
    <version.org.hawkular>1.0.0.Alpha1</version.org.hawkular>
    <version.org.hawkular.accounts>1.0.6</version.org.hawkular.accounts>
    <version.org.jboss.byteman>3.0.1</version.org.jboss.byteman>
    <version.org.slf4j>1.7.5</version.org.slf4j> <!-- Align with version used by camel -->
  </properties>

  <dependencyManagement>
    <dependencies>

      <!-- BTM API -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-api</artifactId>
        <version>${project.version}</version>
      </dependency>

      <!-- BTM Client -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-client-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-admin-service-rest-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-btxn-collector</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-btxn-instrumentation</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-btxn-service-rest-client</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-client-manager</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-client-rest</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-config-manager-rest-client</artifactId>
        <version>${project.version}</version>
      </dependency>

      <!-- BTM Processors -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-btxn-builder</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-fault-detector</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-inventory-enricher</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-metrics-deriver</artifactId>
        <version>${project.version}</version>
      </dependency>

      <!-- BTM Server -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-server-api</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-server-rest</artifactId>
        <type>war</type>
        <version>${project.version}</version>
      </dependency>

      <!-- BTM Services -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-admin-service-inmemory</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-btxn-service-cass-es</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-btxn-service-inmemory</artifactId>
        <version>${project.version}</version>
      </dependency>

      <!-- BTM Tests -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-tests-common</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-test-server</artifactId>
        <version>${project.version}</version>
      </dependency>

      <!-- BTM Services -->
      <dependency>
        <groupId>org.hawkular.btm</groupId>
        <artifactId>hawkular-btm-dist</artifactId>
        <version>${project.version}</version>
        <type>zip</type>
      </dependency>

      <!-- Other dependencies -->
      <dependency>
        <groupId>org.hawkular.accounts</groupId>
        <artifactId>hawkular-accounts-api</artifactId>
        <version>${version.org.hawkular.accounts}</version>
      </dependency>
      <dependency>
        <groupId>org.hawkular.accounts</groupId>
        <artifactId>hawkular-accounts-distribution</artifactId>
        <version>${version.org.hawkular.accounts}</version>
        <type>zip</type>
      </dependency>

      <dependency>
        <groupId>org.hawkular</groupId>
        <artifactId>hawkular-dist</artifactId>
        <version>${version.org.hawkular}</version>
        <type>zip</type>
      </dependency>

      <dependency>
        <groupId>org.jboss.byteman</groupId>
        <artifactId>byteman</artifactId>
        <version>${version.org.jboss.byteman}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-core</artifactId>
        <version>${version.org.apache.camel}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-http</artifactId>
        <version>${version.org.apache.camel}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-http4</artifactId>
        <version>${version.org.apache.camel}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-jms</artifactId>
        <version>${version.org.apache.camel}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-restlet</artifactId>
        <version>${version.org.apache.camel}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-stream</artifactId>
        <version>${version.org.apache.camel}</version>
      </dependency>

      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-core</artifactId>
        <version>${version.com.fasterxml.jackson.core}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>${version.com.fasterxml.jackson.core}</version>
      </dependency>
      <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-annotations</artifactId>
        <version>${version.com.fasterxml.jackson.core}</version>
      </dependency>

      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>${version.commons-io}</version>
      </dependency>

      <!-- ActiveMQ dependencies -->
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-broker</artifactId>
        <version>${version.org.apache.activemq}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-client</artifactId>
        <version>${version.org.apache.activemq}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.activemq</groupId>
        <artifactId>activemq-camel</artifactId>
        <version>${version.org.apache.activemq}</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-jdk14</artifactId>
        <version>${version.org.slf4j}</version>
      </dependency>

      <dependency>
        <groupId>io.undertow</groupId>
        <artifactId>undertow-core</artifactId>
        <version>${version.io.undertow}</version>
      </dependency>

      <dependency>
        <groupId>javax</groupId>
        <artifactId>javaee-api</artifactId>
        <version>${version.javaee.spec}</version>
      </dependency>
      <dependency>
        <groupId>javax.enterprise.concurrent</groupId>
        <artifactId>javax.enterprise.concurrent-api</artifactId>
        <version>${version.javax.enterprise.concurrent}</version>
      </dependency>

      <!-- Vertx dependences -->
      <dependency>
        <groupId>io.vertx</groupId>
        <artifactId>vertx-core</artifactId>
        <version>${version.io.vertx}</version>
      </dependency>

      <!-- REST Doc dependencies -->
      <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-annotations</artifactId>
        <version>${version.io.swagger}</version>
      </dependency>
      <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-core</artifactId>
        <version>${version.io.swagger}</version>
      </dependency>
      <dependency>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-jaxrs</artifactId>
        <version>${version.io.swagger}</version>
      </dependency>

      <!-- Test dependencies -->
      <dependency>
        <groupId>org.apache.camel</groupId>
        <artifactId>camel-example-servlet-rest-tomcat</artifactId>
        <version>${version.org.apache.camel}</version>
        <type>war</type>
        <scope>test</scope>
      </dependency>

    </dependencies>
  </dependencyManagement>

  <build>
    <plugins>
      <plugin>
        <groupId>com.mycila</groupId>
        <artifactId>license-maven-plugin</artifactId>
        <configuration>
          <excludes combine.children="append">
            <exclude>**/*.data</exclude>
            <exclude>**/*.btm</exclude>
            <exclude>**/*.sh</exclude>
          </excludes>
        </configuration>
      </plugin>
    </plugins>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.wildfly.plugins</groupId>
          <artifactId>wildfly-maven-plugin</artifactId>
          <version>1.1.0.Alpha2</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

  <profiles>
    <profile>
      <id>tests</id>
      <modules>
        <module>tests/common</module>
        <module>tests/client</module>
        <module>tests/client-java</module>
        <module>tests/client-wildfly</module>
        <module>tests/server-wildfly</module>
        <module>tests/test-server</module>
      </modules>
    </profile>
    <profile>
      <id>vertx</id>
      <modules>
        <module>tests/client-vertx</module>
      </modules>
    </profile>
  </profiles>

</project>
