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

    Copyright © 2015 The Gravitee team (http://gravitee.io)

    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:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://maven.apache.org/POM/4.0.0"
  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>io.gravitee</groupId>
    <artifactId>gravitee-parent</artifactId>
    <version>24.0.1</version>
  </parent>

  <groupId>io.gravitee.apim</groupId>
  <artifactId>gravitee-api-management</artifactId>
  <version>4.12.6</version>
  <packaging>pom</packaging>

  <name>Gravitee.io APIM</name>

  <properties>
    <!-- Version properties -->
    <revision>4.12.6</revision>
    <sha1 />
    <changelist></changelist>

    <!-- Vert.X version is mandatory for vertx-grpc-protoc-plugin2
             in gravitee-apim-gateway-tests-sdk and gravitee-apim-integration-tests
             along with the grpc libs to create test clients and servers -->
    <vertx.version>5.0.12</vertx.version>
    <protobuf-java.version>3.25.5</protobuf-java.version>
    <grpc-java.version>1.65.0</grpc-java.version>
    <!-- While waiting fot the new version of lombok-plugin, we use this workaround
             https://github.com/awhitford/lombok.maven/issues/179 -->
    <maven-lombok.version>1.18.36</maven-lombok.version>
    <!-- Gravitee dependencies version -->
    <gravitee-bom.version>9.0.0</gravitee-bom.version>
    <gravitee-alert-api.version>3.0.0</gravitee-alert-api.version>
    <gravitee-cockpit-api.version>3.12.0</gravitee-cockpit-api.version>
    <gravitee-cloud-initializer.version>2.3.1</gravitee-cloud-initializer.version>
    <logback-ecs-encoder.version>1.7.0</logback-ecs-encoder.version>
    <gravitee-common.version>5.0.0</gravitee-common.version>
    <gravitee-common-elasticsearch.version>7.0.0</gravitee-common-elasticsearch.version>
    <gravitee-common-mcp.version>1.2.0</gravitee-common-mcp.version>
    <gravitee-connector-api.version>2.0.0</gravitee-connector-api.version>
    <gravitee-exchange.version>3.0.0</gravitee-exchange.version>
    <gravitee-expression-language.version>4.4.0</gravitee-expression-language.version>
    <gravitee-fetcher-api.version>2.1.0</gravitee-fetcher-api.version>
    <gravitee-gateway-api.version>6.3.0</gravitee-gateway-api.version>
    <gravitee-integration-api.version>5.1.0</gravitee-integration-api.version>
    <gravitee-json-validation.version>2.2.0</gravitee-json-validation.version>
    <gravitee-kubernetes.version>4.0.0</gravitee-kubernetes.version>
    <gravitee-node.version>9.2.1</gravitee-node.version>
    <gravitee-notifier-api.version>2.0.0</gravitee-notifier-api.version>
    <gravitee-platform-repository-api.version>2.0.0</gravitee-platform-repository-api.version>
    <gravitee-plugin.version>5.1.4</gravitee-plugin.version>
    <gravitee-plugin-common-configurations.version>1.4.0</gravitee-plugin-common-configurations.version>
    <gravitee-policy-api.version>1.11.0</gravitee-policy-api.version>
    <gravitee-reporter-api.version>2.5.0</gravitee-reporter-api.version>
    <gravitee-resource-api.version>1.1.0</gravitee-resource-api.version>
    <gravitee-resource-auth-provider-api.version>1.3.0</gravitee-resource-auth-provider-api.version>
    <gravitee-resource-cache-provider-api.version>2.2.0</gravitee-resource-cache-provider-api.version>
    <gravitee-resource-content-provider-api.version>1.0.0</gravitee-resource-content-provider-api.version>
    <gravitee-resource-oauth2-provider-api.version>1.5.1</gravitee-resource-oauth2-provider-api.version>
    <gravitee-resource-storage-api.version>1.1.0</gravitee-resource-storage-api.version>
    <gravitee-scoring-api.version>0.7.0</gravitee-scoring-api.version>
    <gravitee-secret-api.version>3.0.0</gravitee-secret-api.version>
    <gravitee-service-discovery-api.version>1.1.1</gravitee-service-discovery-api.version>
    <gravitee-spec-gen-api.version>1.1.0</gravitee-spec-gen-api.version>

    <!-- Other dependencies version -->
    <angus-activation.version>2.0.2</angus-activation.version>
    <angus-mail.version>2.0.4</angus-mail.version>
    <archunit-junit5.version>1.4.1</archunit-junit5.version>
    <asm.version>9.7.1</asm.version>
    <awaitility.version>4.3.0</awaitility.version>
    <batik-transcoder.version>1.18</batik-transcoder.version>
    <classgraph.version>4.8.179</classgraph.version>
    <commons-email.version>2.0.0-M1</commons-email.version>
    <commons-io.version>2.18.0</commons-io.version>
    <commons-lang3.version>3.18.0</commons-lang3.version>
    <commons-pool2.version>2.12.1</commons-pool2.version>
    <commons-text.version>1.13.0</commons-text.version>
    <commons-logging.version>1.3.5</commons-logging.version>
    <dozer.version>7.0.0</dozer.version>
    <flexmark.version>0.64.8</flexmark.version>
    <freemarker.version>2.3.34</freemarker.version>
    <gson.version>2.12.1</gson.version>
    <guava.version>33.4.5-jre</guava.version>
    <hibernate-validator.version>8.0.2.Final</hibernate-validator.version>
    <httpclient.version>4.5.14</httpclient.version>
    <imageio.version>3.12.0</imageio.version>
    <jakarta.activation-api.version>2.1.3</jakarta.activation-api.version>
    <jakarta.annotation-api.version>3.0.0</jakarta.annotation-api.version>
    <jakarta.inject-api.version>2.0.1.MR</jakarta.inject-api.version>
    <jakarta.servlet-api.version>6.1.0</jakarta.servlet-api.version>
    <jakarta.transaction-api.version>2.0.1</jakarta.transaction-api.version>
    <jakarta.validation-api.version>3.1.1</jakarta.validation-api.version>
    <jakarta.xml.bind-api.version>4.0.2</jakarta.xml.bind-api.version>
    <java-jwt.version>4.5.0</java-jwt.version>
    <javassist.version>3.30.2-GA</javassist.version>
    <javax.annotation-api.version>1.3.2</javax.annotation-api.version>
    <javax.inject.version>1</javax.inject.version>
    <javax.servlet-api.version>4.0.1</javax.servlet-api.version>
    <!-- javax dependencies still required for compatibility or test -->
    <jaxb-impl.version>4.0.5</jaxb-impl.version>
    <jaxb-api.version>2.4.0-b180830.0359</jaxb-api.version>
    <jcstress.version>0.16</jcstress.version>
    <jmh.version>1.37</jmh.version>
    <jna.version>5.16.0</jna.version>
    <jolt.version>0.1.8</jolt.version>
    <jsonassert.version>1.5.3</jsonassert.version>
    <json-patch.version>1.13</json-patch.version>
    <json-path.version>2.9.0</json-path.version>
    <json-smart.version>2.5.2</json-smart.version>
    <json-unit.version>4.1.1</json-unit.version>
    <jsoup.version>1.21.2</jsoup.version>
    <kafka.version>3.9.2</kafka.version>
    <lucene.version>10.1.0</lucene.version>
    <lombok-mapstruct-binding.version>0.2.0</lombok-mapstruct-binding.version>
    <mapstruct.version>1.6.3</mapstruct.version>
    <mariadb-java-client.version>3.5.6</mariadb-java-client.version>
    <mssql-jdbc.version>12.10.2.jre11</mssql-jdbc.version>
    <netty-tcnative-boringssl-static.version>2.0.70.Final</netty-tcnative-boringssl-static.version>
    <nimbus-jose-jwt.version>10.0.2</nimbus-jose-jwt.version>
    <mongo.version>5.3.1</mongo.version>
    <owasp-java-html-sanitizer.version>20260102.1</owasp-java-html-sanitizer.version>
    <postgresql.version>42.7.11</postgresql.version>
    <reactor-adapter.version>3.5.2</reactor-adapter.version>
    <reactor-core.version>3.7.4</reactor-core.version>
    <slf4j2-mock.version>2.4.0</slf4j2-mock.version>
    <snakeyaml.version>2.4</snakeyaml.version>
    <spring-data-mongodb.version>4.4.4</spring-data-mongodb.version>
    <resilience4j-rxjava3.version>2.3.0</resilience4j-rxjava3.version>
    <!-- !! Transitive dependency !! need to remove when swagger parser will include a version
    higher than 1.7.15.1 -->
    <rhino.version>1.7.15.1</rhino.version>
    <swagger-core.version>2.2.52</swagger-core.version>
    <swagger-jaxrs2.version>2.2.52</swagger-jaxrs2.version>
    <swagger-parser.version>2.1.45</swagger-parser.version>
    <wiremock.version>3.12.1</wiremock.version>
    <wsdl4j.version>1.6.3</wsdl4j.version>
    <xmlbeans.version>5.3.0</xmlbeans.version>
    <tika.version>3.2.3</tika.version>
    <pdfbox.version>3.0.6</pdfbox.version>

    <!-- Plugins version -->
    <maven-clean-plugin.version>3.4.1</maven-clean-plugin.version>
    <maven-dependency-plugin.version>3.8.1</maven-dependency-plugin.version>
    <maven-jar-plugin.version>3.4.2</maven-jar-plugin.version>
    <maven-remote-resources-plugin.version>3.3.0</maven-remote-resources-plugin.version>
    <build-helper-maven-plugin.version>3.6.1</build-helper-maven-plugin.version>
    <exec-maven-plugin.version>3.5.1</exec-maven-plugin.version>
    <flatten-maven-plugin.version>1.7.2</flatten-maven-plugin.version>
    <jacoco-maven-plugin.version>0.8.13</jacoco-maven-plugin.version>
    <jsonschema2pojo-maven-plugin.version>1.2.2</jsonschema2pojo-maven-plugin.version>
    <lombok-maven-plugin.version>1.18.20.0</lombok-maven-plugin.version>
    <os-maven-plugin.version>1.7.1</os-maven-plugin.version>
    <swagger-maven-plugin.version>>2.2.9</swagger-maven-plugin.version>
    <skip.validation>false</skip.validation>
    <gravitee-plugin-common-configurations-maven-plugin.version>1.0.0</gravitee-plugin-common-configurations-maven-plugin.version>

    <!-- Versions of the plugins for the full distribution -->
    <!-- Management API & Gateway -->
    <gravitee-alert-engine-connectors-ws.version>3.0.0</gravitee-alert-engine-connectors-ws.version>
    <gravitee-connector-http.version>6.0.0</gravitee-connector-http.version>
    <gravitee-policy-apikey.version>6.0.0</gravitee-policy-apikey.version>
    <gravitee-policy-assign-attributes.version>3.2.0</gravitee-policy-assign-attributes.version>
    <gravitee-policy-assign-content.version>3.1.1</gravitee-policy-assign-content.version>
    <gravitee-policy-assign-metrics.version>4.1.0</gravitee-policy-assign-metrics.version>
    <gravitee-policy-basic-authentication.version>1.6.0</gravitee-policy-basic-authentication.version>
    <gravitee-policy-cache.version>4.0.0</gravitee-policy-cache.version>
    <gravitee-policy-callout-http.version>7.0.0</gravitee-policy-callout-http.version>
    <gravitee-policy-circuit-breaker.version>2.0.0</gravitee-policy-circuit-breaker.version>
    <gravitee-policy-custom-query-parameters.version>2.0.0</gravitee-policy-custom-query-parameters.version>
    <gravitee-policy-cloud-events.version>1.1.0</gravitee-policy-cloud-events.version>
    <gravitee-policy-data-cache.version>2.0.0</gravitee-policy-data-cache.version>
    <gravitee-policy-data-logging-masking.version>3.1.2</gravitee-policy-data-logging-masking.version>
    <gravitee-policy-dynamic-routing.version>2.1.0</gravitee-policy-dynamic-routing.version>
    <gravitee-policy-generate-http-signature.version>1.5.1</gravitee-policy-generate-http-signature.version>
    <gravitee-policy-generate-jwt.version>1.8.0</gravitee-policy-generate-jwt.version>
    <gravitee-policy-generate-wssecurity.version>1.0.0</gravitee-policy-generate-wssecurity.version>
    <gravitee-policy-geoip-filtering.version>2.2.2</gravitee-policy-geoip-filtering.version>
    <gravitee-policy-groovy.version>4.3.6</gravitee-policy-groovy.version>
    <gravitee-policy-html-json.version>1.6.3</gravitee-policy-html-json.version>
    <gravitee-policy-http-signature.version>1.7.0</gravitee-policy-http-signature.version>
    <gravitee-policy-interrupt.version>2.2.0</gravitee-policy-interrupt.version>
    <gravitee-policy-ipfiltering.version>3.0.0</gravitee-policy-ipfiltering.version>
    <gravitee-policy-javascript.version>3.0.0</gravitee-policy-javascript.version>
    <gravitee-policy-js.version>1.0.1</gravitee-policy-js.version>
    <gravitee-policy-json-threat-protection.version>2.1.0</gravitee-policy-json-threat-protection.version>
    <gravitee-policy-json-to-json.version>3.1.0</gravitee-policy-json-to-json.version>
    <gravitee-policy-json-to-toon.version>1.0.2</gravitee-policy-json-to-toon.version>
    <gravitee-policy-json-validation.version>3.0.0</gravitee-policy-json-validation.version>
    <gravitee-policy-json-xml.version>3.0.3</gravitee-policy-json-xml.version>
    <gravitee-policy-jws.version>2.0.0</gravitee-policy-jws.version>
    <gravitee-policy-jwt.version>8.0.0</gravitee-policy-jwt.version>
    <gravitee-policy-keyless.version>4.0.0</gravitee-policy-keyless.version>
    <gravitee-policy-latency.version>2.0.1</gravitee-policy-latency.version>
    <gravitee-policy-metrics-reporter.version>3.0.1</gravitee-policy-metrics-reporter.version>
    <gravitee-policy-message-filtering.version>1.1.4</gravitee-policy-message-filtering.version>
    <gravitee-policy-mock.version>1.15.0</gravitee-policy-mock.version>
    <gravitee-policy-mtls.version>3.0.0</gravitee-policy-mtls.version>
    <gravitee-policy-oauth2.version>5.3.1</gravitee-policy-oauth2.version>
    <gravitee-policy-oas-validation.version>1.2.3</gravitee-policy-oas-validation.version>
    <gravitee-policy-openid-connect-userinfo.version>1.7.0</gravitee-policy-openid-connect-userinfo.version>
    <gravitee-policy-override-http-method.version>2.2.1</gravitee-policy-override-http-method.version>
    <!--    Version of policy-ratelimit is also used for policy-quota, policy-spikearrest,
    policy-token-bucket-ratelimit and gateway-services-ratelimit    -->
    <!--    <gravitee-policy-quota.version>5.0.0</gravitee-policy-quota.version>    -->
    <!--    <gravitee-policy-spikearrest.version>5.0.0</gravitee-policy-spikearrest.version>    -->
    <!--
    <gravitee-policy-token-bucket-ratelimit.version>5.0.0</gravitee-policy-token-bucket-ratelimit.version>    -->
    <gravitee-policy-ratelimit.version>5.0.0</gravitee-policy-ratelimit.version>
    <gravitee-policy-regex-threat-protection.version>1.6.0</gravitee-policy-regex-threat-protection.version>
    <gravitee-policy-request-content-limit.version>1.8.1</gravitee-policy-request-content-limit.version>
    <gravitee-policy-request-validation.version>1.15.1</gravitee-policy-request-validation.version>
    <gravitee-policy-resource-filtering.version>2.0.1</gravitee-policy-resource-filtering.version>
    <gravitee-policy-rest-to-soap.version>1.14.1</gravitee-policy-rest-to-soap.version>
    <gravitee-policy-retry.version>4.1.1</gravitee-policy-retry.version>
    <gravitee-policy-role-based-access-control.version>2.1.0</gravitee-policy-role-based-access-control.version>
    <gravitee-policy-ssl-enforcement.version>1.7.0</gravitee-policy-ssl-enforcement.version>
    <gravitee-policy-traffic-shadowing.version>3.0.3</gravitee-policy-traffic-shadowing.version>
    <gravitee-policy-transform-avro-json.version>5.2.0</gravitee-policy-transform-avro-json.version>
    <gravitee-policy-transform-avro-protobuf.version>1.0.9</gravitee-policy-transform-avro-protobuf.version>
    <gravitee-policy-transform-protobuf-json.version>2.0.1</gravitee-policy-transform-protobuf-json.version>
    <gravitee-policy-transformheaders.version>5.2.0</gravitee-policy-transformheaders.version>
    <gravitee-policy-transformqueryparams.version>1.9.0</gravitee-policy-transformqueryparams.version>
    <gravitee-policy-transform-status-code.version>1.0.2</gravitee-policy-transform-status-code.version>
    <gravitee-policy-url-rewriting.version>1.7.0</gravitee-policy-url-rewriting.version>
    <gravitee-policy-xml-json.version>2.0.1</gravitee-policy-xml-json.version>
    <gravitee-policy-xml-threat-protection.version>1.5.1</gravitee-policy-xml-threat-protection.version>
    <gravitee-policy-xml-validation.version>1.2.1</gravitee-policy-xml-validation.version>
    <gravitee-policy-xslt.version>3.1.1</gravitee-policy-xslt.version>
    <gravitee-policy-wssecurity-authentication.version>2.0.2</gravitee-policy-wssecurity-authentication.version>
    <gravitee-policy-http-redirect.version>1.0.2</gravitee-policy-http-redirect.version>

    <gravitee-resource-cache.version>3.0.0</gravitee-resource-cache.version>
    <gravitee-resource-oauth2-provider-am.version>5.0.0</gravitee-resource-oauth2-provider-am.version>
    <gravitee-resource-oauth2-provider-auth0.version>2.0.0</gravitee-resource-oauth2-provider-auth0.version>
    <gravitee-resource-oauth2-provider-entra-id.version>2.0.0</gravitee-resource-oauth2-provider-entra-id.version>
    <gravitee-resource-oauth2-provider-generic.version>6.0.0</gravitee-resource-oauth2-provider-generic.version>
    <gravitee-resource-content-provider-inline.version>1.1.1</gravitee-resource-content-provider-inline.version>
    <gravitee-service-discovery-consul.version>1.3.0</gravitee-service-discovery-consul.version>
    <!-- Management API Only -->
    <gravitee-cockpit-connectors-ws.version>6.0.0</gravitee-cockpit-connectors-ws.version>
    <gravitee-fetcher-bitbucket.version>2.1.1</gravitee-fetcher-bitbucket.version>
    <gravitee-fetcher-git.version>3.0.0</gravitee-fetcher-git.version>
    <gravitee-fetcher-github.version>2.2.1</gravitee-fetcher-github.version>
    <gravitee-fetcher-gitlab.version>2.1.2</gravitee-fetcher-gitlab.version>
    <gravitee-fetcher-http.version>3.0.0</gravitee-fetcher-http.version>
    <gravitee-notifier-email.version>4.0.1</gravitee-notifier-email.version>
    <gravitee-notifier-slack.version>3.0.0</gravitee-notifier-slack.version>
    <gravitee-notifier-webhook.version>3.0.0</gravitee-notifier-webhook.version>
    <!-- Gateway Only -->
    <gravitee-reporter-tcp.version>5.0.0</gravitee-reporter-tcp.version>
    <gravitee-reporter-cloud.version>4.0.0</gravitee-reporter-cloud.version>
    <gravitee-reporter-otel.version>1.3.0</gravitee-reporter-otel.version>
    <!--    Version of policy-ratelimit is also used for policy-quota, policy-spikearrest and
    gateway-services-ratelimit    -->
    <!--
    <gravitee-gateway-services-ratelimit.version>3.0.0</gravitee-gateway-services-ratelimit.version>    -->

    <!-- Versions of the plugins for the full distribution on dev environment-->
    <!-- Management API & Gateway -->
    <!-- Community plugins -->
    <gravitee-policy-aws-lambda.version>3.4.0</gravitee-policy-aws-lambda.version>
    <gravitee-policy-circuit-breaker.version>2.0.0</gravitee-policy-circuit-breaker.version>
    <gravitee-policy-geoip-filtering.version>2.2.2</gravitee-policy-geoip-filtering.version>
    <gravitee-resource-auth-provider-http.version>2.0.0</gravitee-resource-auth-provider-http.version>
    <gravitee-resource-auth-provider-inline.version>1.4.0</gravitee-resource-auth-provider-inline.version>
    <gravitee-resource-auth-provider-ldap.version>2.0.1</gravitee-resource-auth-provider-ldap.version>
    <gravitee-resource-cache-redis.version>5.0.0</gravitee-resource-cache-redis.version>
    <gravitee-resource-oauth2-provider-keycloak.version>4.0.0</gravitee-resource-oauth2-provider-keycloak.version>
    <gravitee-resource-ai-model-text-classification.version>2.2.1</gravitee-resource-ai-model-text-classification.version>
    <gravitee-service-geoip.version>3.0.0</gravitee-service-geoip.version>
    <gravitee-inference-service.version>2.0.0</gravitee-inference-service.version>
    <gravitee-secretprovider-kubernetes.version>2.0.0</gravitee-secretprovider-kubernetes.version>
    <gravitee-policy-ai-prompt-token-tracking.version>2.0.0</gravitee-policy-ai-prompt-token-tracking.version>
    <gravitee-policy-ai-prompt-guard-rails.version>4.0.1</gravitee-policy-ai-prompt-guard-rails.version>

    <!-- Enterprise plugins -->
    <gravitee-entrypoint-http-get.version>3.0.0</gravitee-entrypoint-http-get.version>
    <gravitee-entrypoint-http-post.version>3.0.0</gravitee-entrypoint-http-post.version>
    <gravitee-entrypoint-sse.version>6.0.0</gravitee-entrypoint-sse.version>
    <gravitee-entrypoint-webhook.version>8.0.0</gravitee-entrypoint-webhook.version>
    <gravitee-entrypoint-websocket.version>3.0.0</gravitee-entrypoint-websocket.version>
    <gravitee-entrypoint-agent-to-agent.version>2.0.0</gravitee-entrypoint-agent-to-agent.version>
    <gravitee-entrypoint-mcp-tool-server.version>2.0.2</gravitee-entrypoint-mcp-tool-server.version>
    <gravitee-endpoint-jms.version>2.0.0</gravitee-endpoint-jms.version>
    <gravitee-endpoint-kafka.version>6.1.4</gravitee-endpoint-kafka.version>
    <gravitee-endpoint-mqtt5.version>5.0.0</gravitee-endpoint-mqtt5.version>
    <gravitee-endpoint-rabbitmq.version>4.0.0</gravitee-endpoint-rabbitmq.version>
    <gravitee-endpoint-solace.version>4.0.1</gravitee-endpoint-solace.version>
    <gravitee-endpoint-azure-service-bus.version>2.0.1</gravitee-endpoint-azure-service-bus.version>
    <gravitee-endpoint-agent-to-agent.version>2.0.0</gravitee-endpoint-agent-to-agent.version>
    <gravitee-policy-graphql-rate-limit.version>1.0.2</gravitee-policy-graphql-rate-limit.version>
    <gravitee-resource-schema-registry-confluent.version>5.0.0</gravitee-resource-schema-registry-confluent.version>
    <gravitee-resource-schema-registry-embedded.version>1.0.0</gravitee-resource-schema-registry-embedded.version>
    <gravitee-resource-storage-azure-blob.version>1.1.0</gravitee-resource-storage-azure-blob.version>
    <gravitee-reactor-message.version>11.0.0</gravitee-reactor-message.version>
    <gravitee-reactor-native-kafka.version>7.0.1</gravitee-reactor-native-kafka.version>
    <gravitee-reactor-mcp-proxy.version>3.0.2</gravitee-reactor-mcp-proxy.version>
    <gravitee-reactor-llm-proxy.version>3.0.2</gravitee-reactor-llm-proxy.version>
    <gravitee-reactor-a2a-proxy.version>2.0.0</gravitee-reactor-a2a-proxy.version>
    <gravitee-reactor-authz.version>1.0.0</gravitee-reactor-authz.version>
    <gravitee-reactor-edge.version>1.0.0</gravitee-reactor-edge.version>
    <gravitee-resource-ai-vector-store-redis.version>2.0.0</gravitee-resource-ai-vector-store-redis.version>
    <gravitee-resource-ai-vector-store-aws-s3.version>1.0.0</gravitee-resource-ai-vector-store-aws-s3.version>
    <gravitee-resource-ai-model-text-embedding.version>1.0.0</gravitee-resource-ai-model-text-embedding.version>
    <gravitee-policy-ai-semantic-caching.version>2.0.0</gravitee-policy-ai-semantic-caching.version>
    <gravitee-apim-repository-bridge.version>9.0.0</gravitee-apim-repository-bridge.version>
    <gravitee-secretprovider-hc-vault.version>2.1.0</gravitee-secretprovider-hc-vault.version>
    <gravitee-secretprovider-aws.version>2.0.0</gravitee-secretprovider-aws.version>
    <gravitee-secretprovider-azure-keyvault.version>1.0.0</gravitee-secretprovider-azure-keyvault.version>
    <gravitee-service-secrets.version>3.0.1</gravitee-service-secrets.version>
    <gravitee-policy-interops.version>1.1.3</gravitee-policy-interops.version>
    <gravitee-policy-kafka-quota.version>1.2.1</gravitee-policy-kafka-quota.version>
    <gravitee-policy-kafka-topic-mapping.version>2.0.1</gravitee-policy-kafka-topic-mapping.version>
    <gravitee-policy-kafka-acl.version>3.0.2</gravitee-policy-kafka-acl.version>
    <gravitee-policy-kafka-transform-key.version>1.0.0</gravitee-policy-kafka-transform-key.version>
    <gravitee-policy-kafka-message-filtering.version>1.0.0</gravitee-policy-kafka-message-filtering.version>
    <gravitee-policy-kafka-message-encryption-decryption.version>1.0.0</gravitee-policy-kafka-message-encryption-decryption.version>
    <gravitee-policy-kafka-rules.version>1.1.2</gravitee-policy-kafka-rules.version>
    <gravitee-policy-kafka-namespace.version>1.0.0</gravitee-policy-kafka-namespace.version>
    <gravitee-policy-offloading.version>1.1.0</gravitee-policy-offloading.version>
    <gravitee-policy-token-ratelimit.version>1.0.0</gravitee-policy-token-ratelimit.version>
    <gravitee-policy-mcp-acl.version>1.0.4</gravitee-policy-mcp-acl.version>
    <gravitee-policy-pii-filtering.version>2.2.0</gravitee-policy-pii-filtering.version>
    <gravitee-policy-native-ipfiltering.version>1.0.1</gravitee-policy-native-ipfiltering.version>
    <gravitee-resource-ai-model-token-classification.version>2.0.0</gravitee-resource-ai-model-token-classification.version>

    <!-- Gamma plugins -->
    <gravitee-gamma-module-aim.version>1.1.0-alpha.2</gravitee-gamma-module-aim.version>
    <gravitee-gamma-module-authz.version>1.2.0</gravitee-gamma-module-authz.version>
    <gravitee-gamma-module-edge.version>1.1.0</gravitee-gamma-module-edge.version>
    <gravitee-gamma-module-esm.version>1.0.0</gravitee-gamma-module-esm.version>

    <!-- Authz plugins -->
    <gravitee-service-authz-pdp.version>1.0.1</gravitee-service-authz-pdp.version>
    <gravitee-policy-authz-pep.version>1.1.0</gravitee-policy-authz-pep.version>
    <gravitee-policy-authz-pdp-authzen.version>1.0.0</gravitee-policy-authz-pdp-authzen.version>
  </properties>

  <scm>
    <url>https://github.com/gravitee-io/gravitee-api-management</url>
    <connection>scm:git:git://github.com/gravitee-io/gravitee-api-management.git</connection>
    <developerConnection>scm:git:git@github.com:gravitee-io/gravitee-api-management.git</developerConnection>
  </scm>

  <issueManagement>
    <url>https://github.com/gravitee-io/issues/issues</url>
    <system>GitHub Issues</system>
  </issueManagement>

  <repositories>
    <repository>
      <id>sonatype-nexus-snapshots</id>
      <url>https://central.sonatype.com/repository/maven-snapshots/</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>com.mycila</groupId>
          <artifactId>license-maven-plugin</artifactId>
          <configuration>
            <properties>
              <owner>The Gravitee team</owner>
              <email>http://gravitee.io</email>
            </properties>
            <licenseSets>
              <licenseSet>
                <header>com/mycila/maven/plugin/license/templates/APACHE-2.txt</header>
                <excludes>
                  <exclude>LICENSE.txt</exclude>
                  <exclude>**/README</exclude>
                  <exclude>src/main/packaging/**</exclude>
                  <exclude>src/test/resources/**</exclude>
                  <exclude>src/main/resources/**</exclude>
                  <exclude>src/main/resources-filtered/**</exclude>
                  <exclude>src/main/webapp/**</exclude>
                  <exclude>integrationApis/**</exclude>
                  <exclude>**/dist/**</exclude>
                  <exclude>**/.tmp/**</exclude>
                  <exclude>**/node_modules/**</exclude>
                  <exclude>**/.*</exclude>
                  <exclude>*.js</exclude>
                  <exclude>**/.*/**</exclude>
                  <exclude>**/*.adoc</exclude>
                  <exclude>**/LICENSE_TEMPLATE.txt</exclude>
                  <exclude>**/sonar-project.properties</exclude>
                  <exclude>gravitee-apim-portal-webui/**</exclude>
                  <exclude>gravitee-apim-portal-webui-next/**</exclude>
                  <exclude>gravitee-apim-console-webui/**</exclude>
                  <exclude>gravitee-apim-e2e/**</exclude>
                  <exclude>gravitee-apim-perf/**</exclude>
                  <exclude>gravitee-apim-webui-libs/**</exclude>
                  <exclude>gravitee-gamma-control-plane-webui/**</exclude>
                  <exclude>gravitee-gamma-module-apim/src/main/ui/**</exclude>
                  <exclude>gravitee-gamma-module-platform/src/main/ui/**</exclude>
                  <exclude>packages/**</exclude>
                  <exclude>helm/**</exclude>
                </excludes>
              </licenseSet>
            </licenseSets>
            <mapping>
              <ts>SLASHSTAR_STYLE</ts>
              <js>SLASHSTAR_STYLE</js>
            </mapping>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <groupId>io.gravitee.maven</groupId>
        <artifactId>gravitee-archrules-maven-plugin</artifactId>
        <executions>
          <execution>
            <id>global-logging-check</id>
            <configuration>
              <packagesToExclude>
                <!--                                Exclude Gateway Test SDK from scan, it is not necessary to force a particular
                logger here-->
                <package>io.gravitee.apim.gateway.tests.sdk..</package>
              </packagesToExclude>
            </configuration>
          </execution>
          <execution>
            <id>execution-context-logging-check</id>
            <configuration>
              <ignoreExecutionContextClasses>
                <!--                                Management API declare an ExecutionContext that does not interest us for
                logging purpose -->
                <ignoreExecutionContextClass>io.gravitee.rest.api.service.common.ExecutionContext</ignoreExecutionContextClass>
                <!--                                Fields are also analyzed, exclude V3ExecutionContextFactory -->
                <ignoreExecutionContextClass>
                  io.gravitee.gateway.reactor.handler.context.V3ExecutionContextFactory</ignoreExecutionContextClass>
              </ignoreExecutionContextClasses>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.hubspot.maven.plugins</groupId>
        <artifactId>prettier-maven-plugin</artifactId>
        <configuration>
          <prettierJavaVersion>${prettier-maven-plugin.prettierJavaVersion}</prettierJavaVersion>
          <skip>${skip.validation}</skip>
          <inputGlobs>
            <inputGlob>src/{main,test}/**/*.java</inputGlob>
            <inputGlob>docker/**/docker-compose.yml</inputGlob>
          </inputGlobs>
        </configuration>
        <executions>
          <execution>
            <phase>validate</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.mycila</groupId>
        <artifactId>license-maven-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>check</goal>
            </goals>
            <phase>validate</phase>
            <configuration>
              <skip>${skip.validation}</skip>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>flatten-maven-plugin</artifactId>
        <version>${flatten-maven-plugin.version}</version>
        <configuration>
          <updatePomFile>true</updatePomFile>
          <flattenMode>resolveCiFriendliesOnly</flattenMode>
        </configuration>
        <executions>
          <execution>
            <id>flatten</id>
            <phase>process-resources</phase>
            <goals>
              <goal>flatten</goal>
            </goals>
          </execution>
          <execution>
            <id>flatten.clean</id>
            <phase>clean</phase>
            <goals>
              <goal>clean</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

  <profiles>
    <profile>
      <id>all-modules</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <modules>
        <module>gravitee-apim-bom</module>
        <module>gravitee-apim-common</module>
        <module>gravitee-apim-definition</module>
        <module>gravitee-apim-distribution</module>
        <module>gravitee-apim-gateway</module>
        <module>gravitee-apim-parent</module>
        <module>gravitee-apim-plugin</module>
        <module>gravitee-apim-repository</module>
        <module>gravitee-apim-reporter</module>
        <module>gravitee-apim-rest-api</module>
        <module>gravitee-gamma</module>
      </modules>
    </profile>
    <profile>
      <id>main-modules</id>
      <activation>
        <property>
          <name>main-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-common</module>
        <module>gravitee-apim-definition</module>
        <module>gravitee-apim-rest-api</module>
        <module>gravitee-apim-gateway</module>
        <module>gravitee-gamma</module>
      </modules>
    </profile>
    <profile>
      <id>definition-modules</id>
      <activation>
        <property>
          <name>definition-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-definition</module>
      </modules>
    </profile>
    <profile>
      <id>rest-api-modules</id>
      <activation>
        <property>
          <name>rest-api-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-rest-api</module>
        <module>gravitee-gamma</module>
      </modules>
    </profile>
    <profile>
      <id>gateway-modules</id>
      <activation>
        <property>
          <name>gateway-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-definition</module>
        <module>gravitee-apim-gateway</module>
      </modules>
    </profile>
    <profile>
      <id>plugin-modules</id>
      <activation>
        <property>
          <name>plugin-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-plugin</module>
      </modules>
    </profile>
    <profile>
      <id>reporter-modules</id>
      <activation>
        <property>
          <name>reporter-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-reporter</module>
      </modules>
    </profile>
    <profile>
      <id>repository-modules</id>
      <activation>
        <property>
          <name>repository-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-repository</module>
      </modules>
    </profile>
    <profile>
      <id>integration-tests-modules</id>
      <activation>
        <property>
          <name>integration-tests-modules</name>
          <value>true</value>
        </property>
      </activation>
      <modules>
        <module>gravitee-apim-integration-tests</module>
      </modules>
    </profile>
  </profiles>
</project>
