<?xml version="1.0" encoding="UTF-8"?>
<project
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"
	xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.discoverydns.dnsapi</groupId>
	<artifactId>dnsapi-client</artifactId>
	<version>1.2.2</version>
	<packaging>jar</packaging>

	<name>DNSAPI Client</name>
	<description>DNS API Client Project</description>
	<url>http://discoverydns.github.io/dnsapi-client/</url>

	<scm>
		<url>git@github.com:discoverydns/dnsapi-client.git</url>
		<connection>scm:git:git@github.com:discoverydns/dnsapi-client.git</connection>
	</scm>

	<developers>
		<developer>
			<id>ddns</id>
			<name>Discovery DNS</name>
			<email>support@discoverydns.com</email>
		</developer>
	</developers>


	<licenses>
		<license>
			<name>GNU Lesser General Public License, LGPL v3</name>
			<url>http://www.gnu.org/licenses/lgpl.txt</url>
			<distribution>repo</distribution>
		</license>
	</licenses>

	<organization>
		<name>AusRegistry International</name>
		<url>http://www.ausregistry.com</url>
	</organization>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.6</java.version>

		<!-- Dependencies -->
		<ddns-dnsjava.version>1.1.2-r1685</ddns-dnsjava.version>
		<jackson.version>2.2.2</jackson.version>
		<guava.version>14.0.1</guava.version>
		<jodatime.version>2.2</jodatime.version>
		<logback.version>1.0.13</logback.version>
		<slf4j.version>1.7.2</slf4j.version>
		<jersey.version>2.2</jersey.version>

		<!-- Test dependencies -->
		<junit.version>4.11</junit.version>
		<mockito.version>1.9.5</mockito.version>
		<hamcrest.version>1.3</hamcrest.version>

		<!-- Plugins -->
		<plugin.compiler.version>2.3.2</plugin.compiler.version>
		<plugin.eclipse.version>2.9</plugin.eclipse.version>
		<plugin.clean.version>2.4.1</plugin.clean.version>
		<plugin.shade.version>2.1</plugin.shade.version>
		<plugin.source.version>2.1.2</plugin.source.version>
		<plugin.javadoc.version>2.9.1</plugin.javadoc.version>
		<plugin.resources.version>2.5</plugin.resources.version>
		<plugin.jar.version>2.3.2</plugin.jar.version>
		<plugin.deploy.version>2.7</plugin.deploy.version>
		<plugin.site.version>3.0</plugin.site.version>
		<plugin.surefire.version>2.14</plugin.surefire.version>
	</properties>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>${plugin.compiler.version}</version>
				<configuration>
					<source>${java.version}</source>
					<target>${java.version}</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>${plugin.source.version}</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>${plugin.javadoc.version}</version>
				<configuration>
					<quiet>true</quiet>
					<!--<additionalparam>-Xdoclint:none</additionalparam>-->
				</configuration>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>${plugin.resources.version}</version>
				<configuration>
					<outputDirectory />
					<encoding>UTF-8</encoding>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>${plugin.jar.version}</version>
				<configuration>
					<archive>
						<manifest>
							<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
						</manifest>
					</archive>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>test-jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-clean-plugin</artifactId>
				<version>${plugin.clean.version}</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-deploy-plugin</artifactId>
				<version>${plugin.deploy.version}</version>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
				<version>${plugin.site.version}</version>
				<configuration>
					<skip>true</skip>
					<skipDeploy>true</skipDeploy>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-eclipse-plugin</artifactId>
				<version>${plugin.eclipse.version}</version>
				<configuration>
					<downloadJavadocs>true</downloadJavadocs>
					<downloadSources>true</downloadSources>
					<!--<additionalBuildcommands> <buildCommand> <name>org.springframework.ide.eclipse.core.springbuilder</name> 
						</buildCommand> </additionalBuildcommands> <additionalProjectnatures> <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature> 
						</additionalProjectnatures> -->
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>${plugin.surefire.version}</version>
				<configuration>
					<!--run in parallel -->
					<parallel>methods</parallel>
					<threadCount>10</threadCount>
					<!--<argLine>-XX:PermSize=256m -XX:MaxPermSize=512m</argLine> -->
					<!-- TODO useUnlimitedThreads attribute The most obvious one is by using 
						the parallel parameter. The possible values depend on the test provider used. 
						For JUnit 4.7 and onwards, this may be methods, classes, or both. See this 
						http://maven.apache.org/surefire/maven-surefire-plugin/examples/fork-options-and-parallel-execution.html 
						//limiting tests that run public interface slowtests{} public interface SlowerTests 
						extends SlowTests{} public class AppTest { @Test @Category(com.mycompany.SlowTests.class) 
						public void testSlow() { System.out.println("slow"); } } <groups>com.mycompany.SlowTests</groups> -->
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-report-plugin</artifactId>
				<version>2.14</version>
				<configuration>
					<showSuccess>true</showSuccess>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>1.4</version>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
            <plugin>
                <groupId>org.sonatype.plugins</groupId>
                <artifactId>nexus-staging-maven-plugin</artifactId>
                <version>1.6.2</version>
                <extensions>true</extensions>
                <configuration>
                    <serverId>ossrh</serverId>
                    <nexusUrl>https://oss.sonatype.org/</nexusUrl>
                    <autoReleaseAfterClose>true</autoReleaseAfterClose>
                </configuration>
            </plugin>
		</plugins>

	</build>

	<dependencies>
		<!-- dnsjava -->
		<dependency>
			<groupId>com.discoverydns</groupId>
			<artifactId>ddns-dnsjava</artifactId>
			<version>${ddns-dnsjava.version}</version>
		</dependency>
		<!-- Jackson -->
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.datatype</groupId>
			<artifactId>jackson-datatype-joda</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.jaxrs</groupId>
			<artifactId>jackson-jaxrs-json-provider</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<!-- Jersey -->
		<dependency>
			<groupId>org.glassfish.jersey.core</groupId>
			<artifactId>jersey-client</artifactId>
			<version>${jersey.version}</version>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.connectors</groupId>
			<artifactId>jersey-apache-connector</artifactId>
			<version>${jersey.version}</version>
			<exclusions>
				<exclusion>
					<groupId>commons-logging</groupId>
					<artifactId>commons-logging</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<!-- Misc. Utils -->
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>${guava.version}</version>
		</dependency>
		<dependency>
			<groupId>joda-time</groupId>
			<artifactId>joda-time</artifactId>
			<version>${jodatime.version}</version>
		</dependency>
		<!-- Logging -->
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jul-to-slf4j</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>log4j-over-slf4j</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>jcl-over-slf4j</artifactId>
			<version>${slf4j.version}</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-core</artifactId>
			<version>${logback.version}</version>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<version>${logback.version}</version>
		</dependency>

		<!-- Test -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>${junit.version}</version>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>org.hamcrest</groupId>
					<artifactId>hamcrest-core</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.hamcrest</groupId>
			<artifactId>hamcrest-all</artifactId>
			<version>${hamcrest.version}</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>${mockito.version}</version>
			<scope>test</scope>
			<exclusions>
				<exclusion>
					<groupId>org.hamcrest</groupId>
					<artifactId>hamcrest-core</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
	</dependencies>
    <distributionManagement>
        <snapshotRepository>
            <id>ossrh</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        </snapshotRepository>
        <repository>
            <id>ossrh</id>
            <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
    </distributionManagement>
</project>
