<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>
		<artifactId>maven-parent</artifactId>
		<groupId>org.gcube.tools</groupId>
		<version>1.2.0</version>
	</parent>
	<groupId>org.gcube.distribution</groupId>
	<artifactId>gcube-smartgears-bom</artifactId>
	<version>4.0.0-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>gCube Smartgears Bom</name>
	<description>
		gCube Smartgears Bom is used to declare the version and set to provided
		the libraries already available in Smartgears container.
		In such a way any service developer does not have to deal with
		dependencies conflicts and provided dependencies.
	</description>
	<properties>
		<gcube-jackson.version>2.8.11</gcube-jackson.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<jakarta.version>4.0.4</jakarta.version>
		<jakarta-api.version>4.0.1</jakarta-api.version>
		<jaxb-impl.version>4.0.4</jaxb-impl.version>
		<jaxws.version>4.0.2</jaxws.version>

	</properties>
	<scm>
		<connection>
			scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git</connection>
		<developerConnection>
			scm:git:https://code-repo.d4science.org/gCubeSystem/${project.artifactId}.git</developerConnection>
		<url>https://code-repo.d4science.org/gCubeSystem/${project.artifactId}</url>
	</scm>
	<dependencyManagement>
		<dependencies>
			<!-- Imports -->
			<dependency>
				<groupId>org.gcube.distribution</groupId>
				<artifactId>gcube-bom</artifactId>
				<version>4.0.0</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<!-- END Imports -->

			<dependency>
				<groupId>jakarta.servlet</groupId>
				<artifactId>jakarta.servlet-api</artifactId>
				<version>6.0.0</version>
				<scope>provided</scope>
			</dependency>


			<!-- XML Deps -->
			<dependency>
				<groupId>jakarta.xml.bind</groupId>
				<artifactId>jakarta.xml.bind-api</artifactId>
				<version>${jakarta-api.version}</version>
			</dependency>
			<dependency>
				<groupId>org.glassfish.jaxb</groupId>
				<artifactId>jaxb-runtime</artifactId>
				<version>${jaxb-impl.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>com.sun.xml.bind</groupId>
				<artifactId>jaxb-impl</artifactId>
				<version>${jaxb-impl.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>jakarta.xml.ws</groupId>
				<artifactId>jakarta.xml.ws-api</artifactId>
				<version>${jakarta-api.version}</version>
			</dependency>
			<dependency>
				<groupId>com.sun.xml.ws</groupId>
				<artifactId>jaxws-rt</artifactId>
				<version>${jaxws.version}</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>jakarta.ws.rs</groupId>
				<artifactId>jakarta.ws.rs-api</artifactId>
				<version>3.1.0</version>
				<scope>provided</scope>
			</dependency>

			<!-- Setting scope to provided to dependencies already declared in
			gcube-bom -->
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>common-security</artifactId>
				<version>[1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-encryption</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources</groupId>
				<artifactId>common-gcore-resources</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common.security</groupId>
				<artifactId>gcube-secrets</artifactId>
				<version>[1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-gcore-stubs</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-scope-maps</artifactId>
				<version>[1.1.1-SNAPSHOT,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-scope</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources</groupId>
				<artifactId>registry-publisher</artifactId>
				<version>[1.3.2,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources.discovery</groupId>
				<artifactId>ic-client</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resources.discovery</groupId>
				<artifactId>discovery-client</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gxHTTP</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>gxJRS</artifactId>
				<version>[2.0.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- Authorization Related Dependencies -->
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>authorization-client</artifactId>
				<version>[3.0.0-SNAPSHOT,4.0.0-SNAPSHOT)</version>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>common-authorization</artifactId>
				<version>[3.0.0-SNAPSHOT,4.0.0-SNAPSHOT)</version>
			</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>[5.0.0-SNAPSHOT,6.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Accounting Related Dependencies -->
			<!-- Used for compatibility between SG 3 and 4 -->
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>common-utility-sg4</artifactId>
				<version>[1.0.0-SNAPSHOT,2.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Used for compatibility between SG 3 and 4 -->
			<!-- Facets Based Resource Model related dependencies -->
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>information-system-model</artifactId>
				<version>[7.0.0-SNAPSHOT,8.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.resource-management</groupId>
				<artifactId>gcube-model</artifactId>
				<version>[5.0.0-SNAPSHOT,6.0.0-SNAPSHOT)</version>
			</dependency>
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>resource-registry-api</artifactId>
				<version>[6.0.0-SNAPSHOT,7.0.0-SNAPSHOT)</version>
			</dependency>
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>resource-registry-client</artifactId>
				<version>[4.4.0-SNAPSHOT,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.information-system</groupId>
				<artifactId>resource-registry-publisher</artifactId>
				<version>[4.4.0-SNAPSHOT,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<!-- END Facets Based Resource Model related dependencies -->
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>keycloak-client</artifactId>
				<version>[2.1.0-SNAPSHOT,3.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common</groupId>
				<artifactId>health-api</artifactId>
				<version>[1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT)</version>
			</dependency>
			<dependency>
				<groupId>org.reflections</groupId>
				<artifactId>reflections</artifactId>
				<version>0.9.12</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.yaml</groupId>
				<artifactId>snakeyaml</artifactId>
				<version>2.2</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>io.github.classgraph</groupId>
				<artifactId>classgraph</artifactId>
				<version>4.8.28</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.ini4j</groupId>
				<artifactId>ini4j</artifactId>
				<version>0.5.4</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>2.0.12</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>[4.0.0-SNAPSHOT,5.0.0-SNAPSHOT)</version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-smartgears-app</artifactId>
				<version>[4.0.0-SNAPSHOT,5.0.0-SNAPSHOT)</version>
				<scope>compile</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.common.core</groupId>
				<artifactId>legacy-is-publisher-connector</artifactId>
				<version>[1.0.0-SNAPSHOT, 2.0.0-SNAPSHOT) </version>
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-events</artifactId>
				<version>[1.0.2-SNAPSHOT,2.0.0-SNAPSHOT)</version> <!--version to release -->
				<scope>provided</scope>
			</dependency>
			<dependency>
				<groupId>org.gcube.core</groupId>
				<artifactId>common-validator</artifactId>
				<version>[1.1.0-SNAPSHOT,2.0.0-SNAPSHOT)</version> <!--version to release not present on nexus-->
				<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>org.aspectj</groupId>
				<artifactId>aspectjrt</artifactId>
				<version>1.9.21.1</version>
			</dependency>

		</dependencies>
	</dependencyManagement>
</project>
