<?xml version="1.0" encoding="UTF-8"?>
<!--
 ~  Copyright 2018 Red Hat, Inc.
 ~
 ~  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>io.smallrye</groupId>
    <artifactId>smallrye-parent</artifactId>
    <version>2</version>
  </parent>

  <artifactId>smallrye-rest-client-parent</artifactId>
  <version>1.2.2</version>

  <packaging>pom</packaging>
  <name>SmallRye: MicroProfile Rest Client - Parent</name>

  <properties>
    <version.smallrye.config>1.3.5</version.smallrye.config>
    <version.smallrye.faulttolerance>2.0.1</version.smallrye.faulttolerance>
    <version.smallrye.metrics>1.1.3</version.smallrye.metrics>
    <version.microprofile.restclient>1.2.1</version.microprofile.restclient>
    <version.microprofile.config>1.3</version.microprofile.config>
    <version.microprofile.faulttolerance>2.0</version.microprofile.faulttolerance>
    <version.microprofile.metrics>1.1.1</version.microprofile.metrics>
    <version.resteasy>3.6.3.Final</version.resteasy>
    <version.cdi>1.2</version.cdi>
    <version.weld>2.4.8.Final</version.weld>
    <version.arquillian>1.4.1.Final</version.arquillian>
    <version.shrinkwrap.resolvers>3.1.3</version.shrinkwrap.resolvers>
    <version.arquillian.wildfly>2.1.1.Final</version.arquillian.wildfly>
    <version.wildfly>13.0.0.Final</version.wildfly>
    <version.jboss.servlet>1.0.2.Final</version.jboss.servlet>
    <version.junit>4.12</version.junit>
    <!-- Do not upgrade until https://issues.jboss.org/browse/ARQ-2144 is
      fixed -->
    <version.testng>6.14.3</version.testng>
    <version.testng.jcommander>1.74</version.testng.jcommander>
  </properties>

  <scm>
    <connection>scm:git:git@github.com:smallrye/smallrye-rest-client</connection>
    <developerConnection>scm:git:git@github.com:smallrye/smallrye-rest-client</developerConnection>
    <url>https://github.com/smallrye/smallrye-rest-client/</url>
    <tag>1.2.2</tag>
  </scm>

  <modules>
    <module>docs</module>
    <module>implementation</module>
    <module>testsuite</module>
  </modules>

  <dependencyManagement>
    <dependencies>

      <!-- MicroProfile APIs -->
      <dependency>
        <groupId>org.eclipse.microprofile.rest.client</groupId>
        <artifactId>microprofile-rest-client-api</artifactId>
        <version>${version.microprofile.restclient}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.microprofile.rest.client</groupId>
        <artifactId>microprofile-rest-client-tck</artifactId>
        <version>${version.microprofile.restclient}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.eclipse.microprofile.config</groupId>
        <artifactId>microprofile-config-api</artifactId>
        <version>${version.microprofile.config}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.microprofile.metrics</groupId>
        <artifactId>microprofile-metrics-api</artifactId>
        <version>${version.microprofile.metrics}</version>
      </dependency>

      <dependency>
        <groupId>org.eclipse.microprofile.fault-tolerance</groupId>
        <artifactId>microprofile-fault-tolerance-api</artifactId>
        <version>${version.microprofile.faulttolerance}</version>
      </dependency>

      <!-- SmallRye projects -->
      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-rest-client</artifactId>
        <version>${project.version}</version>
      </dependency>

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

      <dependency>
        <groupId>io.smallrye</groupId>
        <artifactId>smallrye-fault-tolerance</artifactId>
        <version>${version.smallrye.faulttolerance}</version>
      </dependency>

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

      <!-- Impl. dependencies -->
      <dependency>
        <groupId>javax.enterprise</groupId>
        <artifactId>cdi-api</artifactId>
        <version>${version.cdi}</version>
        <scope>provided</scope>
      </dependency>

      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
        <version>${version.resteasy}</version>
      </dependency>

      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-json-p-provider</artifactId>
        <version>${version.resteasy}</version>
      </dependency>

      <!-- Test dependencies -->

      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${version.junit}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>${version.testng}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.jboss.spec.javax.servlet</groupId>
        <artifactId>jboss-servlet-api_3.1_spec</artifactId>
        <version>${version.jboss.servlet}</version>
      </dependency>

      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-cdi</artifactId>
        <version>${version.resteasy}</version>
      </dependency>

      <!--Can be removed once TestNG dependency contains JCommander 1.74
        or newer -->
      <dependency>
        <groupId>com.beust</groupId>
        <artifactId>jcommander</artifactId>
        <version>${version.testng.jcommander}</version>
      </dependency>

      <dependency>
        <groupId>org.jboss.arquillian</groupId>
        <artifactId>arquillian-bom</artifactId>
        <version>${version.arquillian}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <dependency>
        <groupId>org.wildfly.arquillian</groupId>
        <artifactId>wildfly-arquillian-container-managed</artifactId>
        <version>${version.arquillian.wildfly}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.jboss.weld.servlet</groupId>
        <artifactId>weld-servlet-core</artifactId>
        <version>${version.weld}</version>
        <scope>test</scope>
      </dependency>

    </dependencies>
  </dependencyManagement>

  <!-- This repository can be removed once TestNG 6.14.3 or newer and JCommander
    1.74 or newer appear in Maven Central -->
  <!-- For some reason they keep most releases on bintray and we need these
    versions for JDK 10 -->
  <repositories>
    <repository>
      <id>jcenter</id>
      <name>jcenter</name>
      <url>http://jcenter.bintray.com</url>
    </repository>
  </repositories>

</project>
