<?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>
    <artifactId>ons-client-all</artifactId>
    <groupId>com.aliyun.openservices</groupId>
    <version>1.9.6.Final</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <artifactId>ons-client</artifactId>
  <name>ons-client ${project.version}</name>
  <contributors>
    <contributor>
      <properties>
        <codeName>null</codeName>
        <codeUrl>http://gitlab.alibaba-inc.com/middleware/ons commit:2e30ebd73</codeUrl>
        <description>contributors added by SCM Plugin, please don't modify it!</description>
        <provider>zhouxiang.zzx@alibaba-inc.com</provider>
      </properties>
    </contributor>
  </contributors>
  <profiles>
    <profile>
      <id>client-shade</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
            <executions>
              <execution>
                <id>default-jar</id>
                <phase>package</phase>
                <goals>
                  <goal>jar</goal>
                </goals>
                <configuration>
                  <archive>
                    <manifest>
                      <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                      <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                      <addClasspath>false</addClasspath>
                    </manifest>
                    <manifestEntries>
                      <Project-Version>1.9.6.Final</Project-Version>
                      <Git-Revision>${git.commit.id}</Git-Revision>
                      <Build-Branch>${git.branch}</Build-Branch>
                      <Build-Timestamp>2025-07-03T09:06:28Z</Build-Timestamp>
                    </manifestEntries>
                  </archive>
                </configuration>
              </execution>
              <execution>
                <phase>package</phase>
                <goals>
                  <goal>jar</goal>
                </goals>
                <configuration>
                  <classifier>noshade</classifier>
                  <archive>
                    <manifest>
                      <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                      <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                      <addClasspath>false</addClasspath>
                    </manifest>
                    <manifestEntries>
                      <Project-Version>1.9.6.Final</Project-Version>
                      <Git-Revision>${git.commit.id}</Git-Revision>
                      <Build-Branch>${git.branch}</Build-Branch>
                      <Build-Timestamp>2025-07-03T09:06:28Z</Build-Timestamp>
                    </manifestEntries>
                  </archive>
                </configuration>
              </execution>
            </executions>
            <configuration>
              <archive>
                <manifest>
                  <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                  <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                  <addClasspath>false</addClasspath>
                </manifest>
                <manifestEntries>
                  <Project-Version>1.9.6.Final</Project-Version>
                  <Git-Revision>${git.commit.id}</Git-Revision>
                  <Build-Branch>${git.branch}</Build-Branch>
                  <Build-Timestamp>2025-07-03T09:06:28Z</Build-Timestamp>
                </manifestEntries>
              </archive>
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-shade-plugin</artifactId>
            <version>3.2.4</version>
            <executions>
              <execution>
                <goals>
                  <goal>shade</goal>
                </goals>
                <configuration>
                  <keepDependenciesWithProvidedScope>false</keepDependenciesWithProvidedScope>
                  <promoteTransitiveDependencies>false</promoteTransitiveDependencies>
                  <createDependencyReducedPom>true</createDependencyReducedPom>
                  <minimizeJar>false</minimizeJar>
                  <createSourcesJar>true</createSourcesJar>
                  <shadeSourcesContent>true</shadeSourcesContent>
                  <artifactSet>
                    <includes>
                      <include>com.alibaba:fastjson</include>
                      <include>io.netty:netty-all</include>
                      <include>io.netty:netty-common</include>
                      <include>io.netty:netty-buffer</include>
                      <include>io.netty:netty-handler</include>
                      <include>io.netty:netty-transport</include>
                      <include>io.netty:netty-resolver</include>
                      <include>io.netty:netty-codec</include>
                      <include>io.opentelemetry:opentelemetry-api</include>
                      <include>io.opentelemetry:opentelemetry-context</include>
                      <include>io.opentelemetry:opentelemetry-exporter-otlp-metrics</include>
                      <include>io.opentelemetry:opentelemetry-sdk</include>
                      <include>io.prometheus:*</include>
                      <include>com.alibaba.rocketmq:rocketmq-logging</include>
                      <include>com.alibaba.rocketmq:rocketmq-common</include>
                      <include>com.alibaba.rocketmq:rocketmq-remoting</include>
                      <include>com.alibaba.rocketmq:rocketmq-client</include>
                      <include>commons-codec:commons-codec</include>
                      <include>org.apache.commons:commons-lang3</include>
                      <include>com.google.guava:guava</include>
                      <include>com.aliyun.openservices:ons-api</include>
                      <include>com.aliyun.openservices:ons-auth4client</include>
                      <include>com.aliyun.openservices:ons-trace-core</include>
                    </includes>
                  </artifactSet>
                  <transformers>
                    <transformer>
                      <resource>META-INF/services/javax.ws.rs.ext.Providers</resource>
                      <resource>META-INF/services/javax.ws.rs.ext.MessageBodyReader</resource>
                      <resource>META-INF/services/javax.ws.rs.ext.MessageBodyWriter</resource>
                    </transformer>
                    <transformer />
                    <transformer />
                    <transformer>
                      <addHeader>false</addHeader>
                    </transformer>
                    <transformer />
                  </transformers>
                  <relocations>
                    <relocation>
                      <pattern>io.netty</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.io.netty</shadedPattern>
                    </relocation>
                    <relocation>
                      <pattern>io.opentelemetry</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.io.opentelemetry</shadedPattern>
                    </relocation>
                    <relocation>
                      <pattern>io.prometheus</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.io.prometheus</shadedPattern>
                    </relocation>
                    <relocation>
                      <pattern>com.alibaba.fastjson</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.com.alibaba.fastjson</shadedPattern>
                    </relocation>
                    <relocation>
                      <pattern>com.alibaba.rocketmq</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.com.alibaba.rocketmq</shadedPattern>
                    </relocation>
                    <relocation>
                      <pattern>org.apache.commons</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.org.apache.commons</shadedPattern>
                    </relocation>
                    <relocation>
                      <pattern>com.google</pattern>
                      <shadedPattern>com.aliyun.openservices.shade.com.google</shadedPattern>
                    </relocation>
                  </relocations>
                </configuration>
              </execution>
            </executions>
            <configuration>
              <keepDependenciesWithProvidedScope>false</keepDependenciesWithProvidedScope>
              <promoteTransitiveDependencies>false</promoteTransitiveDependencies>
              <createDependencyReducedPom>true</createDependencyReducedPom>
              <minimizeJar>false</minimizeJar>
              <createSourcesJar>true</createSourcesJar>
              <shadeSourcesContent>true</shadeSourcesContent>
              <artifactSet>
                <includes>
                  <include>com.alibaba:fastjson</include>
                  <include>io.netty:netty-all</include>
                  <include>io.netty:netty-common</include>
                  <include>io.netty:netty-buffer</include>
                  <include>io.netty:netty-handler</include>
                  <include>io.netty:netty-transport</include>
                  <include>io.netty:netty-resolver</include>
                  <include>io.netty:netty-codec</include>
                  <include>io.opentelemetry:opentelemetry-api</include>
                  <include>io.opentelemetry:opentelemetry-context</include>
                  <include>io.opentelemetry:opentelemetry-exporter-otlp-metrics</include>
                  <include>io.opentelemetry:opentelemetry-sdk</include>
                  <include>io.prometheus:*</include>
                  <include>com.alibaba.rocketmq:rocketmq-logging</include>
                  <include>com.alibaba.rocketmq:rocketmq-common</include>
                  <include>com.alibaba.rocketmq:rocketmq-remoting</include>
                  <include>com.alibaba.rocketmq:rocketmq-client</include>
                  <include>commons-codec:commons-codec</include>
                  <include>org.apache.commons:commons-lang3</include>
                  <include>com.google.guava:guava</include>
                  <include>com.aliyun.openservices:ons-api</include>
                  <include>com.aliyun.openservices:ons-auth4client</include>
                  <include>com.aliyun.openservices:ons-trace-core</include>
                </includes>
              </artifactSet>
              <transformers>
                <transformer>
                  <resource>META-INF/services/javax.ws.rs.ext.Providers</resource>
                  <resource>META-INF/services/javax.ws.rs.ext.MessageBodyReader</resource>
                  <resource>META-INF/services/javax.ws.rs.ext.MessageBodyWriter</resource>
                </transformer>
                <transformer />
                <transformer />
                <transformer>
                  <addHeader>false</addHeader>
                </transformer>
                <transformer />
              </transformers>
              <relocations>
                <relocation>
                  <pattern>io.netty</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.io.netty</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>io.opentelemetry</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.io.opentelemetry</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>io.prometheus</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.io.prometheus</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>com.alibaba.fastjson</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.com.alibaba.fastjson</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>com.alibaba.rocketmq</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.com.alibaba.rocketmq</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>org.apache.commons</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.org.apache.commons</shadedPattern>
                </relocation>
                <relocation>
                  <pattern>com.google</pattern>
                  <shadedPattern>com.aliyun.openservices.shade.com.google</shadedPattern>
                </relocation>
              </relocations>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
  <dependencies>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.7</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.13.2</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <artifactId>hamcrest-core</artifactId>
          <groupId>org.hamcrest</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.assertj</groupId>
      <artifactId>assertj-core</artifactId>
      <version>2.6.0</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
      <version>2.23.0</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <artifactId>byte-buddy</artifactId>
          <groupId>net.bytebuddy</groupId>
        </exclusion>
        <exclusion>
          <artifactId>byte-buddy-agent</artifactId>
          <groupId>net.bytebuddy</groupId>
        </exclusion>
        <exclusion>
          <artifactId>objenesis</artifactId>
          <groupId>org.objenesis</groupId>
        </exclusion>
      </exclusions>
    </dependency>
  </dependencies>
  <properties>
    <maven.compiler.source>1.6</maven.compiler.source>
    <maven.compiler.target>1.6</maven.compiler.target>
  </properties>
</project>
