<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>org.gcube.application</groupId>
	<artifactId>geoportal-service</artifactId>
	<version>1.1.1</version>
	<name>Geoportal Service</name>
	<packaging>war</packaging>

	<parent>
		<groupId>org.gcube.application.cms</groupId>
		<artifactId>gcube-cms-suite</artifactId>
		<version>[1.0.0, 2.0.0-SNAPSHOT)</version>
	</parent>

	<properties>
		<gitBaseUrl>https://code-repo.d4science.org/gCubeSystem</gitBaseUrl>
		<sis.version>1.0</sis.version>
		<enunciate.version>2.14.0</enunciate.version>
		<webappDirectory>${project.basedir}${file.separator}${project.artifactId}${file.separator}src${file.separator}main${file.separator}webapp${file.separator}WEB-INF</webappDirectory>
		<!-- Enabled them for testing with JAVA 8 -->
		<!-- <maven.compiler.source>1.8</maven.compiler.source> -->
		<!-- <maven.compiler.target>1.8</maven.compiler.target> -->
	</properties>

	<scm>
		<connection>scm:git:${gitBaseUrl}/gcube-cms-suite</connection>
		<developerConnection>scm:git:${gitBaseUrl}/gcube-cms-suite</developerConnection>
		<url>${gitBaseUrl}/gcube-cms-suite</url>
	</scm>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.gcube.distribution</groupId>
				<artifactId>gcube-smartgears-bom</artifactId>
				<version>${gcube-smartgears-bom-version}</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<dependencies>

		<dependency>
			<groupId>org.gcube.core</groupId>
			<artifactId>common-smartgears</artifactId>
		</dependency>


		<!-- INTERNAL LOGIC -->
		<dependency>
			<groupId>org.gcube.application.cms</groupId>
			<artifactId>geoportal-common</artifactId>
		</dependency>

		<dependency>
			<groupId>org.gcube.application.cms</groupId>
			<artifactId>cms-plugin-framework</artifactId>
			<scope>compile</scope>
		</dependency>

		<dependency>
			<groupId>org.gcube.application.cms</groupId>
			<artifactId>default-lc-managers</artifactId>
		</dependency>


		<!-- MONGO -->
		<!-- https://mvnrepository.com/artifact/org.mongodb/mongo-java-driver -->
		<dependency>
			<groupId>org.mongodb</groupId>
			<artifactId>mongo-java-driver</artifactId>
			<version>3.6.0</version>
		</dependency>

		<!-- IS Read -->
		<dependency>
			<groupId>javax.xml.bind</groupId>
			<artifactId>jaxb-api</artifactId>
		</dependency>

		<!-- STORAGE -->
		<dependency>
			<groupId>org.gcube.contentmanagement</groupId>
			<artifactId>storage-manager-core</artifactId>
		</dependency>
		<dependency>
			<groupId>org.gcube.contentmanagement</groupId>
			<artifactId>storage-manager-wrapper</artifactId>
		</dependency>


		<!-- enunciate deps -->
		<dependency>
			<groupId>com.webcohesion.enunciate</groupId>
			<artifactId>enunciate-core-annotations</artifactId>
			<version>${enunciate.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>com.webcohesion.enunciate</groupId>
			<artifactId>enunciate-rt-util</artifactId>
			<version>${enunciate.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>javax.servlet</groupId>
			<artifactId>javax.servlet-api</artifactId>
			<version>3.1.0</version>
			<scope>provided</scope>
		</dependency>


		<!-- JERSEY -->

		<dependency>
			<groupId>javax.ws.rs</groupId>
			<artifactId>javax.ws.rs-api</artifactId>
		</dependency>

		<dependency>
			<groupId>org.glassfish.jersey.containers</groupId>
			<artifactId>jersey-container-servlet</artifactId>
			<exclusions>
				<exclusion>
					<groupId>org.javassist</groupId>
					<artifactId>javassist</artifactId>
				</exclusion>
			</exclusions>
		</dependency>

		<!-- TEST -->

		<dependency>
			<groupId>org.glassfish.jersey.test-framework.providers</groupId>
			<artifactId>jersey-test-framework-provider-simple</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.gcube.application.cms</groupId>
			<artifactId>cms-test-commons</artifactId>
			<scope>test</scope>
		</dependency>

		<!-- TEST with JDK1.8 <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> 
			<scope>test</scope> </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> 
			<artifactId>jaxb-core</artifactId> <scope>test</scope> </dependency> <dependency> 
			<groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <scope>test</scope> 
			</dependency> <dependency> <groupId>com.sun.xml.messaging.saaj</groupId> 
			<artifactId>saaj-impl</artifactId> <version>1.5.0</version> <scope>test</scope> 
			</dependency> <dependency> <groupId>javax.xml.ws</groupId> <artifactId>jaxws-api</artifactId> 
			<scope>test</scope> </dependency> -->


		<!-- Plugins related tests -->

		<dependency>
			<groupId>org.gcube.application.cms</groupId>
			<artifactId>concessioni-lifecycle</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.gcube.application.cms</groupId>
			<artifactId>sdi-plugins</artifactId>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.gcube.data.transfer</groupId>
			<artifactId>data-transfer-library</artifactId>
			<version>1.3.0</version>
			<scope>test</scope>
		</dependency>

	</dependencies>

	<build>
		<!-- Added by Francesco -->
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<includes>
					<include>**/*</include>
				</includes>
			</resource>
		</resources>
		<plugins>
			<!-- SPHINX PLUGIN triggered at 'compile' -->
			<plugin>
				<groupId>kr.motd.maven</groupId>
				<artifactId>sphinx-maven-plugin</artifactId>
				<version>2.10.0</version>
				<configuration>
					<outputDirectory>${project.build.directory}/${project.artifactId}-${project.version}/docs</outputDirectory>
					<builder>html</builder>
					<configDirectory>${basedir}/docs</configDirectory>
					<sourceDirectory>${basedir}/docs</sourceDirectory>
				</configuration>
				<executions>
					<execution>
						<phase>process-resources</phase>
						<goals>
							<goal>generate</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Enunciate Maven plugin -->
			<plugin>
				<groupId>com.webcohesion.enunciate</groupId>
				<artifactId>enunciate-maven-plugin</artifactId>
				<version>${enunciate.version}</version>
				<configuration>
				</configuration>
				<executions>
					<execution>
						<id>assemble</id>
						<goals>
							<goal>assemble</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<!-- Copy Enunciate Documentation from your-application/docs to your-application.war -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>2.5</version>
				<executions>
					<execution>
						<id>copy-enunciate-docs</id>
						<phase>process-resources</phase>
						<goals>
							<goal>copy-resources</goal>
						</goals>
						<configuration>
							<outputDirectory>target</outputDirectory>
							<resources>
								<resource>
									<targetPath>${project.build.directory}/${project.artifactId}-${project.version}/api-docs</targetPath>
									<directory>${project.build.directory}/api-docs</directory>
									<filtering>true</filtering>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>