<?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/maven-v4_0_0.xsd">

  <parent>
    <groupId>io.jooby</groupId>
    <artifactId>modules</artifactId>
    <version>3.2.3</version>
  </parent>

  <modelVersion>4.0.0</modelVersion>
  <artifactId>jooby-netty</artifactId>

  <dependencies>
    <dependency>
      <groupId>io.jooby</groupId>
      <artifactId>jooby</artifactId>
      <version>${jooby.version}</version>
    </dependency>

    <!-- Netty -->
    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-handler</artifactId>
    </dependency>

    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-codec-http</artifactId>
    </dependency>

    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-codec-http2</artifactId>
      <version>${netty.version}</version>
    </dependency>

    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-transport-native-epoll</artifactId>
      <version>${netty.version}</version>
      <optional>true</optional>
    </dependency>

    <dependency>
      <groupId>io.netty</groupId>
      <artifactId>netty-transport-native-kqueue</artifactId>
      <version>${netty.version}</version>
      <optional>true</optional>
    </dependency>

    <dependency>
      <groupId>io.netty.incubator</groupId>
      <artifactId>netty-incubator-transport-native-io_uring</artifactId>
      <version>0.0.25.Final</version>
      <optional>true</optional>
    </dependency>

    <!-- Test dependencies -->
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.jacoco</groupId>
      <artifactId>org.jacoco.agent</artifactId>
      <classifier>runtime</classifier>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <profiles>
    <!-- Netty: -->
    <profile>
      <id>netty-linux</id>
      <activation>
        <os>
          <family>linux</family>
        </os>
      </activation>
      <dependencies>
        <!-- epoll -->
        <dependency>
          <groupId>io.netty</groupId>
          <artifactId>netty-transport-native-epoll</artifactId>
          <version>${netty.version}</version>
          <classifier>linux-x86_64</classifier>
        </dependency>
      </dependencies>
    </profile>
    <profile>
      <id>netty-windows_x86</id>
      <activation>
        <os>
          <family>windows</family>
        </os>
      </activation>
    </profile>
    <profile>
      <id>netty-mac_x86_64</id>
      <activation>
        <os>
          <family>mac</family>
        </os>
      </activation>
      <dependencies>
        <dependency>
          <groupId>io.netty</groupId>
          <artifactId>netty-transport-native-kqueue</artifactId>
          <version>${netty.version}</version>
          <classifier>osx-x86_64</classifier>
        </dependency>
      </dependencies>
    </profile>
  </profiles>
</project>
