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

<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>cloud.piranha</groupId>
        <artifactId>project</artifactId>
        <version>25.2.0</version>
    </parent>
    <artifactId>bom</artifactId>
    <packaging>pom</packaging>
    <name>Piranha - BOM</name>
    <properties>
        <!-- dependencies -->
        <jakarta.activation-api.version>2.1.3</jakarta.activation-api.version>
        <jakarta.annotation-api.version>3.0.0</jakarta.annotation-api.version>
        <jakarta.authentication-api.version>3.1.0</jakarta.authentication-api.version>
        <jakarta.authorization-api.version>3.0.0</jakarta.authorization-api.version>
        <jakarta.enterprise.concurrent-api.version>3.1.1</jakarta.enterprise.concurrent-api.version>
        <jakarta.ejb-api.version>4.0.1</jakarta.ejb-api.version>
        <jakarta.el-api.version>6.0.1</jakarta.el-api.version>
        <jakarta.enterprise.cdi-api.version>4.1.0</jakarta.enterprise.cdi-api.version>
        <jakarta.faces-api.version>4.1.2</jakarta.faces-api.version>
        <jakarta.inject-api.version>2.0.1.MR</jakarta.inject-api.version>
        <jakarta.interceptor-api.version>2.2.0</jakarta.interceptor-api.version>
        <jakarta.jakartaee-core-api.version>11.0.0</jakarta.jakartaee-core-api.version>
        <jakarta.jakartaee-web-api.version>11.0.0-M4</jakarta.jakartaee-web-api.version>
        <jakarta.json-api.version>2.1.3</jakarta.json-api.version>
        <jakarta.json.bind-api.version>3.0.1</jakarta.json.bind-api.version>
        <jakarta.mail-api.version>2.1.3</jakarta.mail-api.version>
        <jakarta.persistence-api.version>3.2.0</jakarta.persistence-api.version>
        <jakarta.security.enterprise-api.version>4.0.0</jakarta.security.enterprise-api.version>
        <jakarta.servlet-api.version>6.1.0</jakarta.servlet-api.version>
        <jakarta.servlet.jsp-api.version>4.0.0</jakarta.servlet.jsp-api.version>
        <jakarta.servlet.jsp.jstl-api.version>3.0.2</jakarta.servlet.jsp.jstl-api.version>
        <jakarta.transaction-api.version>2.0.1</jakarta.transaction-api.version>
        <jakarta.validation-api.version>3.1.0</jakarta.validation-api.version>
        <jakarta.websocket-api.version>2.2.0</jakarta.websocket-api.version>
        <jakarta.ws.rs-api.version>4.0.0</jakarta.ws.rs-api.version>
        <jakarta.xml.bind-api.version>4.0.2</jakarta.xml.bind-api.version>
        <!-- other -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencyManagement>
        <dependencies>
            <!-- Jakarta Activation -->
            <dependency>
                <groupId>jakarta.activation</groupId>
                <artifactId>jakarta.activation-api</artifactId>
                <version>${jakarta.activation-api.version}</version>
            </dependency>
            <!-- Jakarta Annotation -->
            <dependency>
                <groupId>jakarta.annotation</groupId>
                <artifactId>jakarta.annotation-api</artifactId>
                <version>${jakarta.annotation-api.version}</version>
            </dependency>
            <!-- Jakarta Authentication -->
            <dependency>
                <groupId>jakarta.authentication</groupId>
                <artifactId>jakarta.authentication-api</artifactId>
                <version>${jakarta.authentication-api.version}</version>
            </dependency>
            <!-- Jakarta Authorization -->
            <dependency>
                <groupId>jakarta.authorization</groupId>
                <artifactId>jakarta.authorization-api</artifactId>
                <version>${jakarta.authorization-api.version}</version>
            </dependency>
            <!-- Jakarta Concurrent -->
            <dependency>
                <groupId>jakarta.enterprise.concurrent</groupId>
                <artifactId>jakarta.enterprise.concurrent-api</artifactId>
                <version>${jakarta.enterprise.concurrent-api.version}</version>
            </dependency>
            <!-- Jakarta Contexts and Dependency Injection -->
            <dependency>
                <groupId>jakarta.enterprise</groupId>
                <artifactId>jakarta.enterprise.cdi-api</artifactId>
                <version>${jakarta.enterprise.cdi-api.version}</version>
            </dependency>
            <dependency>
                <groupId>jakarta.enterprise</groupId>
                <artifactId>jakarta.enterprise.cdi-el-api</artifactId>
                <version>${jakarta.enterprise.cdi-api.version}</version>
            </dependency>
            <!-- Jakarta EE Core Profile -->
            <dependency>
                <groupId>jakarta.platform</groupId>
                <artifactId>jakarta.jakartaee-core-api</artifactId>
                <version>${jakarta.jakartaee-core-api.version}</version>
            </dependency>
            <!-- Jakarta EE Web Profile -->
            <dependency>
                <groupId>jakarta.platform</groupId>
                <artifactId>jakarta.jakartaee-web-api</artifactId>
                <version>${jakarta.jakartaee-web-api.version}</version>
            </dependency>
            <!-- Jakarta Enterprise Beans -->
            <dependency>
                <groupId>jakarta.ejb</groupId>
                <artifactId>jakarta.ejb-api</artifactId>
                <version>${jakarta.ejb-api.version}</version>
            </dependency>
            <!-- Jakarta Expression Language -->
            <dependency>
                <groupId>jakarta.el</groupId>
                <artifactId>jakarta.el-api</artifactId>
                <version>${jakarta.el-api.version}</version>
            </dependency>
            <!-- Jakarta Faces -->
            <dependency>
                <groupId>jakarta.faces</groupId>
                <artifactId>jakarta.faces-api</artifactId>
                <version>${jakarta.faces-api.version}</version>
            </dependency>
            <!-- Jakarta Inject API -->            
            <dependency>
                <groupId>jakarta.inject</groupId>
                <artifactId>jakarta.inject-api</artifactId>
                <version>${jakarta.inject-api.version}</version>
            </dependency>
            <!-- Jakarta Interceptors API -->
            <dependency>
                <groupId>jakarta.interceptor</groupId>
                <artifactId>jakarta.interceptor-api</artifactId>
                <version>${jakarta.interceptor-api.version}</version>
            </dependency>
            <!-- Jakarta JSON Binding -->
            <dependency>
                <groupId>jakarta.json.bind</groupId>
                <artifactId>jakarta.json.bind-api</artifactId>
                <version>${jakarta.json.bind-api.version}</version>
            </dependency>
            <!-- Jakarta JSON Processing -->
            <dependency>
                <groupId>jakarta.json</groupId>
                <artifactId>jakarta.json-api</artifactId>
                <version>${jakarta.json-api.version}</version>
            </dependency>
            <!-- Jakarta Mail -->
            <dependency>
                <groupId>jakarta.mail</groupId>
                <artifactId>jakarta.mail-api</artifactId>
                <version>${jakarta.mail-api.version}</version>
            </dependency>
            <!-- Jakarta Pages -->
            <dependency>
                <groupId>jakarta.servlet.jsp</groupId>
                <artifactId>jakarta.servlet.jsp-api</artifactId>
                <version>${jakarta.servlet.jsp-api.version}</version>
            </dependency>
            <!-- Jakarta Persistence -->
            <dependency>
                <groupId>jakarta.persistence</groupId>
                <artifactId>jakarta.persistence-api</artifactId>
                <version>${jakarta.persistence-api.version}</version>
            </dependency>
            <!-- Jakarta REST -->
            <dependency>
                <groupId>jakarta.ws.rs</groupId>
                <artifactId>jakarta.ws.rs-api</artifactId>
                <version>${jakarta.ws.rs-api.version}</version>
            </dependency>
            <!-- Jakarta Security -->
            <dependency>
                <groupId>jakarta.security.enterprise</groupId>
                <artifactId>jakarta.security.enterprise-api</artifactId>
                <version>${jakarta.security.enterprise-api.version}</version>
            </dependency>
            <!-- Jakarta Servlet -->
            <dependency>
                <groupId>jakarta.servlet</groupId>
                <artifactId>jakarta.servlet-api</artifactId>
                <version>${jakarta.servlet-api.version}</version>
            </dependency>
            <!-- Jakarta Standard Tag Library -->            
            <dependency>
                <groupId>jakarta.servlet.jsp.jstl</groupId>
                <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
                <version>${jakarta.servlet.jsp.jstl-api.version}</version>
            </dependency>
            <!-- Jakarta Transactions -->
            <dependency>
                <groupId>jakarta.transaction</groupId>
                <artifactId>jakarta.transaction-api</artifactId>
                <version>${jakarta.transaction-api.version}</version>
            </dependency>
            <!-- Jakarta Validation -->
            <dependency>
                <groupId>jakarta.validation</groupId>
                <artifactId>jakarta.validation-api</artifactId>
                <version>${jakarta.validation-api.version}</version>
            </dependency>
            <!-- Jakarta WebSocket -->
            <dependency>
                <groupId>jakarta.websocket</groupId>
                <artifactId>jakarta.websocket-api</artifactId>
                <version>${jakarta.websocket-api.version}</version>
            </dependency>
            <dependency>
                <groupId>jakarta.websocket</groupId>
                <artifactId>jakarta.websocket-client-api</artifactId>
                <version>${jakarta.websocket-api.version}</version>
            </dependency>
            <!-- Jakarta XML Binding -->
            <dependency>
                <groupId>jakarta.xml.bind</groupId>
                <artifactId>jakarta.xml.bind-api</artifactId>
                <version>${jakarta.xml.bind-api.version}</version>
            </dependency>
            <!-- MicroProfile Config -->
            <dependency>
                <groupId>org.eclipse.microprofile.config</groupId>
                <artifactId>microprofile-config-api</artifactId>
                <version>${microprofile-config-api.version}</version>
            </dependency>
            <!-- MicroProfile JWT Auth -->
            <dependency>
                <groupId>org.eclipse.microprofile.jwt</groupId>
                <artifactId>microprofile-jwt-auth-api</artifactId>
                <version>${microprofile-jwt-auth-api.version}</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    <distributionManagement>
        <site>
            <id>default</id>
            <url>file:///tmp/piranha/bom/</url>
        </site>
    </distributionManagement>       
</project>
