<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>
	<parent>
		<groupId>org.gcube.tools</groupId>
		<artifactId>maven-parent</artifactId>
		<version>1.1.0</version>
	</parent>
	<groupId>org.gcube.vremanagement</groupId>
	<artifactId>smart-executor-bom</artifactId>
	<version>3.1.0</version>
	<packaging>pom</packaging>
	<name>Smart Executor Bom</name>
	<description>Smart Executor Bom is used to declare the version and set to provided the libraries already available in Smartgears and in Smart Executor Service.
In such a way any plugin developer does not have to deal with dependencies conflicts and provided dependencies.</description>
	
	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<serviceClass>VREManagement</serviceClass>
		<gcube-jackson.version>2.8.11</gcube-jackson.version>
	</properties>

	<scm>
		<connection>scm:git:https://code-repo.d4science.org/gCubeSystem/smart-executor-bom</connection>
		<developerConnection>scm:git:https://code-repo.d4science.org/gCubeSystem/smart-executor-bom</developerConnection>
		<url>https://code-repo.d4science.org/gCubeSystem/smart-executor-bom</url>
	</scm>
	
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.gcube.distribution</groupId>
				<artifactId>gcube-smartgears-bom</artifactId>
				<version>2.2.0</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			
			<!-- Setting scope to provided to dependencies already declared in gcube-bom -->
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-encryption</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources</groupId>
				<artifactId>common-gcore-resources</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-gcore-stubs</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-scope</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-scope-maps</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources</groupId>
				<artifactId>registry-publisher</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources.discovery</groupId>
				<artifactId>ic-client</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources.discovery</groupId>
				<artifactId>discovery-client</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gxHTTP</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- Authorization Related Dependencies -->
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>authorization-client</artifactId>
				<version>[2.0.0,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>common-authorization</artifactId>
				<version>[2.0.0,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Authorization Related Dependencies -->

			<!-- Accounting Related Dependencies -->
			<dependency>
				<groupId>org.gcube.data.publishing</groupId>
				<artifactId>document-store-lib</artifactId>
				<version>[3.0.0,4.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.accounting</groupId>
				<artifactId>accounting-lib</artifactId>
				<version>[4.0.0,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Accounting Related Dependencies -->

			<!-- Facets Based Resource Model related dependencies -->
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>information-system-model</artifactId>
				<version>[5.0.0-SNAPSHOT,6.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resource-management</groupId>
				<artifactId>gcube-model</artifactId>
				<version>[4.0.0-SNAPSHOT,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>resource-registry-api</artifactId>
				<version>[4.1.0,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>resource-registry-client</artifactId>
				<version>[4.1.0,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>resource-registry-publisher</artifactId>
				<version>[4.1.0,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Facets Based Resource Model related dependencies -->

			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>1.7.25</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Setting scope to provided to dependencies already declared in 
				gcube-bom -->

			<!-- Declaring dependencies needed by a smartgears webapp -->
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-smartgears</artifactId>
				<version>[3.0.0,4.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-smartgears-app</artifactId>
				<version>[2.0.0,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-smartgears-utils</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-events</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-configuration-scanner</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-validator</artifactId>
				<version>[1.0.0,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Declaring dependencies needed by a smartgears webapp -->

			<!-- gCube Jackson -->
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gcube-jackson-databind</artifactId>
				<version>${gcube-jackson.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gcube-jackson-annotations</artifactId>
				<version>${gcube-jackson.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gcube-jackson-core</artifactId>
				<version>${gcube-jackson.version}</version>
				<scope>provided</scope>
			</dependency>
			<!-- END gCube Jackson -->
			
			
			<dependency>
				<groupId>com.google.code.findbugs</groupId>
				<artifactId>annotations</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.hk2.external</groupId>
				<artifactId>aopalliance-repackaged</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ow2.asm</groupId>
				<artifactId>asm</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ow2.asm</groupId>
				<artifactId>asm-commons</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ow2.asm</groupId>
				<artifactId>asm-analysis</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ow2.asm</groupId>
				<artifactId>asm-tree</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ow2.asm</groupId>
				<artifactId>asm-util</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>authorization-utils</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>c3p0</groupId>
				<artifactId>c3p0</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-clients</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-fw-clients</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-gcube-calls</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-generic-clients</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-jaxws-calls</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>commons-lang</groupId>
				<artifactId>commons-lang</artifactId>
				<version>2.6</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.googlecode.concurrentlinkedhashmap</groupId>
				<artifactId>concurrentlinkedhashmap-lru</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.google.guava</groupId>
				<artifactId>guava</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gxJRS</artifactId>
				<scope>provided</scope>
			</dependency>
			
			<dependency>
				<groupId>org.glassfish.hk2</groupId>
				<artifactId>hk2-api</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.hk2</groupId>
				<artifactId>hk2-locator</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.hk2</groupId>
				<artifactId>hk2-utils</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.javassist</groupId>
				<artifactId>javassist</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>javax.annotation</groupId>
				<artifactId>javax.annotation-api</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.hk2.external</groupId>
				<artifactId>javax.inject</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>javax.ws.rs</groupId>
				<artifactId>javax.ws.rs-api</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.core</groupId>
				<artifactId>jersey-client</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.core</groupId>
				<artifactId>jersey-common</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.containers</groupId>
				<artifactId>jersey-container-servlet</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.containers</groupId>
				<artifactId>jersey-container-servlet-core</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.bundles.repackaged</groupId>
				<artifactId>jersey-guava</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.media</groupId>
				<artifactId>jersey-media-jaxb</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jersey.core</groupId>
				<artifactId>jersey-server</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.github.jnr</groupId>
				<artifactId>jffi</artifactId>
			</dependency>
			<dependency>
				<groupId>com.github.jnr</groupId>
				<artifactId>jnr-a64asm</artifactId>
			</dependency>
			<dependency>
				<groupId>com.github.jnr</groupId>
				<artifactId>jnr-constants</artifactId>
			</dependency>
			<dependency>
				<groupId>com.github.jnr</groupId>
				<artifactId>jnr-ffi</artifactId>
			</dependency>
			<dependency>
				<groupId>com.github.jnr</groupId>
				<artifactId>jnr-posix</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.github.jnr</groupId>
				<artifactId>jnr-x86asm</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>keycloak-client</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.lz4</groupId>
				<artifactId>lz4-java</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.orientechnologies</groupId>
				<artifactId>orientdb-client</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.orientechnologies</groupId>
				<artifactId>orientdb-core</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.glassfish.hk2</groupId>
				<artifactId>osgi-resource-locator</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.quartz-scheduler</groupId>
				<artifactId>quartz</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.reflections</groupId>
				<artifactId>reflections</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.vremanagement</groupId>
				<artifactId>smart-executor-api</artifactId>
				<version>[3.0.0,4.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.vremanagement</groupId>
				<artifactId>smart-executor-client</artifactId>
				<version>[3.0.0,4.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>javax.validation</groupId>
				<artifactId>validation-api</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>xmlpull</groupId>
				<artifactId>xmlpull</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>xpp3</groupId>
				<artifactId>xpp3_min</artifactId>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.thoughtworks.xstream</groupId>
				<artifactId>xstream</artifactId>
				<scope>provided</scope>
			</dependency>
			
		</dependencies>
	</dependencyManagement>
</project>
