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

    Copyright The OpenZipkin Authors
    SPDX-License-Identifier: Apache-2.0

-->
<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">
  <parent>
    <groupId>io.zipkin.contrib.otel</groupId>
    <artifactId>zipkin-otel-parent</artifactId>
    <version>0.1.0</version>
    <relativePath>../pom.xml</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <artifactId>encoder-brave</artifactId>
  <name>Brave Encoder: OpenTelemetry Trace</name>

  <properties>
    <main.basedir>${project.basedir}/..</main.basedir>
  </properties>

  <dependencies>
    <dependency>
      <groupId>io.opentelemetry</groupId>
      <artifactId>opentelemetry-api</artifactId>
      <version>${opentelemetry.version}</version>
      <exclusions>
        <exclusion>
          <groupId>io.opentelemetry</groupId>
          <artifactId>opentelemetry-context</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>io.opentelemetry.proto</groupId>
      <artifactId>opentelemetry-proto</artifactId>
      <version>${opentelemetry-proto.version}</version>
    </dependency>
    <dependency>
      <groupId>io.opentelemetry.semconv</groupId>
      <artifactId>opentelemetry-semconv</artifactId>
      <version>${opentelemetry-semconv.version}</version>
    </dependency>
    <dependency>
      <groupId>com.google.protobuf</groupId>
      <artifactId>protobuf-java</artifactId>
      <version>${protobuf.version}</version>
      <!-- We use provided scope to avoid pinning a protobuf version -->
      <scope>provided</scope>
    </dependency>

    <!-- Encoder/Data type deps -->
    <dependency>
      <groupId>io.zipkin.reporter2</groupId>
      <artifactId>zipkin-reporter-brave</artifactId>
      <version>${zipkin-reporter.version}</version>
    </dependency>
    <dependency>
      <groupId>${brave.groupId}</groupId>
      <artifactId>brave</artifactId>
      <version>${brave.version}</version>
      <!-- Don't pin Brave -->
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>${brave.groupId}</groupId>
      <artifactId>brave-instrumentation-http</artifactId>
      <version>${brave.version}</version>
      <!-- Don't pin Brave -->
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>com.squareup.okhttp3</groupId>
      <artifactId>okhttp</artifactId>
      <version>${okhttp.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>io.zipkin.reporter2</groupId>
      <artifactId>zipkin-sender-okhttp3</artifactId>
      <version>${zipkin-reporter.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>${armeria.groupId}</groupId>
      <artifactId>armeria-junit5</artifactId>
      <version>${armeria.version}</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.testcontainers</groupId>
      <artifactId>testcontainers</artifactId>
      <version>${testcontainers.version}</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <groupId>org.slf4j</groupId>
          <artifactId>*</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.testcontainers</groupId>
      <artifactId>junit-jupiter</artifactId>
      <version>${testcontainers.version}</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
      </resource>
    </resources>
  </build>
</project>
