<?xml version="1.0" encoding="UTF-8"?>

<!--
  ~  JBoss, Home of Professional Open Source
  ~  Copyright 2013, Red Hat Middleware LLC, and individual contributors
  ~  by the @authors tag. See the copyright.txt in the distribution for a
  ~  full listing of individual contributors.
  ~
  ~  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>org.wildfly</groupId>
        <artifactId>wildfly-jpa-parent</artifactId>
        <!--
        Maintain separation between the artifact id and the version to help prevent
        merge conflicts between commits changing the GA and those changing the V.
        -->
        <version>16.0.0.Final</version>
    </parent>

    <artifactId>jipijapa-hibernate5-3</artifactId>

    <name>jipijapa Hibernate 5.3.x (JPA 2.2) integration</name>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.hibernate</groupId>
                <artifactId>hibernate-core</artifactId>
                <scope>provided</scope>
                <version>${version.org.hibernate}</version>
                <exclusions>
                    <exclusion>
                        <groupId>*</groupId>
                        <artifactId>*</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>

            <dependency>
                <groupId>org.infinispan</groupId>
                <artifactId>infinispan-hibernate-cache-spi</artifactId>
                <version>${version.org.infinispan}</version>
                <scope>provided</scope>
                <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
            </dependency>

            <dependency>
                <groupId>org.infinispan</groupId>
                <artifactId>infinispan-hibernate-cache-commons</artifactId>
                <version>${version.org.infinispan}</version>
                <scope>provided</scope>
                <exclusions>
                <exclusion>
                    <groupId>*</groupId>
                    <artifactId>*</artifactId>
                </exclusion>
            </exclusions>
            </dependency>
            
            <dependency>
                <groupId>org.infinispan</groupId>
                <artifactId>infinispan-core</artifactId>
                <version>${version.org.infinispan}</version>
                <exclusions>
                    <exclusion>
                        <artifactId>caffeine</artifactId>
                        <groupId>com.github.ben-manes.caffeine</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>hamcrest-core</artifactId>
                        <groupId>org.hamcrest</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>jgroups</artifactId>
                        <groupId>org.jgroups</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>jboss-logging</artifactId>
                        <groupId>org.jboss.logging</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>jboss-marshalling-osgi</artifactId>
                        <groupId>org.jboss.marshalling</groupId>
                    </exclusion>
                    <!-- TODO remove this exclusion once this supports JTA 1.2 -->
                    <!-- superseded by org.jboss.spec.javax.transaction:jboss-transaction-api_1.2_spec -->
                    <exclusion>
                        <artifactId>jboss-transaction-api_1.1_spec</artifactId>
                        <groupId>org.jboss.spec.javax.transaction</groupId>
                    </exclusion>
                    <exclusion>
                        <artifactId>rxjava</artifactId>
                        <groupId>io.reactivex.rxjava2</groupId>
                    </exclusion>
                </exclusions>
            </dependency>

        </dependencies>
    </dependencyManagement>
        

    <dependencies>
        <!-- testing -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.jboss.shrinkwrap</groupId>
            <artifactId>shrinkwrap-api</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss.shrinkwrap</groupId>
            <artifactId>shrinkwrap-impl-base</artifactId>
        </dependency>

        <!-- Internal -->

        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>jipijapa-spi</artifactId>
        </dependency>

        <!-- External -->

        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging-annotations</artifactId>
            <!-- This is a compile-time dependency of this project, but is not needed at compile or runtime by other
                  projects that depend on this project.-->
            <scope>provided</scope>
            <optional>true</optional>
        </dependency>

        <dependency>
            <groupId>org.jboss.logging</groupId>
            <artifactId>jboss-logging-processor</artifactId>
            <!-- This is a compile-time dependency of this project, but is not needed at compile or runtime by other
                  projects that depend on this project.-->
            <scope>provided</scope>
            <optional>true</optional>
        </dependency>

        <dependency>
            <groupId>org.hibernate.common</groupId>
            <artifactId>hibernate-commons-annotations</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <scope>provided</scope>
            <version>${version.org.hibernate}</version>
            <exclusions>
              <exclusion>
                 <groupId>*</groupId>
                 <artifactId>*</artifactId>
              </exclusion>
           </exclusions>

        </dependency>

        <dependency>
            <groupId>org.infinispan</groupId>
            <artifactId>infinispan-hibernate-cache-spi</artifactId>
            <scope>provided</scope>
            <exclusions>
              <exclusion>
                 <groupId>*</groupId>
                 <artifactId>*</artifactId>
              </exclusion>
           </exclusions>
        </dependency>

        <dependency>
            <groupId>org.infinispan</groupId>
            <artifactId>infinispan-hibernate-cache-commons</artifactId>
            <scope>provided</scope>
             <exclusions>
              <exclusion>
                 <groupId>*</groupId>
                 <artifactId>*</artifactId>
              </exclusion>
           </exclusions>
        </dependency>

        <dependency>
            <groupId>org.infinispan</groupId>
            <artifactId>infinispan-core</artifactId>
            <scope>provided</scope>
        </dependency>
        
        <dependency>
            <groupId>org.hibernate.validator</groupId>
            <artifactId>hibernate-validator</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.kohsuke.metainf-services</groupId>
            <artifactId>metainf-services</artifactId>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>javax.persistence-api</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss</groupId>
            <artifactId>jboss-vfs</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss.spec.javax.annotation</groupId>
            <artifactId>jboss-annotations-api_1.3_spec</artifactId>
        </dependency>

        <dependency>
            <groupId>org.jboss.spec.javax.transaction</groupId>
            <artifactId>jboss-transaction-api_1.2_spec</artifactId>
        </dependency>
        <dependency>
            <groupId>org.wildfly.common</groupId>
            <artifactId>wildfly-common</artifactId>
        </dependency>

    </dependencies>
</project>
