<?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>
    <artifactId>immutables</artifactId>
    <groupId>org.immutables</groupId>
    <version>2.0.15</version>
  </parent>
  <artifactId>gson</artifactId>

  <name>${project.groupId}.${project.artifactId}</name>
  <description>Gson integration for Immutables. Also includes optional integration with Jackson to speed-up
    streaming parsing of Gson, while using all of gson binding infrastructure.
  </description>

  <dependencies>
    <dependency>
      <!-- Required Gson dependency -->
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.3.1</version>
    </dependency>
    <dependency>
      <!-- Compile only META-INF/services generator -->
      <groupId>org.immutables</groupId>
      <artifactId>metainf</artifactId>
      <version>${project.version}</version>
      <optional>true</optional>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <!-- Compile only annotations. Used to document and statically verify code properties. -->
      <groupId>com.google.code.findbugs</groupId>
      <artifactId>jsr305</artifactId>
      <version>1.3.9</version>
      <scope>provided</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <!-- Optional. Jackson used to speedup Gson's streaming if performance absolutely matters -->
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>2.5.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <!-- Optional. Jackson binding have utility used when using polymorhic marshaling with jackson-core implementation -->
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.5.0</version>
      <optional>true</optional>
    </dependency>
    <dependency>
      <!-- Optional. Message body reader and writer provider implementation, optional dependency on JAX-RS -->
      <groupId>javax.ws.rs</groupId>
      <artifactId>javax.ws.rs-api</artifactId>
      <version>2.0</version>
      <optional>true</optional>
    </dependency>

    <!-- it's better have just 'value' dep, but due to some maven 3.3.1 bug,
    it exposes both relocated and not relocated classess, having processor to run twice -->
    <dependency>
      <groupId>org.immutables</groupId>
      <artifactId>value-annotations</artifactId>
      <version>${project.version}</version>
      <scope>provided</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.immutables</groupId>
      <artifactId>value-processor</artifactId>
      <version>${project.version}</version>
      <scope>provided</scope>
      <optional>true</optional>
    </dependency>

    <dependency>
      <!-- Test only utilities -->
      <groupId>org.immutables</groupId>
      <artifactId>testing</artifactId>
      <version>${project.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <!-- Test only jersey dependency -->
      <groupId>org.glassfish.jersey.core</groupId>
      <artifactId>jersey-client</artifactId>
      <version>2.11</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <!-- Test only jersey dependency -->
      <groupId>org.glassfish.jersey.containers</groupId>
      <artifactId>jersey-container-grizzly2-http</artifactId>
      <version>2.11</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
