<?xml version="1.0"?>
<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">
    <parent>
        <groupId>io.debezium</groupId>
        <artifactId>debezium-build-parent</artifactId>
        <version>1.5.4.Final</version>
        <relativePath>../../pom.xml</relativePath>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <artifactId>debezium-server-bom</artifactId>
    <name>Debezium Server BOM</name>
    <packaging>jar</packaging>

    <properties>
        <version.kinesis>2.13.13</version.kinesis>
        <version.pubsub>5.1.0</version.pubsub>
        <version.pulsar>2.5.2</version.pulsar>
        <version.eventhubs>5.1.1</version.eventhubs>
        <version.jedis>3.5.2</version.jedis>

        <version.commons.logging>1.2</version.commons.logging>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>io.quarkus</groupId>
                <artifactId>quarkus-bom</artifactId>
                <version>${quarkus.version}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>

            <!-- Debezium dependencies -->
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-core</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-kinesis</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-pubsub</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-pulsar</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-eventhubs</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-redis</artifactId>
                <version>${project.version}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-server-core</artifactId>
                <type>test-jar</type>
                <version>${project.version}</version>
            </dependency>

            <!-- Target systems -->
            <dependency>
                <groupId>software.amazon.awssdk</groupId>
                <artifactId>kinesis</artifactId>
                <version>${version.kinesis}</version>
            </dependency>
            <dependency>
                <groupId>com.google.cloud</groupId>
                <artifactId>libraries-bom</artifactId>
                <version>${version.pubsub}</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
            <dependency>
                <groupId>org.apache.pulsar</groupId>
                <artifactId>pulsar-client</artifactId>
                <version>${version.pulsar}</version>
            </dependency>
            <dependency>
                <groupId>com.azure</groupId>
                <artifactId>azure-messaging-eventhubs</artifactId>
                <version>${version.eventhubs}</version>
            </dependency>
            <dependency>
                <groupId>redis.clients</groupId>
                <artifactId>jedis</artifactId>
                <version>${version.jedis}</version>
            </dependency>
            <dependency>
                <groupId>io.debezium</groupId>
                <artifactId>debezium-testing-testcontainers</artifactId>
                <version>${project.version}</version>
                <scope>test</scope>
            </dependency>

            <!-- Aligning versions/fixing scopes -->
            <dependency>
                <groupId>commons-logging</groupId>
                <artifactId>commons-logging</artifactId>
                <version>${version.commons.logging}</version>
                <scope>runtime</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>
</project>
