<?xml version="1.0" encoding="UTF-8" ?>
<!--
  ~ Copyright 2017 DV Bern AG
  ~
  ~ Licensed under the Apache License, Version 2.0 (the "License");
  ~ you may not use this file except in compliance with the License.
  ~ You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS,
  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  ~ limitations under the License.
  -->

<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<parent>
		<groupId>ch.dvbern.oss.maven</groupId>
		<artifactId>parent-minimal</artifactId>
		<version>3.0.0</version>
	</parent>

	<groupId>ch.dvbern.oss.junit-beanvalidation-extension</groupId>
	<artifactId>junit-beanvalidation-extension</artifactId>
	<version>3.0.2</version>

	<name>DV Bern JUnit BeanValidation Extension</name>
	<description>Allow for easy injection and customization of a Java BeanValidation Validator into your tests</description>
	<url>https://github.com/dvbern/junit-beanvalidation-extension</url>

	<organization>
		<name>DV Bern AG</name>
		<url>https://www.dvbern.ch/</url>
	</organization>

	<developers>
		<developer>
			<name>Christoph Linder</name>
			<email>christoph.linder@dvbern.ch</email>
			<organization>DV Bern AG</organization>
			<roles>
				<role>Developer</role>
				<role>Architect</role>
			</roles>
		</developer>
	</developers>

	<licenses>
		<license>
			<name>Apache License, Version 2.0</name>
			<url>https://www.apache.org/licenses/LICENSE-2.0</url>
		</license>
	</licenses>

	<scm>
		<url>https://github.com/dvbern/junit-beanvalidation-extension.git</url>
		<connection>scm:git:https://github.com/dvbern/junit-beanvalidation-extension.git</connection>
		<developerConnection>scm:git:https://github.com/dvbern/junit-beanvalidation-extension.git</developerConnection>
	</scm>

	<properties>
		<maven-compiler-plugin.javaversion>11</maven-compiler-plugin.javaversion>
		<maven-compiler-plugin.javaversion>11</maven-compiler-plugin.javaversion>
		<maven-enforcer-plugin.requireMavenVersion.version>[3.9.9,)</maven-enforcer-plugin.requireMavenVersion.version>
		<maven-enforcer-plugin.requireJavaVersion.version>${maven-compiler-plugin.javaversion}</maven-enforcer-plugin.requireJavaVersion.version>
	</properties>

	<dependencies>
		<dependency>
			<groupId>org.checkerframework</groupId>
			<artifactId>checker-qual</artifactId>
			<version>3.36.0</version>
		</dependency>

		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-api</artifactId>
			<version>5.9.3</version>
			<scope>provided</scope>
		</dependency>

		<!-- START: minimal dependencies to make this work -->
		<dependency>
			<!-- validation API spec -->
			<groupId>jakarta.validation</groupId>
			<artifactId>jakarta.validation-api</artifactId>
			<version>3.0.2</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<!-- transitive requirement of the validtion API -->
			<groupId>jakarta.el</groupId>
			<artifactId>jakarta.el-api</artifactId>
			<version>5.0.1</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<!-- we need an implementation for el-api -->
			<groupId>org.glassfish</groupId>
			<artifactId>jakarta.el</artifactId>
			<version>4.0.2</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<!-- validation API implementation (hibernate-validaor is just used as an example) -->
			<groupId>org.hibernate.validator</groupId>
			<artifactId>hibernate-validator</artifactId>
			<version>8.0.0.Final</version>
			<scope>test</scope>
		</dependency>
		<!-- END: minimal dependencies to make this work -->

		<dependency>
			<groupId>jakarta.enterprise</groupId>
			<artifactId>jakarta.enterprise.cdi-api</artifactId>
			<version>4.0.1</version>
			<scope>test</scope>
		</dependency>

		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-core</artifactId>
			<version>5.4.0</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.assertj</groupId>
			<artifactId>assertj-core</artifactId>
			<version>3.24.2</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.mockito</groupId>
			<artifactId>mockito-junit-jupiter</artifactId>
			<version>5.4.0</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<version>${maven-javadoc-plugin.version}</version>
				<configuration>
					<doclint>none</doclint>
					<detectJavaApiLink>false</detectJavaApiLink>
				</configuration>
			</plugin>
			<plugin>
				<groupId>ch.dvbern.oss.maven.jgitflow</groupId>
				<artifactId>jgitflow-maven-plugin</artifactId>
				<configuration>
					<flowInitContext>
						<!-- github changed default names -->
						<masterBranchName>main</masterBranchName>
					</flowInitContext>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<!-- <editor-fold desc="distributionManagement" defaultstate="collapsed"> -->
	<distributionManagement>
		<snapshotRepository>
			<id>ossrh</id>
			<url>https://oss.sonatype.org/content/repositories/snapshots</url>
		</snapshotRepository>
	</distributionManagement>
	<!-- </editor-fold> -->

	<profiles>
		<!-- <editor-fold desc="maven-central" defaultstate="collapsed"> -->
		<profile>
			<id>maven-central</id>
			<properties>
				<skip-javadoc />
			</properties>
			<build>
				<plugins>
					<!-- <editor-fold desc="maven-gpg-plugin" defaultstate="collapsed"> -->
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>3.2.7</version>
						<configuration>
							<signer>bc</signer>
							<keyEnvName>MAVEN_GPG_PRIVATE_KEY</keyEnvName>
							<passphraseEnvName>MAVEN_GPG_PASSPHRASE</passphraseEnvName>
						</configuration>
					</plugin>
					<!-- </editor-fold> -->

					<!-- <editor-fold desc="nexus-staging-maven-plugin" defaultstate="collapsed"> -->
					<plugin>
						<groupId>org.sonatype.plugins</groupId>
						<artifactId>nexus-staging-maven-plugin</artifactId>
						<configuration>
							<nexusUrl>https://oss.sonatype.org/</nexusUrl>
						</configuration>
					</plugin>
					<!-- </editor-fold> -->
				</plugins>
			</build>
		</profile>
		<!-- </editor-fold> -->
	</profiles>
</project>
