<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<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">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.apache.phoenix</groupId>
		<artifactId>phoenix</artifactId>
		<version>5.1.0-SNAPSHOT</version>
	</parent>

	<artifactId>phoenix-pherf</artifactId>
	<packaging>jar</packaging>
	<name>Phoenix - Pherf</name>

	<properties>
		<top.dir>${project.basedir}/..</top.dir>
		<shaded.package>org.apache.phoenix.shaded</shaded.package>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.apache.phoenix</groupId>
			<artifactId>phoenix-core</artifactId>
		</dependency>
		<dependency>
			<groupId>org.apache.phoenix</groupId>
			<artifactId>phoenix-core</artifactId>
			<type>test-jar</type>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.googlecode.java-diff-utils</groupId>
			<artifactId>diffutils</artifactId>
			<version>1.2.1</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.3.2</version>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-math3</artifactId>
			<version>3.3</version>
		</dependency>
    <dependency>
      <groupId>commons-cli</groupId>
      <artifactId>commons-cli</artifactId>
    </dependency>

		<!-- Test Dependencies -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.jcabi</groupId>
			<artifactId>jcabi-jdbc</artifactId>
			<version>0.15</version>
		</dependency>
		<dependency>
			<groupId>org.hamcrest</groupId>
			<artifactId>hamcrest-junit</artifactId>
			<version>1.0.0.0</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>com.github.stefanbirkner</groupId>
			<artifactId>system-rules</artifactId>
			<version>1.8.0</version>
		</dependency>
		<dependency>
			<groupId>org.apache.hbase</groupId>
			<artifactId>hbase-testing-util</artifactId>
			<scope>test</scope>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>org.apache.hbase</groupId>
			<artifactId>hbase-it</artifactId>
			<type>test-jar</type>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tephra</groupId>
			<artifactId>tephra-core</artifactId>
			<type>test-jar</type>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.hadoop</groupId>
			<artifactId>hadoop-minicluster</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-all</artifactId>
			<scope>test</scope>
		</dependency>
		<!-- Java 11 -->
		<dependency>
			<groupId>jakarta.activation</groupId>
			<artifactId>jakarta.activation-api</artifactId>
			<version>1.2.1</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jaxb</groupId>
			<artifactId>jaxb-runtime</artifactId>
			<version>2.3.2</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
			</resource>
			<resource>
				<directory>config</directory>
				<excludes>
					<exclude>**/*.sql</exclude>
					<exclude>**/*.xml</exclude>
				</excludes>
			</resource>
		</resources>
		<testResources>
			<testResource>
				<directory>src/test/resources</directory>
			</testResource>
			<testResource>
				<directory>${project.basedir}/config</directory>
			</testResource>
		</testResources>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-failsafe-plugin</artifactId>
			</plugin>
			<plugin>
				<artifactId>maven-dependency-plugin</artifactId>
			</plugin>

			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.7</source>
					<target>1.7</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
					<configuration>
						<workingDirectory>${java.io.tmpdir}</workingDirectory>
						<forkCount>1</forkCount>
					</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
			</plugin>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-install-plugin</artifactId>
			<executions>
				<execution>
					<goals>
						<goal>install-file</goal>
					</goals>
					<id>default-install</id>
					<configuration>
						<skip>true</skip>
					</configuration>
					<phase>install</phase>
				</execution>
			</executions>
			<configuration>
				<file>${basedir}/target/phoenix-pherf-${project.version}-minimal.jar</file>
			</configuration>
		</plugin>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-shade-plugin</artifactId>
			<executions>
				<execution>
					<phase>package</phase>
					<goals>
						<goal>shade</goal>
					</goals>
					<configuration>
						<finalName>phoenix-pherf-${project.version}-minimal</finalName>
						<shadedArtifactAttached>false</shadedArtifactAttached>
						<promoteTransitiveDependencies>true</promoteTransitiveDependencies>
						<shadeTestJar>false</shadeTestJar>
						<transformers>
							<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
							<transformer
									implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
								<resource>README.md</resource>
								<file>${project.basedir}/../README.md</file>
							</transformer>
							<transformer
									implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
								<resource>LICENSE.txt</resource>
								<file>${project.basedir}/../LICENSE</file>
							</transformer>
							<transformer
									implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
								<resource>NOTICE</resource>
								<file>${project.basedir}/../NOTICE</file>
							</transformer>
						</transformers>
						<artifactSet>
							<includes>
								<include>org.apache.phoenix:phoenix-pherf</include>
								<include>com.googlecode.java-diff-utils:diffutils</include>
								<include>org.apache.commons:commons-lang3</include>
								<include>org.apache.commons:commons-math3</include>
								<include>commons-cli:commons-cli</include>
								<include>joda-time:joda-time</include>
								<include>org.apache.commons:commons-csv</include>
								<include>commons-lang:commons-lang</include>
							</includes>
						</artifactSet>
						<filters>
							<filter>
								<artifact>*:*</artifact>
								<excludes>
									<exclude>META-INF/*.SF</exclude>
									<exclude>META-INF/*.DSA</exclude>
									<exclude>META-INF/*.RSA</exclude>
									<exclude>META-INF/license/*</exclude>
									<exclude>LICENSE.*</exclude>
									<exclude>NOTICE.*</exclude>
								</excludes>
							</filter>
						</filters>

						<relocations>

							<!-- COM relocation -->
							<relocation>
								<pattern>com.codahale</pattern>
								<shadedPattern>${shaded.package}.com.codahale</shadedPattern>
							</relocation>
							<relocation>
								<pattern>com.fasterxml</pattern>
								<shadedPattern>${shaded.package}.com.fasterxml</shadedPattern>
							</relocation>
							<relocation>
								<pattern>com.jamesmurty</pattern>
								<shadedPattern>${shaded.package}.com.jamesmurty</shadedPattern>
							</relocation>
							<relocation>
								<pattern>com.jcraft</pattern>
								<shadedPattern>${shaded.package}.com.jcraft</shadedPattern>
							</relocation>
							<relocation>
								<pattern>com.lmax</pattern>
								<shadedPattern>${shaded.package}.com.lmax</shadedPattern>
							</relocation>
							<relocation>
								<pattern>com.thoughtworks</pattern>
								<shadedPattern>${shaded.package}.com.thoughtworks</shadedPattern>
							</relocation>
							<relocation>
								<pattern>com.yammer</pattern>
								<shadedPattern>${shaded.package}.com.yammer</shadedPattern>
							</relocation>

							<!-- IO relocations -->
							<relocation>
								<pattern>io.netty</pattern>
								<shadedPattern>${shaded.package}.io.netty</shadedPattern>
							</relocation>

							<!-- ORG relocations -->
							<relocation>
								<pattern>org.antlr</pattern>
								<shadedPattern>${shaded.package}.org.antlr</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.aopalliance</pattern>
								<shadedPattern>${shaded.package}.org.aopalliance</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.codehaus</pattern>
								<shadedPattern>${shaded.package}.org.codehaus</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.fusesource</pattern>
								<shadedPattern>${shaded.package}.org.fusesource</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.hamcrest</pattern>
								<shadedPattern>${shaded.package}.org.hamcrest</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.hsqldb</pattern>
								<shadedPattern>${shaded.package}.org.hsqldb</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.iq80</pattern>
								<shadedPattern>${shaded.package}.org.iq80</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.jamon</pattern>
								<shadedPattern>${shaded.package}.org.jamon</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.jboss</pattern>
								<shadedPattern>${shaded.package}.org.jboss</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.jcodings</pattern>
								<shadedPattern>${shaded.package}.org.jcodings</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.jets3t</pattern>
								<shadedPattern>${shaded.package}.org.jets3t</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.joda</pattern>
								<shadedPattern>${shaded.package}.org.joda</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.joni</pattern>
								<shadedPattern>${shaded.package}.org.joni</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.junit</pattern>
								<shadedPattern>${shaded.package}.org.junit</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.kosmix</pattern>
								<shadedPattern>${shaded.package}.org.kosmix</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.mortbay</pattern>
								<shadedPattern>${shaded.package}.org.mortbay</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.objectweb</pattern>
								<shadedPattern>${shaded.package}.org.objectweb</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.stringtemplate</pattern>
								<shadedPattern>${shaded.package}.org.stringtemplate</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.tukaani</pattern>
								<shadedPattern>${shaded.package}.org.tukaani</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.znerd</pattern>
								<shadedPattern>${shaded.package}.org.znerd</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.avro</pattern>
								<shadedPattern>${shaded.package}.org.apache.avro</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.commons</pattern>
								<shadedPattern>${shaded.package}.org.apache.commons</shadedPattern>
								<excludes>
									<exclude>org.apache.commons.csv.**</exclude>
									<exclude>org.apache.commons.logging.**</exclude>
								</excludes>
							</relocation>
							<relocation>
								<pattern>org.apache.directory</pattern>
								<shadedPattern>${shaded.package}.org.apache.directory</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.http</pattern>
								<shadedPattern>${shaded.package}.org.apache.http</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.jasper</pattern>
								<shadedPattern>${shaded.package}.org.apache.jasper</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.jute</pattern>
								<shadedPattern>${shaded.package}.org.apache.jute</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.mina</pattern>
								<shadedPattern>${shaded.package}.org.apache.mina</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.oro</pattern>
								<shadedPattern>${shaded.package}.org.apache.oro</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.taglibs</pattern>
								<shadedPattern>${shaded.package}.org.apache.taglibs</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.thrift</pattern>
								<shadedPattern>${shaded.package}.org.apache.thrift</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.tools</pattern>
								<shadedPattern>${shaded.package}.org.apache.tools</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.twill</pattern>
								<shadedPattern>${shaded.package}.org.apache.twill</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.velocity</pattern>
								<shadedPattern>${shaded.package}.org.apache.velocity</shadedPattern>
							</relocation>
							<relocation>
								<pattern>org.apache.zookeeper</pattern>
								<shadedPattern>${shaded.package}.org.apache.zookeeper</shadedPattern>
							</relocation>

							<!-- NET relocations -->
							<relocation>
								<pattern>net</pattern>
								<shadedPattern>${shaded.package}.net</shadedPattern>
							</relocation>

							<!-- Misc relocations -->
							<relocation>
								<pattern>antlr</pattern>
								<shadedPattern>${shaded.package}.antlr</shadedPattern>
							</relocation>
							<relocation>
								<pattern>it.unimi</pattern>
								<shadedPattern>${shaded.package}.it.unimi</shadedPattern>
							</relocation>
							<relocation>
								<pattern>jline</pattern>
								<shadedPattern>${shaded.package}.jline</shadedPattern>
							</relocation>
							<relocation>
								<pattern>junit</pattern>
								<shadedPattern>${shaded.package}.junit</shadedPattern>
							</relocation>
						</relocations>
					</configuration>
				</execution>
			</executions>
		</plugin>



			<plugin>
				<groupId>org.apache.rat</groupId>
				<artifactId>apache-rat-plugin</artifactId>
				<configuration>
					<excludes>
						<exclude>*/RESULTS/**</exclude>
						<exclude>README.md</exclude>
					</excludes>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>
