<?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">

  <parent>
    <groupId>net.dempsy</groupId>
    <artifactId>dempsy-commons-settings</artifactId>
    <version>2.4.0</version>
  </parent>

  <modelVersion>4.0.0</modelVersion>

  <artifactId>dempsy-framework.parent</artifactId>
  <version>0.16.0</version>
  <packaging>pom</packaging>
  <name>Distributed Elastic Message Processing - Master Build</name>

  <licenses>
    <license>
      <name>Apache 2</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <scm>
    <connection>scm:git:git@github.com:Dempsy/Dempsy.git</connection>
    <developerConnection>scm:git:git@github.com:Dempsy/Dempsy.git</developerConnection>
    <url>git@github.com:Dempsy/Dempsy.git</url>
  </scm>

  <properties>
    <dempsy-commons-bom.version>2.4.0</dempsy-commons-bom.version>
    <spring.version>5.3.20</spring.version>
    <metrics.version>4.1.1</metrics.version>
    <metrics-ganglia.version>3.2.6</metrics-ganglia.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <quartz.version>2.3.2</quartz.version>
    <slf4j.version>1.7.30</slf4j.version>
    <javatuples.version>1.2</javatuples.version>
  </properties>

  <modules>
    <module>dempsy-framework.api</module>
    <module>dempsy-framework.core</module>
    <module>dempsy-framework.impl</module>
  </modules>

  <!--  Default dependencies that all Dempsy modules use -->
  <dependencies>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <!-- Put in all of the dependencies here WITHOUT VERSIONS.
       The versions should be defined in the parent "product" pom -->
  <dependencyManagement>
    <dependencies>
      <!-- Project -->
      <dependency>
        <groupId>net.dempsy</groupId>
        <artifactId>dempsy-framework.api</artifactId>
        <version>${project.version}</version>
      </dependency> 
      <dependency>
        <groupId>net.dempsy</groupId>
        <artifactId>dempsy-framework.core</artifactId>
        <version>${project.version}</version>
      </dependency>
    
      <!-- Commons -->
      <dependency>
        <groupId>net.dempsy</groupId>
        <artifactId>dempsy-commons-bom</artifactId>
        <version>${dempsy-commons-bom.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <!-- Third party -->
       <dependency>
        <groupId>org.javatuples</groupId>
        <artifactId>javatuples</artifactId>
        <version>${javatuples.version}</version>
       </dependency>
       <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.quartz-scheduler</groupId>
        <artifactId>quartz</artifactId>
        <version>${quartz.version}</version>
      </dependency> 
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>${slf4j.version}</version>
      </dependency>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
      </dependency>
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.9.0</version>
      </dependency>
      <dependency>
        <groupId>org.apache.zookeeper</groupId>
        <artifactId>zookeeper</artifactId>
        <version>3.5.5</version>
      </dependency>

      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-core</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-context</artifactId>
        <version>${spring.version}</version>
      </dependency>
      <dependency>
        <groupId>io.dropwizard.metrics</groupId>
        <artifactId>metrics-core</artifactId>
        <version>${metrics.version}</version>
      </dependency>
      <dependency>
        <groupId>io.dropwizard.metrics</groupId>
        <artifactId>metrics-graphite</artifactId>
        <version>${metrics.version}</version>
      </dependency>
      <dependency>
        <groupId>io.dropwizard.metrics</groupId>
        <artifactId>metrics-ganglia</artifactId>
        <version>${metrics-ganglia.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.1.0</version>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <aggregate>true</aggregate>
          <additionalparam>-Xdoclint:none</additionalparam>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>
