<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>de.cuioss</groupId>
        <artifactId>java-ee-bom</artifactId>
        <version>0.8.3</version>
    </parent>
    <artifactId>java-ee-orthogonal</artifactId>
    <packaging>pom</packaging>
    <name>java-ee-orthogonal</name>
    <description>Libraries that are used in the jakarta-ee-context but are agnostic to the actual version</description>
    <properties>
        <version.slf4j>2.0.16</version.slf4j>
        <version.owasp.sanitizer>20240325.1</version.owasp.sanitizer>
        <version.prettytime>5.0.9.Final</version.prettytime>
        <version.jandex>3.2.3</version.jandex>
        <version.caffeine>3.1.8</version.caffeine>
        <version.apache.httpcore>4.4.16</version.apache.httpcore>
        <version.okhttp3>5.0.0-alpha.14</version.okhttp3>
        <!-- The version needs to be aligned with the one defined within the quarkus boms.
        Otherwise, it's getting messy-->
        <version.log4j>2.24.2</version.log4j>
        <version.smallrye-jwt>4.6.1</version.smallrye-jwt>
        <version.parsson>1.1.7</version.parsson>
        <version.testcontainers-keycloak>3.5.1</version.testcontainers-keycloak>
        <version.testcontainer>1.20.4</version.testcontainer>
        <version.rest-assured>5.5.0</version.rest-assured>
    </properties>
    <dependencyManagement>
        <dependencies>
            <!-- Logging -->
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-api</artifactId>
                <version>${version.slf4j}</version>
                <scope>compile</scope>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jcl-over-slf4j</artifactId>
                <version>${version.slf4j}</version>
                <scope>provided</scope>
            </dependency>
            <!-- Simple implementation that is actually a bridge to juli logging -->
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>slf4j-jdk14</artifactId>
                <version>${version.slf4j}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.slf4j</groupId>
                <artifactId>jul-to-slf4j</artifactId>
                <version>${version.slf4j}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.googlecode.owasp-java-html-sanitizer</groupId>
                <artifactId>owasp-java-html-sanitizer</artifactId>
                <version>${version.owasp.sanitizer}</version>
                <exclusions>
                    <exclusion>
                        <groupId>com.google.code.findbugs</groupId>
                        <artifactId>jsr305</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.github.ben-manes.caffeine</groupId>
                <artifactId>caffeine</artifactId>
                <version>${version.caffeine}</version>
                <exclusions>
                    <exclusion>
                        <groupId>org.checkerframework</groupId>
                        <artifactId>checker-qual</artifactId>
                    </exclusion>
                    <exclusion>
                        <groupId>com.google.errorprone</groupId>
                        <artifactId>error_prone_annotations</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>org.ocpsoft.prettytime</groupId>
                <artifactId>prettytime</artifactId>
                <version>${version.prettytime}</version>
                <scope>compile</scope>
            </dependency>
            <!-- Used by weld to speed up start-up, see https://github.com/wildfly/jandex -->
            <dependency>
                <groupId>io.smallrye</groupId>
                <artifactId>jandex</artifactId>
                <version>${version.jandex}</version>
                <scope>runtime</scope>
            </dependency>
            <!-- With a resteasy update, an invalide version (3.2.0) of this was introduced -> TemporaryFix -->
            <dependency>
                <groupId>org.jboss</groupId>
                <artifactId>jandex</artifactId>
                <version>3.1.8</version>
                <scope>provided</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpcore</artifactId>
                <version>${version.apache.httpcore}</version>
            </dependency>
            <dependency>
                <groupId>com.squareup.okhttp3</groupId>
                <artifactId>mockwebserver3-junit5</artifactId>
                <version>${version.okhttp3}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.squareup.okhttp3</groupId>
                <artifactId>okhttp-tls</artifactId>
                <version>${version.okhttp3}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-bom</artifactId>
                <version>${version.log4j}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>io.smallrye</groupId>
                <artifactId>smallrye-jwt</artifactId>
                <version>${version.smallrye-jwt}</version>
            </dependency>
            <!-- Test: Create jwt-tokens -->
            <dependency>
                <groupId>io.smallrye</groupId>
                <artifactId>smallrye-jwt-build</artifactId>
                <version>${version.smallrye-jwt}</version>
                <scope>test</scope>
            </dependency>
            <!-- Implementation of jakarta.json-api: Currently test only for oauth-token-module-->
            <dependency>
                <groupId>org.eclipse.parsson</groupId>
                <artifactId>parsson</artifactId>
                <version>${version.parsson}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>testcontainers</artifactId>
                <version>${version.testcontainer}</version>
                <exclusions>
                    <exclusion>
                        <groupId>junit</groupId>
                        <artifactId>junit</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
            <dependency>
                <groupId>com.github.dasniko</groupId>
                <artifactId>testcontainers-keycloak</artifactId>
                <version>${version.testcontainers-keycloak}</version>
            </dependency>
            <dependency>
                <groupId>org.testcontainers</groupId>
                <artifactId>junit-jupiter</artifactId>
                <version>${version.testcontainer}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>io.rest-assured</groupId>
                <artifactId>rest-assured</artifactId>
                <version>${version.rest-assured}</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>