<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>

	<artifactId>fj-service-helper-bom</artifactId>

	<parent>
		<groupId>org.fugerit.java</groupId>
		<artifactId>fj-bom</artifactId>
		<version>1.6.4</version>
		<relativePath></relativePath>
	</parent>

	<version>1.3.2</version>
	<packaging>pom</packaging>

	<name>Fugerit Service Helper BOM</name>
	<description>Project helper for service component abstraction</description>
	<url>https://www.fugerit.org/</url>

	<properties>
		<revision>1.2.1</revision>
	    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	    <java-version-compliance>8</java-version-compliance>
	    <maven.compiler.source>${java-version-compliance}</maven.compiler.source>
	    <maven.compiler.target>${java-version-compliance}</maven.compiler.target>	
	    <maven.compiler.release>${java-version-compliance}</maven.compiler.release>
	    <fj-version>8.5.3</fj-version>
		<native-helper-graalvm-version>1.1.1</native-helper-graalvm-version>
		<jakarta-ws-rs-api-version>3.1.0</jakarta-ws-rs-api-version>
		<microprofile-openapi-api-version>3.1.1</microprofile-openapi-api-version>
		<microprofile-config-api-version>3.1</microprofile-config-api-version>
		<microprofile-rest-client-api-version>3.0.1</microprofile-rest-client-api-version>
	    <fj-service-helper-version>${project.version}</fj-service-helper-version>
		<simple-config-version>${fj-service-helper-version}</simple-config-version>
		<simple-config-microprofile-version>${fj-service-helper-version}</simple-config-microprofile-version>
	    <emp-service-model-version>${fj-service-helper-version}</emp-service-model-version>
		<emp-exception-mapper-version>${fj-service-helper-version}</emp-exception-mapper-version>
	    <data-service-base-version>${fj-service-helper-version}</data-service-base-version>
	    <quarkus-redis-service-map-version>${fj-service-helper-version}</quarkus-redis-service-map-version>
	    <quarkus.platform.version>3.9.2</quarkus.platform.version>
		<native-helper-maven-plugin-version>1.3.5</native-helper-maven-plugin-version>
	</properties>

	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
			<distribution>repo</distribution>
		</license>
	</licenses>

	<organization>
		<url>https://www.fugerit.org</url>
		<name>Fugerit</name>
	</organization>

	<developers>
		<developer>
			<name>Matteo Franci a.k.a. Fugerit</name>
			<email>m@fugerit.org</email>
			<url>https://www.fugerit.org</url>
			<timezone>+1</timezone>
			<organization>Fugerit</organization>
			<organizationUrl>https://www.fugerit.org</organizationUrl>
			<roles>
				<role>IT Senior Consultant</role>
				<role>Senior Software Architect</role>
			</roles>
		</developer>
		<developer>
			<name>Daneel</name>
			<email>d@fugerit.org</email>
			<organization>Fugerit</organization>
			<organizationUrl>https://www.fugerit.org</organizationUrl>
		</developer>
	</developers>

	<scm>
		<connection>scm:git:git://github.com/fugerit-org/fj-service-helper-bom.git</connection>
		<developerConnection>scm:git:ssh://github.com/fugerit-org/fj-service-helper-bom.git</developerConnection>
		<url>https://github.com/fugerit-org/fj-service-helper-bom.git</url>
		<tag>HEAD</tag>
	</scm>

	<issueManagement>
		<system>GitHub</system>
		<url>https://github.com/fugerit-org/fj-service-helper-bom/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>

	<modules>
		<module>simple-config</module>
		<module>simple-config-microprofile</module>
		<module>emp-service-model</module>
		<module>emp-exception-mapper</module>
		<module>data-service-base</module>
		<module>data-service-jvfs</module>
		<module>quarkus-redis-service-map</module>
		<module>fj-service-helper-demo</module>
	</modules>

	<dependencyManagement>
	
		<dependencies>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>fj-core</artifactId>
				<version>${fj-version}</version>
			</dependency>	
			
			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>fj-core-jvfs</artifactId>
				<version>${fj-version}</version>
			</dependency>

			<dependency>
				<groupId>jakarta.ws.rs</groupId>
				<artifactId>jakarta.ws.rs-api</artifactId>
				<version>${jakarta-ws-rs-api-version}</version>
			</dependency>

			<dependency>
			    <groupId>org.eclipse.microprofile.openapi</groupId>
			    <artifactId>microprofile-openapi-api</artifactId>
			    <version>${microprofile-openapi-api-version}</version>
			</dependency>

			<dependency>
				<groupId>org.eclipse.microprofile.config</groupId>
				<artifactId>microprofile-config-api</artifactId>
				<version>${microprofile-config-api-version}</version>
			</dependency>

			<dependency>
				<groupId>org.eclipse.microprofile.rest.client</groupId>
				<artifactId>microprofile-rest-client-api</artifactId>
				<version>${microprofile-rest-client-api-version}</version>
			</dependency>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>simple-config</artifactId>
				<version>${simple-config-version}</version>
			</dependency>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>simple-config-microprofile</artifactId>
				<version>${simple-config-microprofile-version}</version>
			</dependency>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>emp-service-model</artifactId>
				<version>${emp-service-model-version}</version>
			</dependency>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>emp-exception-mapper</artifactId>
				<version>${emp-exception-mapper-version}</version>
			</dependency>
			
			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>data-service-base</artifactId>
				<version>${data-service-base-version}</version>
			</dependency>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>quarkus-redis-service-map</artifactId>
				<version>${quarkus-redis-service-map-version}</version>
			</dependency>
			
			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>fj-service-helper-demo</artifactId>
				<version>${fj-service-helper-version}</version>
			</dependency>

			<dependency>
				<groupId>org.fugerit.java</groupId>
				<artifactId>native-helper-graalvm</artifactId>
				<version>${native-helper-graalvm-version}</version>
				<scope>test</scope>
			</dependency>
			
		</dependencies>

	</dependencyManagement>

	<dependencies>

		<dependency> 
		  <groupId>org.slf4j</groupId>
		  <artifactId>slf4j-api</artifactId>
		  <scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>org.projectlombok</groupId>
			<artifactId>lombok</artifactId>
			<scope>provided</scope>
		</dependency>

		<dependency>
		    <groupId>org.slf4j</groupId>
		    <artifactId>slf4j-simple</artifactId>
		    <scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter</artifactId>
			<scope>test</scope>
		</dependency>
		
	</dependencies>

	<build>

		<pluginManagement>

			<plugins>

				<plugin>
					<groupId>org.fugerit.java</groupId>
					<artifactId>native-helper-maven-plugin</artifactId>
					<version>${native-helper-maven-plugin-version}</version>
				</plugin>

			</plugins>

		</pluginManagement>

		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>${java.version}</source>
					<target>${java.version}</target>
					<annotationProcessorPaths>
						<path>
							<groupId>org.projectlombok</groupId>
							<artifactId>lombok</artifactId>
						</path>
					</annotationProcessorPaths>
				</configuration>
			</plugin>
		</plugins>
	</build>
	
</project>
