<?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>
	<parent>
		<artifactId>zaf</artifactId>
		<groupId>cz.zaf</groupId>
		<version>1.1.1</version>
	</parent>
	<artifactId>zaf-core</artifactId>
	<name>ZAF Core</name>

	<properties>
		<xjcDirectory>${project.build.directory}/generated-sources/xjc</xjcDirectory>
	</properties>

	<dependencies>
		<dependency>
			<groupId>commons-codec</groupId>
			<artifactId>commons-codec</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-io</groupId>
			<artifactId>commons-io</artifactId>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-collections4</artifactId>
		</dependency>
		<dependency>
			<groupId>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.5</version>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
		</dependency>
		<dependency>
			<groupId>ch.qos.logback</groupId>
			<artifactId>logback-classic</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.pdfbox</groupId>
			<artifactId>pdfbox</artifactId>
			<version>2.0.21</version>
		</dependency>
		<dependency>
			<groupId>org.apache.tika</groupId>
			<artifactId>tika-parsers</artifactId>
		</dependency>
		<!-- Tika depdendecies to eliminate warnings -->
		<dependency>
			<groupId>org.apache.pdfbox</groupId>
			<artifactId>jbig2-imageio</artifactId>
			<version>3.0.3</version>
		</dependency>
		<dependency>
			<groupId>com.github.jai-imageio</groupId>
			<artifactId>jai-imageio-core</artifactId>
			<version>1.4.0</version>
		</dependency>
		<dependency>
			<groupId>com.github.jai-imageio</groupId>
			<artifactId>jai-imageio-jpeg2000</artifactId>
			<version>1.3.0</version>
		</dependency>
		<dependency>
			<groupId>org.xerial</groupId>
			<artifactId>sqlite-jdbc</artifactId>
			<version>3.31.1</version>
		</dependency>
		<dependency>
			<groupId>com.ibm.icu</groupId>
			<artifactId>icu4j</artifactId>
		</dependency>
		<dependency>
			<groupId>net.lingala.zip4j</groupId>
			<artifactId>zip4j</artifactId>
		</dependency>
		<dependency>
			<groupId>org.junit.jupiter</groupId>
			<artifactId>junit-jupiter-engine</artifactId>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>xerces</groupId>
			<artifactId>xercesImpl</artifactId>
			<version>2.12.2</version>
		</dependency>
		<dependency>
			<groupId>org.apache.httpcomponents.client5</groupId>
			<artifactId>httpclient5</artifactId>
			<version>5.2</version>
		</dependency>
		<dependency>
			<groupId>org.yaml</groupId>
			<artifactId>snakeyaml</artifactId>
			<version>1.33</version>
		</dependency>
	</dependencies>

	<build>
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>3.2.0</version>
				<executions>
					<execution>
						<id>add-gen-sources</id>
						<phase>generate-resources</phase>
						<goals>
							<goal>add-source</goal>
						</goals>
						<configuration>
							<sources>
								<source>${xjcDirectory}/validacexsd</source>
								<source>${project.build.directory}/generated-sources/validacexsd</source>
							</sources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.jvnet.jaxb2.maven2</groupId>
				<artifactId>maven-jaxb2-plugin</artifactId>
				<version>0.14.0</version>
				<executions>
					<execution>
						<id>jaxb2-generate-validacexsd</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>generate</goal>
						</goals>
						<configuration>
							<schemaDirectory>src/main/resources/schema</schemaDirectory>
							<schemaIncludes>
								<include>validaceSIP.xsd</include>
							</schemaIncludes>
							<generatePackage>cz.zaf.schema.validacesip</generatePackage>
							<generateDirectory>${project.build.directory}/generated-sources/validacexsd</generateDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<version>3.1.2</version>
				<executions>
					<execution>
						<id>include-verapdf-app</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>copy</goal>
						</goals>
					</execution>
				</executions>
				<configuration>
					<artifactItems>
						<artifactItem>
							<groupId>org.verapdf.apps</groupId>
							<artifactId>greenfield-apps</artifactId>
							<version>1.24.1</version>
							<type>jar</type>
							<destFileName>greenfield-apps.jar</destFileName>
						</artifactItem>
					</artifactItems>
					<outputDirectory>${project.build.directory}/verapdf</outputDirectory>
					<overWriteReleases>false</overWriteReleases>
					<overWriteSnapshots>true</overWriteSnapshots>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-resources-plugin</artifactId>
				<version>3.1.0</version>
				<configuration>
					<includeEmptyDirs>true</includeEmptyDirs>
				</configuration>
				<executions>
					<execution>
						<id>copy-test-resource</id>
						<!--<phase>package</phase> -->
						<phase>generate-sources</phase>
						<goals>
							<goal>testResources</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.testOutputDirectory}/testdata</outputDirectory>
							<resources>
								<resource>
									<directory>${project.basedir}/../testdata</directory>
								</resource>
							</resources>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>1.8</source>
					<target>1.8</target>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>3.2.0</version>
				<configuration>
					<archive>
						<manifest>
							<mainClass>cz.zaf.sipvalidator.CmdValidator</mainClass>
						</manifest>
					</archive>
				</configuration>
			</plugin>
		</plugins>
		<resources>
			<resource>
				<directory>src/main/resources</directory>
				<filtering>true</filtering>
				<includes>
					<include>**/*.yaml</include>
					<include>zaf-core.properties</include>
				</includes>
			</resource>
			<resource>
				<directory>target</directory>
				<includes>
					<include>verapdf/*.jar</include>
				</includes>
			</resource>
			<resource>
				<directory>src/main/resources</directory>
				<filtering>false</filtering>
				<excludes>
					<exclude>**/*.yaml</exclude>
					<exclude>zaf-core.properties</exclude>
				</excludes>
			</resource>
		</resources>
		<testResources>
			<!-- Copy default test resources -->
			<!-- <testResource> <directory>src/test/resources</directory> <filtering>true</filtering> 
				<includes> <include>**/*.yaml</include> </includes> </testResource> <testResource> 
				<directory>src/test/resources</directory> <filtering>false</filtering> <excludes> 
				<exclude>**/*.yaml</exclude> </excludes> </testResource> -->
			<!-- Add test folder with source files for packages -->
			<!-- <testResource> <directory>${basedir}/target/test-resources</directory> 
				<includes /> </testResource> -->
			<!-- <testResource> <directory>${project.basedir}/../testdata</directory> 
				<targetPath>${project.basedir}/target/test-classes/testdata</targetPath> 
				</testResource> -->
			<!-- <testResource> <directory>${project.basedir}/../rules-simple-dev/src</directory> 
				<targetPath>${project.basedir}/target/test-classes/rules-simple-dev</targetPath> 
				</testResource> -->
		</testResources>
	</build>

	<profiles>

		<profile>
			<id>javadoc</id>
			<build>
				<plugins>
  			        <plugin>
        			    <groupId>org.apache.maven.plugins</groupId>
        			    <artifactId>maven-javadoc-plugin</artifactId>
        			    <version>3.3.1</version>
        			    <configuration>
                            <skip>false</skip>
                            <excludePackageNames>cz.zaf.schema.*</excludePackageNames>
                            <sourcepath>${project.basedir}/src/main/java:${project.build.directory}/generated-sources/validacexsd</sourcepath>
        			    </configuration>
        			</plugin>			
  				</plugins>
			</build>
		</profile>
		<profile>
			<id>jacoco-report</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.jacoco</groupId>
						<artifactId>jacoco-maven-plugin</artifactId>
						<configuration>
							<excludes>org.drools.compiler.lang.*</excludes>
						</configuration>
						<executions>
							<execution>
								<id>default-prepare-agent</id>
								<goals>
									<goal>prepare-agent</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>

</project>
