<?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 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.apache</groupId>
        <artifactId>apache</artifactId>
        <version>17</version>
        <relativePath></relativePath> <!-- prevent loading of ../pom.xml as the "parent" -->
    </parent>

    <groupId>org.apache.brooklyn</groupId>
    <artifactId>brooklyn-server</artifactId>
    <version>0.9.0</version>  <!-- BROOKLYN_VERSION -->
    <packaging>pom</packaging>

    <name>Brooklyn Server Root</name>
    <description>
        Brooklyn Server project root, serving as the ancestor POM for all projects --
        declaring versions, profiles, and the modules to build
    </description>
    <url>https://brooklyn.apache.org/</url>
    <inceptionYear>2012</inceptionYear>

    <developers>
        <!-- TODO update with PMC members and committers -->
    </developers>

    <scm>
        <connection>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-brooklyn.git</connection>
        <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-brooklyn.git</developerConnection>
        <url>https://git-wip-us.apache.org/repos/asf?p=incubator-brooklyn.git</url>
        <tag>HEAD</tag>
    </scm>

    <issueManagement>
        <system>JIRA</system>
        <url>https://issues.apache.org/jira/browse/BROOKLYN</url>
    </issueManagement>
    <ciManagement>
        <system>Jenkins</system>
        <url>https://builds.apache.org/job/incubator-brooklyn-master-build/</url>
    </ciManagement>
    <mailingLists>
        <mailingList>
            <name>Brooklyn Developer List</name>
            <subscribe>dev-subscribe@brooklyn.apache.org</subscribe>
            <unsubscribe>dev-unsubscribe@brooklyn.apache.org</unsubscribe>
            <post>dev@brooklyn.apache.org</post>
            <archive>
                http://mail-archives.apache.org/mod_mbox/brooklyn-dev/
            </archive>
        </mailingList>
    </mailingLists>

    <properties>
        <brooklyn.version>0.9.0</brooklyn.version>  <!-- BROOKLYN_VERSION -->

        <org.osgi.core.version>6.0.0</org.osgi.core.version>

        <!-- Compilation -->
        <java.version>1.7</java.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

        <!-- Dependency Configuration -->
        <jclouds.groupId>org.apache.jclouds</jclouds.groupId> <!-- JCLOUDS_GROUPID_VERSION -->

        <!-- Testing Configuration -->
        <includedTestGroups />
        <excludedTestGroups>Integration,Acceptance,Live,WIP,Broken</excludedTestGroups>
        <surefire.failIfNoSpecifiedTests>false</surefire.failIfNoSpecifiedTests>
        <coverage.target>${working.dir}</coverage.target>

        <!-- Dependency Versions -->
        <jclouds.version>1.9.2</jclouds.version> <!-- JCLOUDS_VERSION -->
        <logback.version>1.0.7</logback.version>
        <slf4j.version>1.6.6</slf4j.version>  <!-- used for java.util.logging jul-to-slf4j interception -->
        <guava.version>17.0</guava.version>
        <xstream.version>1.4.7</xstream.version>
        <!-- double-check downstream projects before changing jackson and resteasy versions -->
        <fasterxml.jackson.version>2.4.5</fasterxml.jackson.version>
        <resteasy.version>3.0.8.Final</resteasy.version>
        <jersey.version>1.19</jersey.version>
        <cxf.version>3.1.4</cxf.version>
        <httpclient.version>4.4.1</httpclient.version>
        <commons-lang3.version>3.3.2</commons-lang3.version>
        <groovy.version>2.3.7</groovy.version> <!-- Version supported by https://github.com/groovy/groovy-eclipse/wiki/Groovy-Eclipse-2.9.1-Release-Notes -->
        <jsr305.version>2.0.1</jsr305.version>
        <snakeyaml.version>1.11</snakeyaml.version>
        <swagger.version>1.5.3</swagger.version>
        <jansi.version>1.2.1</jansi.version>
        <gson.version>2.3</gson.version>
        <ivy.version>2.2.0</ivy.version>
        <mx4j.version>3.0.1</mx4j.version>
        <bouncycastle.version>1.49</bouncycastle.version>
        <sshj.version>0.8.1</sshj.version>
        <felix.framework.version>4.4.0</felix.framework.version>
        <reflections.version>0.9.9-RC1</reflections.version>
        <jetty.version>9.2.13.v20150730</jetty.version>
        <jetty-schemas.version>3.1.M0</jetty-schemas.version>
        <airline.version>0.6</airline.version>
        <mockwebserver.version>20121111</mockwebserver.version>
        <freemarker.version>2.3.22</freemarker.version>
        <commons-io.version>2.4</commons-io.version>
        <jsonPath.version>2.0.0</jsonPath.version>
        <commons-compress.version>1.4</commons-compress.version>
        <validation-api.version>1.1.0.Final</validation-api.version>
        <geronimo-jms_1.1_spec.version>1.1.1</geronimo-jms_1.1_spec.version>
        <geronimo-jta_1.1_spec.version>1.1.1</geronimo-jta_1.1_spec.version>
        <sleepycat-je.version>5.0.34</sleepycat-je.version>
        <commons-cli.version>1.2</commons-cli.version>
        <astyanax.version>3.8.0</astyanax.version>
        <jcouchdb.version>0.11.0-1</jcouchdb.version>
        <solr.version>4.7.0</solr.version>
        <jtidy.version>r8-20060801</jtidy.version>
        <opendmk_jmxremote_optional_jar.version>1.0-b01-ea</opendmk_jmxremote_optional_jar.version>
        <jopt.version>4.3</jopt.version>
        <concurrentlinkedhashmap.version>1.0_jdk5</concurrentlinkedhashmap.version>
        <javax-servlet.version>3.1.0</javax-servlet.version>
        <javax-servlet-jsp.version>2.0</javax-servlet-jsp.version>
        <jcommander.version>1.27</jcommander.version>
        <xml-apis.version>1.0.b2</xml-apis.version>
        <jsr250-api.version>1.0</jsr250-api.version>
        <guice.version>3.0</guice.version>
        <javax-inject.version>1</javax-inject.version>
        <aopalliance.version>1.0</aopalliance.version>
        <commons-configuration.version>1.7</commons-configuration.version>
        <commons-lang.version>2.4</commons-lang.version>
        <hamcrest.version>1.1</hamcrest.version>
        <jsr311-api.version>1.1.1</jsr311-api.version>
        <jax-rs-api.version>2.0.1</jax-rs-api.version>
        <maxmind.version>0.8.1</maxmind.version>
        <jna.version>4.0.0</jna.version>
        <winrm4j.version>0.3.5</winrm4j.version>
        <!-- Transitive dependencies, declared explicitly to avoid version mismatch -->
        <clojure.version>1.4.0</clojure.version>
        <zookeeper.version>3.3.4</zookeeper.version>
        <ring-core.version>1.1.5</ring-core.version>
        <clj-time.version>0.4.1</clj-time.version>
        <commons-codec.version>1.9</commons-codec.version>
        <log4j.version>1.2.17</log4j.version>
        <commons-logging.version>1.2</commons-logging.version>
        <jline.version>2.12</jline.version>
        <jsonSmart.version>2.1.1</jsonSmart.version>
        <minidev.asm.version>1.0.2</minidev.asm.version>
        <commons-beanutils.version>1.9.1</commons-beanutils.version>
        <commons-collections.version>3.2.1</commons-collections.version>

        <!-- Testing Dependency Versions -->
        <testng.version>6.8.8</testng.version>
        <mockito.version>1.10.8</mockito.version>
        <assertj.version>2.2.0</assertj.version> <!-- v 2.2.0 is being used as v 3.20 introduces Java8 dependencies-->
        <cobertura.plugin.version>2.7</cobertura.plugin.version>
        <surefire.version>2.18.1</surefire.version>
        <plantuml.version>6121</plantuml.version>
        <ant.version>1.8.4</ant.version>

        <!-- Build Tool Versions -->
        <maven-war-plugin.version>2.4</maven-war-plugin.version>
        <maven-dependency-plugin.version>2.8</maven-dependency-plugin.version>
        <maven-replacer-plugin.version>1.5.2</maven-replacer-plugin.version>
        <nodejs-maven-plugin.version>1.0.3</nodejs-maven-plugin.version>
        <nodejs-maven-binaries.version>0.10.25</nodejs-maven-binaries.version>
        <jasmine-maven-plugin.version>1.3.1.5</jasmine-maven-plugin.version>
        <requirejs-maven-plugin.version>2.0.0</requirejs-maven-plugin.version>
        <maven-antrun-plugin.version>1.7</maven-antrun-plugin.version>

    </properties>

    <modules>
        <module>parent</module>

        <module>api</module>
        <module>camp</module>
        <module>core</module>
        <module>policy</module>

        <module>locations/jclouds</module>

        <module>software/base</module>
        <module>software/winrm</module>

        <module>storage/hazelcast</module>

        <module>server-cli</module>
        <module>launcher-common</module>
        <module>launcher</module>
        <module>logging/logback-includes</module>
        <module>logging/logback-xml</module>
        <module>rest/rest-api</module>
        <module>rest/rest-client</module>
        <module>rest/rest-resources</module>
        <module>rest/rest-server</module>
        <module>rest/rest-server-jersey</module>
        <module>test-framework</module>
        <module>test-support</module>


        <module>utils/common</module>
        <module>utils/groovy</module>
        <module>utils/jmx/jmxmp-ssl-agent</module>
        <module>utils/jmx/jmxrmi-agent</module>
        <module>utils/test-support</module>
        <module>utils/rest-swagger</module>

        <module>karaf</module>

        <module>utils/rt-felix</module>

    </modules>

</project>
