<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2015 JBoss, by 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/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.uberfire</groupId>
    <artifactId>uberfire-extensions</artifactId>
    <version>0.9.0.Final</version>
  </parent>

  <artifactId>uberfire-extensions-deps</artifactId>
  <packaging>pom</packaging>

  <name>Uberfire Extensions Dependencies</name>
  <description>
    Declares all dependency versions in dependencyManagement.
    All modules extend this parent, except for the BOMs (which are used here).
  </description>

  <properties>
    <version.org.jboss.xnio>3.2.0.Final</version.org.jboss.xnio>
    <version.org.uberfire>${project.version}</version.org.uberfire>
    <version.com.ahome-it.lienzo-core>2.0.192-RC1</version.com.ahome-it.lienzo-core>
    <!-- Uberfire Security Management. -->
    <version.org.jboss.keycloak>1.4.0.Final</version.org.jboss.keycloak>
    <version.org.jboss.resteasy.client>3.0.9.Final</version.org.jboss.resteasy.client>
    <version.org.apache.tomcat>7.0.61</version.org.apache.tomcat>
    <version.org.jboss.wildfly>8.2.0.Final</version.org.jboss.wildfly>
    <version.org.jboss.wildfly.core>2.1.0.Final</version.org.jboss.wildfly.core>
  </properties>

  <dependencyManagement>
    <dependencies>

      <!-- Uberfire  -->
      <dependency>
        <groupId>org.uberfire</groupId>
        <artifactId>uberfire-parent-with-dependencies</artifactId>
        <version>${version.org.uberfire}</version>
        <type>pom</type>
        <scope>import</scope>
      </dependency>

      <!-- Uberfire extensions -->
      <dependency>
        <groupId>org.uberfire</groupId>
        <artifactId>uberfire-extensions-bom</artifactId>
        <type>pom</type>
        <version>${project.version}</version>
        <scope>import</scope>
      </dependency>

      <!-- Override needed by Errai Embedded WildFly -->
      <dependency>
        <groupId>org.jboss.xnio</groupId>
        <artifactId>xnio-api</artifactId>
        <version>${version.org.jboss.xnio}</version>
      </dependency>
      <dependency>
        <groupId>org.jboss.xnio</groupId>
        <artifactId>xnio-nio</artifactId>
        <version>${version.org.jboss.xnio}</version>
      </dependency>

      <!-- Lienzo -->
      <dependency>
        <groupId>com.ahome-it</groupId>
        <artifactId>lienzo-core</artifactId>
        <version>${version.com.ahome-it.lienzo-core}</version>
      </dependency>

      <!-- Uberfire Security Management - KeyCloak. -->
      <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-core</artifactId>
        <version>${version.org.jboss.keycloak}</version>
      </dependency>

      <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-model-api</artifactId>
        <version>${version.org.jboss.keycloak}</version>
      </dependency>

      <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-adapter-core</artifactId>
        <version>${version.org.jboss.keycloak}</version>
      </dependency>

      <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-account-api</artifactId>
        <version>${version.org.jboss.keycloak}</version>
      </dependency>

      <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-events-api</artifactId>
        <version>${version.org.jboss.keycloak}</version>
      </dependency>

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

      <!-- Required JAXRS API v3 by Keycloak admin client. 
          This dependency is declared as optional in 'uberfire-security-management-keycloak' module, 
          so not transitively added if module is not used.  
      -->
      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>jaxrs-api</artifactId>
        <version>${version.org.jboss.resteasy.client}</version>
      </dependency>

      <dependency>
        <groupId>org.jboss.resteasy</groupId>
        <artifactId>resteasy-client</artifactId>
        <version>${version.org.jboss.resteasy.client}</version>
      </dependency>
      
      <!-- Uberfire Security Management - EAP 6 / WildFly 8. -->
      <dependency>
        <groupId>org.wildfly</groupId>
        <artifactId>wildfly-controller-client</artifactId>
        <version>${version.org.jboss.wildfly}</version>
      </dependency>
      <dependency>
        <groupId>org.wildfly</groupId>
        <artifactId>wildfly-domain-management</artifactId>
        <version>${version.org.jboss.wildfly}</version>
      </dependency>

      <!-- Uberfire Security Management - EAP 7 / WildFly 10. -->
      <dependency>
        <groupId>org.wildfly.core</groupId>
        <artifactId>wildfly-controller-client</artifactId>
        <version>${version.org.jboss.wildfly.core}</version>
      </dependency>
      <dependency>
        <groupId>org.wildfly.core</groupId>
        <artifactId>wildfly-domain-management</artifactId>
        <version>${version.org.jboss.wildfly.core}</version>
      </dependency>

      <!-- Uberfire Security Management - Tomcat. -->
      <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-catalina</artifactId>
        <version>${version.org.apache.tomcat}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-coyote</artifactId>
        <version>${version.org.apache.tomcat}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.tomcat</groupId>
        <artifactId>tomcat-util</artifactId>
        <version>${version.org.apache.tomcat}</version>
      </dependency>
      
    </dependencies>

  </dependencyManagement>

</project>
