<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>it.geosolutions.imageio-ext</groupId>
    <artifactId>imageio-ext-plugin</artifactId>
    <version>2.0.1</version>
  </parent>

  <artifactId>imageio-ext-cog</artifactId>
  <packaging>pom</packaging>
  <name>cog</name>

  <modules>
    <module>cog-reader</module>
    <module>cog-commons</module>
    <module>cog-streams</module>
    <module>cog-rangereader-http</module>
    <module>cog-rangereader-s3</module>
    <module>cog-rangereader-gs</module>
    <module>cog-rangereader-azure</module>
  </modules>

  <properties>
    <okhttp.version>4.12.0</okhttp.version>
    <aws.version>2.27.23</aws.version>
    <azure.version>12.27.1</azure.version>
    <ehcache.version>3.4.0</ehcache.version>
    <online.skip.pattern>**/*OnlineTest.java</online.skip.pattern>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-tiff</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-cog-commons</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-cog-rangereader-http</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-cog-rangereader-s3</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-cog-rangereader-gs</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-cog-rangereader-azure</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>it.geosolutions.imageio-ext</groupId>
        <artifactId>imageio-ext-cog-streams</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>com.squareup.okhttp3</groupId>
        <artifactId>okhttp</artifactId>
        <version>${okhttp.version}</version>
      </dependency>
      <dependency>
        <groupId>software.amazon.awssdk</groupId>
        <artifactId>s3</artifactId>
        <version>${aws.version}</version>
      </dependency>
      <dependency>
        <groupId>software.amazon.awssdk</groupId>
        <artifactId>auth</artifactId>
        <version>${aws.version}</version>
      </dependency>
      <dependency>
        <groupId>software.amazon.awssdk</groupId>
        <artifactId>sts</artifactId>
        <version>${aws.version}</version>
      </dependency>
      <dependency>
        <groupId>org.ehcache</groupId>
        <artifactId>ehcache</artifactId>
        <version>${ehcache.version}</version>
      </dependency>
      <dependency>
        <groupId>com.azure</groupId>
        <artifactId>azure-storage-blob</artifactId>
        <version>${azure.version}</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <profiles>
    <profile>
      <!--
             Converges the netty dependency version from cog-rangereader-s3 and cog-rangereader-azure
             to a common version that works with both, so that both plugins can co-exist without
             adding netty libs with slightly different versions to the dependencies.

             From cog-rangereader-azure:

             com.azure:azure-storage-blob:jar:12.27.1
             +- com.azure:azure-core-http-netty:jar:1.15.3
                +- io.netty:netty-handler:jar:4.1.110.Final

             From cog-rangereader-s3:
             software.amazon.awssdk:s3:jar:2.24.13
             +- software.amazon.awssdk:netty-nio-client:jar:2.24.13
                +- io.netty:netty-codec-http:jar:4.1.107.Final
            -->
      <id>dependencyConvergence</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <dependencyManagement>
        <dependencies>
          <dependency>
            <groupId>io.netty</groupId>
            <artifactId>netty-bom</artifactId>
            <version>4.1.113.Final</version>
            <type>pom</type>
            <scope>import</scope>
          </dependency>
        </dependencies>
      </dependencyManagement>
    </profile>
  </profiles>
</project>
