<?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/xsd/maven-4.0.0.xsd">

	<modelVersion>4.0.0</modelVersion>
	<groupId>es.joninx</groupId>
	<artifactId>citybikes-java-client</artifactId>
	<version>1.3.1-RELEASE</version>
	<name>${project.groupId}:${project.artifactId}</name> 
	<description>Citybikes java client</description>
	<url>https://github.com/russellhoff/citybikes-java-client/</url>
	<packaging>jar</packaging>

	<developers>
		<developer>
			<email>captain06@gmail.com</email>
			<name>Jon Inazio Sánchez Martínez</name>
			<url>https://www.joninx.es/</url>
		</developer>
	</developers>

	<inceptionYear>2019</inceptionYear>

	<licenses>
        <license>
            <name>GNU GPL</name>
            <url>LICENSE.txt</url>
        </license>
    </licenses>

	<scm>
        <url>https://github.com/russellhoff/citybikes-java-client/</url>
        <connection>scm:git:git@github.com:russellhoff/citybikes-java-client.git</connection>
        <developerConnection>scm:git:git@github.com:russellhoff/citybikes-java-client.git</developerConnection>
		<tag>HEAD</tag>
	</scm>

	<issueManagement>
        <system>GitHub</system>
        <url>https://github.com/russellhoff/citybikes-java-client/issues</url>
    </issueManagement>

	<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>

	<properties>
	    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<java.version>1.8</java.version>
		<maven.compiler.source>${java.version}</maven.compiler.source>
    	<maven.compiler.target>${java.version}</maven.compiler.target>

		<junit.version>5.6.0</junit.version>

		<jackson.version>2.10.3</jackson.version>
		<lombok.version>1.18.12</lombok.version>
		<retrofit.version>2.7.2</retrofit.version>
		<okhttp.version>4.4.0</okhttp.version>
		<okhttp-apache.version>3.13.1</okhttp-apache.version>
		<commons-lang3.version>3.9</commons-lang3.version>
		<commons-configuration2.version>2.6</commons-configuration2.version>
		<commons-beanutils.version>1.9.4</commons-beanutils.version>
		<log4j.version>2.13.1</log4j.version>
		<jts.version>1.16.1</jts.version>
	</properties>

	<dependencies>

		<!-- Retrofit 2 -->
		<dependency>
			<groupId>com.squareup.retrofit2</groupId>
			<artifactId>retrofit</artifactId>
			<version>${retrofit.version}</version>
		</dependency>
		<dependency>
			<groupId>com.squareup.retrofit2</groupId>
			<artifactId>converter-jackson</artifactId>
			<version>${retrofit.version}</version>
		</dependency>

		<!-- Commons Lang3 -->
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>${commons-lang3.version}</version>
		</dependency>

		<!-- OkHttp -->
		<dependency>
			<groupId>com.squareup.okhttp3</groupId>
			<artifactId>okhttp</artifactId>
			<version>${okhttp.version}</version>
		</dependency>
		<dependency>
			<groupId>com.squareup.okhttp3</groupId>
			<artifactId>logging-interceptor</artifactId>
			<version>${okhttp.version}</version>
		</dependency>
		<dependency>
			<groupId>com.squareup.okhttp3</groupId>
			<artifactId>okhttp-apache</artifactId>
			<version>${okhttp-apache.version}</version>
		</dependency>

		<!-- Lombok -->
		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<version>${lombok.version}</version>
			<optional>true</optional>
		</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>

		<!-- Commons Configuration 2 -->
		<dependency>
		    <groupId>org.apache.commons</groupId>
		    <artifactId>commons-configuration2</artifactId>
		    <version>${commons-configuration2.version}</version>
		</dependency>
		<dependency>
		    <groupId>commons-beanutils</groupId>
		    <artifactId>commons-beanutils</artifactId>
		    <version>${commons-beanutils.version}</version>
		</dependency>
		<dependency>
		    <groupId>org.apache.logging.log4j</groupId>
		    <artifactId>log4j-core</artifactId>
		    <version>${log4j.version}</version>
		</dependency>

		<!-- JTS -->
		<dependency>
		    <groupId>org.locationtech.jts</groupId>
		    <artifactId>jts-core</artifactId>
		    <version>${jts.version}</version>
		</dependency>

		<!-- - -  -->
		<!-- Test -->
		<!-- - -  -->
		<dependency>
		    <groupId>org.junit.jupiter</groupId>
		    <artifactId>junit-jupiter-api</artifactId>
		    <version>${junit.version}</version>
		    <scope>test</scope>
		</dependency>
		<dependency>
		    <groupId>org.junit.jupiter</groupId>
		    <artifactId>junit-jupiter-engine</artifactId>
		    <version>${junit.version}</version>
		    <scope>test</scope>
		</dependency>
		<dependency>
		    <groupId>org.junit.jupiter</groupId>
		    <artifactId>junit-jupiter-params</artifactId>
		    <version>${junit.version}</version>
		    <scope>test</scope>
		</dependency>
		<dependency>
		    <groupId>org.apache.logging.log4j</groupId>
		    <artifactId>log4j-core</artifactId>
    		<version>${log4j.version}</version>
		    <type>test-jar</type>
		    <scope>test</scope>
		</dependency>
		
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.eluder.coveralls</groupId>
				<artifactId>coveralls-maven-plugin</artifactId>
				<version>4.3.0</version>
				<configuration>
					<!-- Travis CI -->
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
				<version>2.7</version>
				<configuration>
					<maxmem>256m</maxmem>
					<format>xml</format>
				</configuration>
			</plugin>
		
			<!-- Upload to maven central -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>3.2.0</version>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<version>3.2.1</version>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- To sign artifacts -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-gpg-plugin</artifactId>
				<version>1.6</version>
				<executions>
					<execution>
						<id>sign-artifacts</id>
						<phase>verify</phase>
						<goals>
							<goal>sign</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			
			<!-- Deploying the whole library -->
			<plugin>
				<groupId>org.sonatype.plugins</groupId>
				<artifactId>nexus-staging-maven-plugin</artifactId>
				<version>1.6.8</version>
				<extensions>true</extensions>
				<configuration>
					<serverId>ossrh</serverId>
					<nexusUrl>https://oss.sonatype.org/</nexusUrl>
					<autoReleaseAfterClose>false</autoReleaseAfterClose>
				</configuration>
			</plugin>
			
		</plugins>
		
		<pluginManagement>
			<plugins>
				<plugin>
				   <groupId>org.apache.maven.plugins</groupId>
				   <artifactId>maven-checkstyle-plugin</artifactId>
				   <version>3.1.1</version>
				   <dependencies>
				     <dependency>
				        <groupId>com.puppycrawl.tools</groupId>
				        <artifactId>checkstyle</artifactId>
				        <version>8.31</version>
				     </dependency>
				   </dependencies>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

</project>
