<?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>phoenix</artifactId>
    <groupId>org.apache.phoenix</groupId>
    <version>5.2.2</version>
    <relativePath>../../pom.xml</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <artifactId>phoenix-mapreduce-byo-shaded-hbase-hbase-2.5</artifactId>
  <name>Phoenix Mapreduce</name>
  <description>Phoenix Mapreduce JAR for use with the "hbase mapredcp" classpath</description>
  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-site-plugin</artifactId>
          <configuration>
            <skip>true</skip>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <configuration>
            <skip>true</skip>
          </configuration>
        </plugin>
        <plugin>
          <artifactId>maven-jar-plugin</artifactId>
        </plugin>
        <plugin>
          <artifactId>maven-dependency-plugin</artifactId>
          <configuration>
            <ignoredDependencies>
              <ignoredDependency>*</ignoredDependency>
            </ignoredDependencies>
          </configuration>
        </plugin>
        <plugin>
          <artifactId>maven-shade-plugin</artifactId>
          <configuration>
            <filters>
              <filter>
                <artifact>*:*</artifact>
                <excludes>
                  <exclude>META-INF/maven/**</exclude>
                  <exclude>META-INF/*.SF</exclude>
                  <exclude>META-INF/*.DSA</exclude>
                  <exclude>META-INF/*.RSA</exclude>
                  <exclude>META-INF/license/*</exclude>
                  <exclude>META-INF/NOTICE</exclude>
                  <exclude>LICENSE.*</exclude>
                  <exclude>NOTICE.*</exclude>
                  <exclude>NOTICE</exclude>
                  <exclude>README*</exclude>
                </excludes>
              </filter>
              <filter>
                <artifact>org.apache.hadoop:hadoop-yarn-common</artifact>
                <excludes>
                  <exclude>org/apache/hadoop/yarn/factories/package-info.class</exclude>
                  <exclude>org/apache/hadoop/yarn/util/package-info.class</exclude>
                  <exclude>org/apache/hadoop/yarn/factory/providers/package-info.class</exclude>
                  <exclude>org/apache/hadoop/yarn/client/api/impl/package-info.class</exclude>
                  <exclude>org/apache/hadoop/yarn/client/api/package-info.class</exclude>
                  <exclude>webapps/**</exclude>
                </excludes>
              </filter>
              <filter>
                <artifact>org.apache.commons:commons-math3</artifact>
                <excludes>
                  <exclude>assets/**</exclude>
                </excludes>
              </filter>
              <filter>
                <artifact>org.apache.hbase:hbase-server</artifact>
                <excludes>
                  <exclude>hbase-webapps/**</exclude>
                </excludes>
              </filter>
              <filter>
                <artifact>org.apache.hbase.thirdparty:*</artifact>
                <excludes>
                  <exclude>/**</exclude>
                  <exclude>webapps/**</exclude>
                </excludes>
              </filter>
            </filters>
            <transformers>
              <transformer />
              <transformer>
                <resource>csv-bulk-load-config.properties</resource>
                <file>${project.basedir}/../config/csv-bulk-load-config.properties</file>
              </transformer>
              <transformer>
                <resource>README.md</resource>
                <file>${project.basedir}/../README.md</file>
              </transformer>
              <transformer>
                <resource>LICENSE.txt</resource>
                <file>${project.basedir}/../LICENSE</file>
              </transformer>
              <transformer>
                <resource>NOTICE</resource>
                <file>${project.basedir}/../NOTICE</file>
              </transformer>
            </transformers>
            <relocations>
              <relocation>
                <pattern>org/</pattern>
                <shadedPattern>${shaded.package}.org.</shadedPattern>
                <excludes>
                  <exclude>org/apache/hadoop/**</exclude>
                  <exclude>org/apache/htrace/**</exclude>
                  <exclude>org/slf4j/**</exclude>
                  <exclude>org/apache/commons/logging/**</exclude>
                  <exclude>org/apache/log4j/**</exclude>
                  <exclude>org/apache/logging/log4j/**</exclude>
                  <exclude>org/ietf/jgss/**</exclude>
                  <exclude>org/omg/**</exclude>
                  <exclude>org/w3c/dom/**</exclude>
                  <exclude>org/xml/sax/**</exclude>
                  <exclude>org/eclipse/jetty/**</exclude>
                  <exclude>org/apache/hbase/**</exclude>
                  <exclude>org/apache/phoenix/**</exclude>
                  <exclude>org/apache/omid/**</exclude>
                  <exclude>org/apache/commons/configuration2/**</exclude>
                </excludes>
              </relocation>
              <relocation>
                <pattern>com/beust/</pattern>
                <shadedPattern>${shaded.package}.com.beust.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/clearspring/</pattern>
                <shadedPattern>${shaded.package}.com.clearspring.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/codahale/</pattern>
                <shadedPattern>${shaded.package}.come.codahale.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/fasterxml/</pattern>
                <shadedPattern>${shaded.package}.com.fasterxml.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/force/</pattern>
                <shadedPattern>${shaded.package}.com.force.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/google/gson/</pattern>
                <shadedPattern>${shaded.package}.com.google.gson.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/google/inject/</pattern>
                <shadedPattern>${shaded.package}.com.google.inject.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/google/protobuf/</pattern>
                <shadedPattern>${hbase.shaded.package}.com.google.protobuf.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/ibm/</pattern>
                <shadedPattern>${shaded.package}.com.ibm.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/lmax/</pattern>
                <shadedPattern>${shaded.package}.com.lmax.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/sun/jna/</pattern>
                <shadedPattern>${shaded.package}.com.sun.jna.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>com/squareup</pattern>
                <shadedPattern>${shaded.package}.com.squareup.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>io/</pattern>
                <shadedPattern>${shaded.package}.io.</shadedPattern>
                <excludes>
                  <exclude>io/compression/**</exclude>
                  <exclude>io/mapfile/**</exclude>
                  <exclude>io/map/index/*</exclude>
                  <exclude>io/seqfile/**</exclude>
                  <exclude>io/file/buffer/size</exclude>
                  <exclude>io/skip/checksum/errors</exclude>
                  <exclude>io/sort/*</exclude>
                  <exclude>io/serializations</exclude>
                </excludes>
              </relocation>
              <relocation>
                <pattern>javax/el/</pattern>
                <shadedPattern>${shaded.package}.javax.el.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/cache/</pattern>
                <shadedPattern>${shaded.package}.javax.cache.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/servlet/jsp/</pattern>
                <shadedPattern>${shaded.package}.javax.servlet.jsp.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/ws/</pattern>
                <shadedPattern>${shaded.package}.javax.ws.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/annotation/</pattern>
                <shadedPattern>${shaded.package}.javax.annotation.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/inject/</pattern>
                <shadedPattern>${shaded.package}.javax.inject.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/validation/</pattern>
                <shadedPattern>${shaded.package}.javax.validation.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/xml/bind/</pattern>
                <shadedPattern>${shaded.package}.javax.xml.bind.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javax/activation/</pattern>
                <shadedPattern>${shaded.package}.javax.activation.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>net/</pattern>
                <shadedPattern>${shaded.package}.net.</shadedPattern>
                <excludes>
                  <exclude>net/topology/**</exclude>
                </excludes>
              </relocation>
              <relocation>
                <pattern>okio/</pattern>
                <shadedPattern>${shaded.package}.okio.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>it/</pattern>
                <shadedPattern>${shaded.package}.it.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>javassist/</pattern>
                <shadedPattern>${shaded.package}.javassist.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>jersey/</pattern>
                <shadedPattern>${shaded.package}.jersey.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>jline/</pattern>
                <shadedPattern>${shaded.package}.jline.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>mozilla/</pattern>
                <shadedPattern>${shaded.package}.mozilla.</shadedPattern>
              </relocation>
              <relocation>
                <pattern>tables/</pattern>
                <shadedPattern>${shaded.package}.tables.</shadedPattern>
              </relocation>
            </relocations>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-shade-plugin</artifactId>
        <executions>
          <execution>
            <id>lite-shaded</id>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
              <shadeTestJar>false</shadeTestJar>
              <createSourcesJar>${shadeSources}</createSourcesJar>
              <dependencyReducedPomLocation>${basedir}/target/pom.xml</dependencyReducedPomLocation>
              <artifactSet>
                <includes>
                  <include>*:*</include>
                </includes>
                <excludes>
                  <exclude>org.apache.phoenix:phoenix-client</exclude>
                  <exclude>xom:xom</exclude>
                </excludes>
              </artifactSet>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <properties>
    <maven.test.skip>true</maven.test.skip>
    <license.bundles.dependencies>true</license.bundles.dependencies>
    <source.skip>true</source.skip>
  </properties>
</project>
