<?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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.activiti.cloud</groupId>
    <artifactId>activiti-cloud-build-parent</artifactId>
    <version>0.0.1-PR-1515-SNAPSHOT</version>
    <relativePath>../activiti-cloud-build</relativePath>
  </parent>
  <artifactId>activiti-cloud-service-common-parent</artifactId>
  <packaging>pom</packaging>
  <name>Activiti Cloud :: Service Common Parent</name>
  <modules>
    <module>activiti-cloud-service-common-dependencies</module>
    <module>activiti-cloud-services-test</module>
    <module>activiti-cloud-services-test-containers</module>
    <module>activiti-cloud-services-test-security</module>
    <module>activiti-cloud-services-monitoring</module>
    <module>activiti-cloud-services-tracing</module>
    <module>activiti-cloud-services-logging</module>
    <module>activiti-cloud-services-metadata</module>
    <module>activiti-cloud-services-dbp-rest</module>
    <module>activiti-cloud-services-common-security-keycloak</module>
    <module>activiti-cloud-services-common-identity-keycloak</module>
    <module>activiti-cloud-services-auditable</module>
    <module>activiti-cloud-services-common-util</module>
    <module>activiti-cloud-services-common-security</module>
    <module>activiti-cloud-service-common-config</module>
    <module>activiti-cloud-services-swagger</module>
    <module>activiti-cloud-service-error-handlers</module>
    <module>activiti-cloud-service-common-liquibase</module>
    <module>activiti-cloud-service-messaging-config</module>
    <module>activiti-cloud-service-messaging-starter</module>
  </modules>
  <properties>
    <activiti.version>8.7.0-alpha.18</activiti.version>
    <commons-beanutils.version>1.9.4</commons-beanutils.version>
    <commons-configuration.version>1.10</commons-configuration.version>
    <commons-lang.version>2.6</commons-lang.version>
    <java-semver.version>0.9.0</java-semver.version>
    <resteasy.version>4.7.5.Final</resteasy.version>
    <logstash.version>7.0.1</logstash.version>
    <springdoc.version>2.1.0</springdoc.version>
    <swagger.version>2.2.9</swagger.version>
    <xstream.version>1.4.20</xstream.version>
    <json-unit.version>2.36.0</json-unit.version>
    <java-jwt.version>4.4.0</java-jwt.version>
    <!-- override resteasy vulnerable 0.8.3 version of org.apache.james dependencies -->
    <james.apache-mime4j.version>0.8.9</james.apache-mime4j.version>
    <batik.version>1.17</batik.version>
    <commons-fileupload.version>1.5</commons-fileupload.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.activiti.cloud</groupId>
        <artifactId>activiti-cloud-build-dependencies-parent</artifactId>
        <version>${project.version}</version>
        <scope>import</scope>
        <type>pom</type>
      </dependency>
      <dependency>
        <groupId>org.activiti.cloud</groupId>
        <artifactId>activiti-cloud-api-dependencies</artifactId>
        <version>${project.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <dependency>
        <groupId>org.activiti</groupId>
        <artifactId>activiti-core-common-dependencies</artifactId>
        <version>${activiti.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- fix for https://github.com/spring-cloud/spring-cloud-netflix/issues/2779 -->
      <dependency>
        <groupId>com.thoughtworks.xstream</groupId>
        <artifactId>xstream</artifactId>
        <version>${xstream.version}</version>
      </dependency>
      <!-- avoid commons-logging imported by Spring Contract and banned by Maven enforcer -->
      <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>${commons-beanutils.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- avoid older commons dependencies used by Eureka being available for compilation -->
      <dependency>
        <groupId>commons-configuration</groupId>
        <artifactId>commons-configuration</artifactId>
        <version>${commons-configuration.version}</version>
        <exclusions>
          <exclusion>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
          </exclusion>
        </exclusions>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>commons-lang</groupId>
        <artifactId>commons-lang</artifactId>
        <version>${commons-lang.version}</version>
        <scope>runtime</scope>
      </dependency>
      <dependency>
        <groupId>org.springdoc</groupId>
        <artifactId>springdoc-openapi-starter-webmvc-api</artifactId>
        <version>${springdoc.version}</version>
      </dependency>
      <dependency>
        <groupId>org.springdoc</groupId>
        <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId>
        <version>${springdoc.version}</version>
      </dependency>
      <dependency>
        <groupId>io.swagger.core.v3</groupId>
        <artifactId>swagger-annotations-jakarta</artifactId>
        <version>${swagger.version}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-bom</artifactId>
        <version>${resteasy.version}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>
      <!-- override resteasy vulnerable 0.8.3 version of org.apache.james dependencies -->
      <dependency>
        <groupId>org.apache.james</groupId>
        <artifactId>apache-mime4j-dom</artifactId>
        <version>${james.apache-mime4j.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.james</groupId>
        <artifactId>apache-mime4j-storage</artifactId>
        <version>${james.apache-mime4j.version}</version>
      </dependency>

      <dependency>
        <groupId>com.github.zafarkhaja</groupId>
        <artifactId>java-semver</artifactId>
        <version>${java-semver.version}</version>
      </dependency>
      <dependency>
        <groupId>net.logstash.logback</groupId>
        <artifactId>logstash-logback-encoder</artifactId>
        <version>${logstash.version}</version>
      </dependency>
      <dependency>
        <groupId>net.javacrumbs.json-unit</groupId>
        <artifactId>json-unit-fluent</artifactId>
        <version>${json-unit.version}</version>
      </dependency>
      <dependency>
        <groupId>net.javacrumbs.json-unit</groupId>
        <artifactId>json-unit-assertj</artifactId>
        <version>${json-unit.version}</version>
      </dependency>
      <dependency>
        <groupId>com.auth0</groupId>
        <artifactId>java-jwt</artifactId>
        <version>${java-jwt.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <!-- Activiti build parent marker dependency for dependency convergence tests -->
  <dependencies>
    <dependency>
      <groupId>org.activiti.cloud</groupId>
      <artifactId>activiti-cloud-build-parent</artifactId>
      <version>${project.version}</version>
      <type>pom</type>
    </dependency>
    <dependency>
      <groupId>org.activiti.cloud</groupId>
      <artifactId>activiti-cloud-api-dependencies</artifactId>
      <version>${project.version}</version>
      <type>pom</type>
    </dependency>
    <dependency>
      <groupId>org.activiti</groupId>
      <artifactId>activiti-core-common-dependencies</artifactId>
      <version>${activiti.version}</version>
      <type>pom</type>
    </dependency>
  </dependencies>
</project>
