<?xml version="1.0" encoding="UTF-8"?>
<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.digidoc4j.dss</groupId>
	<artifactId>sd-dss</artifactId>
	<version>5.8.d4j.1</version>
	<packaging>pom</packaging>
	<name>Digital Signature Services</name>
    <description>This is a forked repository from the original DSS project located at
        https://github.com/esig/dss and https://joinup.ec.europa.eu/asset/sd-dss/description
        and contains additionally the BDoc-TM specific changes.
    </description>
    <url>https://github.com/open-eid/sd-dss</url>

	<developers>
		<developer>
			<id>naramski</id>
			<name>David Naramski</name>
			<roles>
				<role>developer</role>
			</roles>
		</developer>
		<developer>
			<id>vandenbroucke</id>
			<name>Pierrick Vandenbroucke</name>
			<roles>
				<role>developer</role>
			</roles>
		</developer>
		<developer>
			<id>beliakov</id>
			<name>Aleksandr Beliakov</name>
			<roles>
				<role>developer</role>
			</roles>
		</developer>

	</developers>

	<properties>
		<project.encoding>UTF-8</project.encoding>
		<module-name />

		<slf4j.version>1.7.30</slf4j.version>
		<logback-classic.version>1.2.3</logback-classic.version>

		<bouncycastle.version>1.68</bouncycastle.version>
		<xmlsec.version>2.1.6</xmlsec.version>
		<jose4j.version>0.7.2</jose4j.version>
		<pdfbox.version>2.0.22</pdfbox.version>
		<openpdf.version>1.3.23</openpdf.version>
		<httpclient.version>4.5.13</httpclient.version>
		<commons-codec.version>1.15</commons-codec.version> <!-- Synchronized with santuario -->
		
		<jakarta.bind-api.version>2.3.2</jakarta.bind-api.version> <!-- Synchronized with santuario -->
		<jaxb-runtime.version>2.3.2</jaxb-runtime.version>
		
		<!-- REST/SOAP API -->
		<jakarta.rs-api.version>2.1.6</jakarta.rs-api.version>
		<jakarta.ws-api.version>2.3.2</jakarta.ws-api.version>

		<junit.platform.version>1.7.0</junit.platform.version>
		<junit.jupiter.version>5.7.0</junit.jupiter.version>
		
		<awaitility.version>4.0.3</awaitility.version>
		<mockito.version>3.3.3</mockito.version>
		<h2database.version>1.4.200</h2database.version>
		<jackson.version>2.11.3</jackson.version>
		
		<sonar.java.source>1.8</sonar.java.source>
	    <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
		<dss.groupId>org.digidoc4j.dss</dss.groupId>
	    <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
		<sonar.coverage.jacoco.xmlReportPaths>${project.basedir}/../dss-jacoco-coverage/target/site/jacoco-aggregate/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
		
		<!-- By default, skip slow tests (use slow-tests profile to enable them) -->
		<exclude.tag.tests>slow</exclude.tag.tests>
	</properties>
	
	<licenses>
		<license>
			<name>GNU Lesser General Public License</name>
			<url>https://www.gnu.org/licenses/lgpl-2.1.html</url>
		</license>
	</licenses>
	
	<modules>
	
		<module>dss-enumerations</module>
		<module>dss-alert</module>
		<module>dss-jaxb-parsers</module>
	
		<module>specs-xmldsig</module>
		<module>specs-xades</module>
		<module>specs-trusted-list</module>
		<module>specs-validation-report</module>
		<module>specs-asic-manifest</module>
		<module>specs-saml-assertion</module>
		<module>specs-jws</module>
		<module>specs-jades</module>
		
		<module>dss-policy-jaxb</module>
		<module>dss-diagnostic-jaxb</module>
		<module>dss-detailed-report-jaxb</module>
		<module>dss-simple-report-jaxb</module>
		<module>dss-simple-certificate-report-jaxb</module>
	
		<module>dss-utils</module>
		<module>dss-utils-apache-commons</module>
		<module>dss-utils-google-guava</module>
		
    	<module>dss-i18n</module>
		
		<module>dss-model</module>
		<module>dss-crl-parser</module>
		<module>dss-crl-parser-x509crl</module>
		<module>dss-crl-parser-stream</module>
		<module>dss-spi</module>
		<module>dss-document</module>
		<module>dss-service</module>
		<module>dss-test</module>
		<module>dss-token</module>
		<module>validation-policy</module>
		<module>dss-xades</module>
		<module>dss-cades</module>
        <module>dss-jades</module>
		<module>dss-pades</module>
		<module>dss-pades-pdfbox</module>
		<module>dss-pades-openpdf</module>
		<module>dss-asic-common</module>
		<module>dss-asic-xades</module>
		<module>dss-asic-cades</module>
		<module>dss-tsl-validation</module>
		
    	<module>dss-common-remote-dto</module>
    	<module>dss-common-remote-converter</module>
		<module>dss-signature-dto</module>
		<module>dss-signature-remote</module>
		<module>dss-signature-rest-client</module>
		<module>dss-signature-soap-client</module>
		<module>dss-signature-rest</module>
		<module>dss-signature-soap</module>
		<module>dss-server-signing-dto</module>
		<module>dss-server-signing-common</module>
		<module>dss-server-signing-rest-client</module>
		<module>dss-server-signing-soap-client</module>
		<module>dss-server-signing-rest</module>
		<module>dss-server-signing-soap</module>
		<module>dss-validation-dto</module>
		<module>dss-validation-server-common</module>
		<module>dss-validation-rest-client</module>
		<module>dss-validation-soap-client</module>
		<module>dss-validation-rest</module>
		<module>dss-validation-soap</module>
		<module>dss-certificate-validation-dto</module>
		<module>dss-certificate-validation-common</module>
    	<module>dss-certificate-validation-rest-client</module>
    	<module>dss-certificate-validation-soap-client</module>
    	<module>dss-certificate-validation-rest</module>
    	<module>dss-certificate-validation-soap</module>
    	<module>dss-timestamp-dto</module>
    	<module>dss-timestamp-remote</module>
    	<module>dss-timestamp-remote-rest-client</module>
    	<module>dss-timestamp-remote-soap-client</module>
    	<module>dss-timestamp-remote-rest</module>
    	<module>dss-timestamp-remote-soap</module>
		
		<module>dss-cookbook</module>
		
		<module>dss-jacoco-coverage</module>
  </modules>

	<build>
		<plugins>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-source-plugin</artifactId>
				<executions>
					<execution>
						<id>attach-sources</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <encoding>${project.encoding}</encoding>
                    
                    <!-- Default + Test -->
					<release>8</release> <!-- XML Security requires 8+ -->
					
                    <showWarnings>true</showWarnings>
                    <showDeprecation>true</showDeprecation>
                </configuration>

				<executions>
					<execution>
						<id>default-compile</id>
						<goals>
							<goal>compile</goal>
						</goals>
						<configuration>
							<release>8</release> <!-- XML Security requires 8+ -->
						</configuration>
					</execution>
			
					<execution>
						<id>module-compile</id>
						<phase>compile</phase>
						<goals>
							<goal>compile</goal>
						</goals>
						<configuration>
							<release>9</release>
							<compileSourceRoots>
								<compileSourceRoot>${project.basedir}/src/main/java9</compileSourceRoot>
							</compileSourceRoots>
							<outputDirectory>${project.build.outputDirectory}/META-INF/versions/9</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>3.1.0</version>
				<executions>
					<execution>
						<goals>
							<goal>test-jar</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<archive>
			            <manifestEntries>
							<Multi-Release>true</Multi-Release>
							<Automatic-Module-Name>${module-name}</Automatic-Module-Name>
						</manifestEntries>
			        </archive>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<!-- Default test configuration -->
					<skipTests>true</skipTests>
					<classpathDependencyExcludes>
			            <classpathDependencyExclude>commons-logging:commons-logging</classpathDependencyExclude>
			        </classpathDependencyExcludes>
			        <threadCount>1</threadCount>
				</configuration>
				<executions>
					<execution>
						<id>non-regression</id>
						<phase>test</phase>
						<goals>
							<goal>test</goal>
						</goals>
						<configuration>
							<skipTests>false</skipTests>
							<testFailureIgnore>false</testFailureIgnore>
							<includes>
								<include>eu/**/*Test.java</include>
							</includes>
							<excludedGroups>${exclude.tag.tests}</excludedGroups>
						</configuration>
					</execution>
					<execution>
						<id>plugtests</id>
						<phase>test</phase>
						<goals>
							<goal>test</goal>
						</goals>
						<configuration>
							<skipTests>false</skipTests>
							<testFailureIgnore>true</testFailureIgnore>
							<includes>
								<include>plugtests/**/*Test.java</include>
							</includes>
						</configuration>
					</execution>
					<execution>
						<id>known-issues</id>
						<phase>test</phase>
						<goals>
							<goal>test</goal>
						</goals>
						<configuration>
							<skipTests>false</skipTests>
							<testFailureIgnore>true</testFailureIgnore>
							<includes>
								<include>known/issues/**/*Test.java</include>
							</includes>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<configuration>
                	<encoding>UTF-8</encoding>
                </configuration>
				<executions>
					<execution>
						<id>attach-javadocs</id>
						<goals>
							<goal>jar</goal>
						</goals>
					</execution>
					<execution>
						<id>aggregate</id>
						<phase>site</phase>
						<goals>
							<goal>aggregate</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-enforcer-plugin</artifactId>
				<version>3.0.0-M3</version>
<!-- 			    <dependencies> -->
<!-- 			        <dependency> -->
<!-- 			            <groupId>de.skuzzle.enforcer</groupId> -->
<!-- 			            <artifactId>restrict-imports-enforcer-rule</artifactId> -->
<!-- 			            <version>1.1.0</version> -->
<!-- 			        </dependency> -->
<!-- 			    </dependencies> -->
				<executions>
					<execution>
						<id>enforce</id>
				        <goals>
							<goal>enforce</goal>
						</goals>
						<configuration>
							<rules>
								<requireMavenVersion>
                  					<version>[3.5,)</version>
								</requireMavenVersion>
								<requireJavaVersion>
                  					<version>[1.9,)</version>
								</requireJavaVersion>
                				<banDuplicatePomDependencyVersions />
								<dependencyConvergence />
								<bannedDependencies>
									<excludes>
										<exclude>xalan:xalan</exclude>
									</excludes>
								</bannedDependencies>
<!-- 						        <restrictImports implementation="de.skuzzle.enforcer.restrictimports.rule.RestrictImports"> -->
<!-- 									<includeTestCode>true</includeTestCode> -->
<!-- 									<reason>Use JUnit5 for assertions</reason> -->
<!-- 		                            <bannedImports> -->
<!-- 		                                <bannedImport>static org.junit.Assert.*</bannedImport> -->
<!-- 		                            </bannedImports> -->
<!-- 								</restrictImports> -->
							</rules>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<version>0.8.6</version>
				<executions>
					<execution>
						<id>prepare-agent</id>
						<goals>
							<goal>prepare-agent</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>

		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-compiler-plugin</artifactId>
					<version>3.8.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-source-plugin</artifactId>
					<version>3.2.1</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-surefire-plugin</artifactId>
					<version>3.0.0-M2</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-javadoc-plugin</artifactId>
					<version>3.2.0</version>
				</plugin>
				<plugin>
		            <groupId>org.apache.maven.plugins</groupId>
		            <artifactId>maven-site-plugin</artifactId>
		            <version>3.6</version>
	            </plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-deploy-plugin</artifactId>
					<version>2.8.2</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-resources-plugin</artifactId>
					<version>3.1.0</version>
					<configuration>
						<encoding>${project.encoding}</encoding>
						<nonFilteredFileExtensions><!-- Avoid to modify keystore -->
							<nonFilteredFileExtension>jks</nonFilteredFileExtension>
							<nonFilteredFileExtension>p12</nonFilteredFileExtension>
						</nonFilteredFileExtensions>
					</configuration>
				</plugin>
				<plugin>
	                <groupId>org.apache.maven.plugins</groupId>
	                <artifactId>maven-release-plugin</artifactId>
	                <version>2.5.3</version>
	                <configuration>
						<autoVersionSubmodules>true</autoVersionSubmodules>
						<tagNameFormat>@{project.version}</tagNameFormat>
					</configuration>
	            </plugin>
				<plugin>
					<groupId>org.jvnet.jaxb2.maven2</groupId>
					<artifactId>maven-jaxb2-plugin</artifactId>
					<version>0.14.0</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-install-plugin</artifactId>
					<version>2.5.2</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-project-info-reports-plugin</artifactId>
					<version>2.9</version>
				</plugin>
				<plugin>
					<groupId>org.apache.maven.plugins</groupId>
					<artifactId>maven-antrun-plugin</artifactId>
					<version>1.8</version>
				</plugin>
				<plugin>
				    <groupId>org.codehaus.mojo</groupId>
				    <artifactId>build-helper-maven-plugin</artifactId>
				    <version>3.1.0</version>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>

    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.3</version>
                <configuration>
                    <outputEncoding>${project.encoding}</outputEncoding>
                    <reportPlugins>
                        <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-project-info-reports-plugin</artifactId>
                        </plugin>
                    </reportPlugins>
                </configuration>
            </plugin>
        </plugins>
    </reporting>

    <scm>
		<url>https://ec.europa.eu/cefdigital/code/scm/esig/dss.git</url>
		<connection>scm:git:https://ec.europa.eu/cefdigital/code/scm/esig/dss.git</connection>
		<developerConnection>scm:git:https://ec.europa.eu/cefdigital/code/scm/esig/dss.git</developerConnection>
		<tag>5.8</tag>
	</scm>

	<dependencyManagement>
		<dependencies>
			<!-- Internal Dependencies -->

			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-xmldsig</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-xades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-trusted-list</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-validation-report</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-asic-manifest</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-saml-assertion</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-jws</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>specs-jades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-spi</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-crl-parser</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-crl-parser</artifactId>
				<type>test-jar</type>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-crl-parser-x509crl</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-crl-parser-stream</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-service</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-document</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-asic-common</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-asic-common</artifactId>
				<type>test-jar</type>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-asic-xades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-asic-cades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-cades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
                <artifactId>dss-jades</artifactId>
                <version>${project.version}</version>
            </dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-pades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-pades</artifactId>
				<type>test-jar</type>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-pades-pdfbox</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-pades-openpdf</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-xades</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-model</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-common-remote-dto</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-common-remote-converter</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-signature-remote</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-signature-dto</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-signature-rest</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-signature-rest-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-signature-soap</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-signature-soap-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-validation-dto</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-validation-server-common</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-validation-rest</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-validation-rest-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-validation-soap</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-certificate-validation-dto</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-certificate-validation-common</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-certificate-validation-rest-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-certificate-validation-soap-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-certificate-validation-rest</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-certificate-validation-soap</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-validation-soap-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-token</artifactId>
				<version>${project.version}</version>
			</dependency>
			
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-server-signing-dto</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-server-signing-common</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-server-signing-rest-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-server-signing-rest</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-server-signing-soap-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-server-signing-soap</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-timestamp-dto</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-timestamp-remote</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-timestamp-remote-rest-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-timestamp-remote-soap-client</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-timestamp-remote-rest</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-timestamp-remote-soap</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-tsl-validation</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-enumerations</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-alert</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-jaxb-parsers</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-diagnostic-jaxb</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-policy-jaxb</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-detailed-report-jaxb</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-simple-report-jaxb</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-simple-certificate-report-jaxb</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-i18n</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>validation-policy</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-utils</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-utils</artifactId>
				<type>test-jar</type>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-utils-apache-commons</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-utils-google-guava</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-cookbook</artifactId>
				<version>${project.version}</version>
			</dependency>
			<dependency>
				<groupId>${dss.groupId}</groupId>
				<artifactId>dss-test</artifactId>
				<version>${project.version}</version>
				<type>test-jar</type>
				<scope>test</scope>
			</dependency>
			
			<!-- Public Dependencies -->
			
			<dependency>
				<groupId>org.apache.httpcomponents</groupId>
				<artifactId>httpclient</artifactId>
				<version>${httpclient.version}</version>
			</dependency>
			<dependency>
				<groupId>org.apache.pdfbox</groupId>
				<artifactId>pdfbox</artifactId>
				<version>${pdfbox.version}</version>
			</dependency>
			<dependency>
			    <groupId>org.apache.pdfbox</groupId>
			    <artifactId>preflight</artifactId>
				<version>${pdfbox.version}</version>
			</dependency>
			<dependency>
				<groupId>com.github.librepdf</groupId>
				<artifactId>openpdf</artifactId>
				<version>${openpdf.version}</version>
			</dependency>
			
			<dependency>
				<groupId>org.apache.santuario</groupId>
				<artifactId>xmlsec</artifactId>
				<version>${xmlsec.version}</version>
			</dependency>
			<dependency>
				<groupId>org.bouncycastle</groupId>
				<artifactId>bcprov-jdk15on</artifactId>
				<version>${bouncycastle.version}</version>
			</dependency>
			<dependency>
				<groupId>org.bouncycastle</groupId>
				<artifactId>bcpkix-jdk15on</artifactId>
				<version>${bouncycastle.version}</version>
			</dependency>
			<dependency>
				<groupId>org.bitbucket.b_c</groupId>
				<artifactId>jose4j</artifactId>
				<version>${jose4j.version}</version>
			</dependency>
			
			<!-- Logger -->
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>slf4j-api</artifactId>
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>org.slf4j</groupId>
				<artifactId>jcl-over-slf4j</artifactId> <!-- replaces commons-logging -->
				<version>${slf4j.version}</version>
			</dependency>
			<dependency>
				<groupId>ch.qos.logback</groupId>
				<artifactId>logback-classic</artifactId>
				<version>${logback-classic.version}</version>
			</dependency>

			<!-- JAXB -->
			<dependency>
			    <groupId>jakarta.xml.bind</groupId>
			    <artifactId>jakarta.xml.bind-api</artifactId>
			    <version>${jakarta.bind-api.version}</version>
			</dependency>
			<dependency>
			    <groupId>org.glassfish.jaxb</groupId>
			    <artifactId>jaxb-runtime</artifactId>
			    <version>${jaxb-runtime.version}</version>
			    <scope>runtime</scope>
			</dependency>
			
			<!-- REST/SOAP API -->
			<dependency>
			    <groupId>jakarta.ws.rs</groupId>
			    <artifactId>jakarta.ws.rs-api</artifactId>
			    <version>${jakarta.rs-api.version}</version>
			</dependency>
			<dependency>
			    <groupId>jakarta.xml.ws</groupId>
			    <artifactId>jakarta.xml.ws-api</artifactId>
			    <version>${jakarta.ws-api.version}</version>
			</dependency>

			<!-- Testing -->
			<dependency>
			    <groupId>org.junit.platform</groupId>
			    <artifactId>junit-platform-launcher</artifactId>
			    <version>${junit.platform.version}</version>
			</dependency>
			<dependency>
			    <groupId>org.junit.jupiter</groupId>
			    <artifactId>junit-jupiter-engine</artifactId>
			    <version>${junit.jupiter.version}</version>
			</dependency>
			<dependency>
			    <groupId>org.junit.jupiter</groupId>
			    <artifactId>junit-jupiter-params</artifactId>
			    <version>${junit.jupiter.version}</version>
			</dependency>
			<!-- JUnit Test Suite compatibility -->
			<dependency>
			    <groupId>org.junit.platform</groupId>
			    <artifactId>junit-platform-runner</artifactId>
			    <version>${junit.platform.version}</version>
			</dependency>

			<dependency>
				<groupId>org.awaitility</groupId>
				<artifactId>awaitility</artifactId>
				<version>${awaitility.version}</version>
			</dependency>
			<dependency>
				<groupId>org.mockito</groupId>
				<artifactId>mockito-core</artifactId>
				<version>${mockito.version}</version>
			</dependency>
			<dependency>
			    <groupId>com.h2database</groupId>
			    <artifactId>h2</artifactId>
			    <version>${h2database.version}</version>
			</dependency>
			<dependency>
				<groupId>com.fasterxml.jackson.module</groupId>
				<artifactId>jackson-module-jaxb-annotations</artifactId>
				<version>${jackson.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

    <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>
	
	<issueManagement>
		<system>JIRA</system>
		<url>https://ec.europa.eu/cefdigital/tracker/projects/DSS</url>
		<!-- <url>https://esig-dss.atlassian.net/projects/DSS</url> Old issues -->
	</issueManagement>

	<profiles>
		<profile>
			<id>quick</id>
			<properties>
				<maven.test.skip>true</maven.test.skip>
				<maven.javadoc.skip>true</maven.javadoc.skip>
				<jacoco.skip>true</jacoco.skip>
			</properties>
		</profile>
		<profile>
			<!-- Include tests with @Tag("slow") -->
			<id>slow-tests</id>
			<properties>
				<exclude.tag.tests>nothing-to-exclude</exclude.tag.tests>
			</properties>
		</profile>
		<profile>
			<id>owasp</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.owasp</groupId>
						<artifactId>dependency-check-maven</artifactId>
						<version>6.0.3</version>
						<configuration>
							<failBuildOnCVSS>8</failBuildOnCVSS>
						</configuration>
						<executions>
							<execution>
								<goals>
									<goal>check</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<profile>
            <id>jdk19-plus</id>
            <activation>
                <jdk>[9,)</jdk>
            </activation>
<!--             <properties> -->
<!-- 				<maven.compiler.release>9</maven.compiler.release> -->
<!--             </properties> -->
            <build>
            	<plugins>
            		<plugin>
			            <groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<configuration>
							<release>8</release>
							<additionalJOptions>
								<additionalJOption>-html5</additionalJOption>
							</additionalJOptions>
		                </configuration>
            		</plugin>
            	</plugins>
            </build>
		</profile>
		<profile>
			<id>spotless</id>
			<build>
				<plugins>
					<plugin>
						<groupId>com.diffplug.spotless</groupId>
						<artifactId>spotless-maven-plugin</artifactId>
						<version>1.28.0</version>
						<configuration>
							<java>
								<licenseHeader>
									<file>${user.dir}/spotless/license-header.java</file>
								</licenseHeader>
<!-- 								<eclipse> -->
<!-- 									<file>${user.dir}/spotless/eclipse-fmt.xml</file> -->
<!-- 								</eclipse> -->
								<removeUnusedImports />
							</java>
						</configuration>
						<executions>
							<execution>
								<id>spotless-check</id>
								<phase>compile</phase>
								<goals>
									<goal>apply</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
</project>