<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>de.ids-mannheim.korap.koral</groupId>
	<artifactId>Koral</artifactId>
	<version>0.44.0</version>
	<packaging>jar</packaging>
	<name>Koral</name>
	<url>https://korap.ids-mannheim.de</url>

	<organization>
		<name>IDS Mannheim</name>
		<url>http://www.ids-mannheim.de/</url>
	</organization>

	<developers>
		<developer>
			<name>Joachim Bingel</name>
			<email>bingel@ids-mannheim.de</email>
		</developer>
		<developer>
			<name>Nils Diewald</name>
			<email>diewald@ids-mannheim.de</email>
			<url>http://nils-diewald.de</url>
		</developer>
		<developer>
			<name>Michael Hanl</name>
			<email>hanl@ids-mannheim.de</email>
		</developer>
		<developer>
			<name>Eliza Margaretha</name>
			<email>margaretha@ids-mannheim.de</email>
		</developer>
		<developer>
			<name>Elena Irimia</name>
		</developer>
	</developers>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>		
		<jackson.version>2.18.2</jackson.version>
		<antlr4.version>4.9.3</antlr4.version>
		<antlr3.version>3.5.3</antlr3.version>
		<java.version>11</java.version>
		<log4j.version>2.24.2</log4j.version>
	</properties>
	
	<repositories>
		<repository>
			<id>id-maven-repo</id>
			<url>https://maven.indexdata.com</url>
		</repository>
		<repository>
			<id>CLARIN</id>
			<name>CLARIN Repository</name>
			<url>https://nexus.clarin.eu/content/repositories/Clarin</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
	</repositories>
	<dependencies>
		<dependency>
			<groupId>org.antlr</groupId>
			<artifactId>antlr4-runtime</artifactId>
			<version>${antlr4.version}</version>
		</dependency>
		<!-- adding manually due to Shell Command Injection and Directory Traversal
		https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-1000487 
		https://cwe.mitre.org/data/definitions/22.html --> 
		<dependency>
		    <groupId>org.codehaus.plexus</groupId>
		    <artifactId>plexus-utils</artifactId>
		    <version>4.0.2</version>
		</dependency>
		<dependency>
			<groupId>org.antlr</groupId>
			<artifactId>antlr-runtime</artifactId>
			<version>${antlr3.version}</version>
			<scope>compile</scope>
		</dependency>
		<dependency>
			<groupId>com.google.guava</groupId>
			<artifactId>guava</artifactId>
			<version>33.3.1-jre</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-core</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-annotations</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>com.fasterxml.jackson.core</groupId>
			<artifactId>jackson-databind</artifactId>
			<version>${jackson.version}</version>
		</dependency>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.13.2</version>
			<scope>test</scope>
		</dependency>
		<dependency>
			<groupId>commons-lang</groupId>
			<artifactId>commons-lang</artifactId>
			<version>2.6</version>
		</dependency>
		<dependency>
			<groupId>org.z3950.zing</groupId>
			<artifactId>cql-java</artifactId>
			<version>1.13</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-api</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-slf4j2-impl</artifactId>
			<version>${log4j.version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-jul</artifactId>
			<version>${log4j.version}</version>
			<exclusions>
				<exclusion>
					<groupId>org.slf4j</groupId>
					<artifactId>slf4j-api</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>2.0.16</version>
		</dependency>
		<dependency>
			<groupId>eu.clarin.sru.fcs</groupId>
			<artifactId>fcs-simple-endpoint</artifactId>
			<version>1.8.0</version>
		</dependency>
  </dependencies>
	<build>
		<sourceDirectory>${basedir}/src/main/java</sourceDirectory>
		<outputDirectory>${basedir}/target/classes</outputDirectory>
		<plugins>
		  <plugin>
			  <groupId>org.apache.maven.plugins</groupId>
			  <artifactId>maven-clean-plugin</artifactId>
		    <version>3.4.0</version>
		    <configuration>
		      <filesets>
		        <fileset>
		          <directory>${basedir}/src/main/java/de/ids_mannheim/korap/query/parse</directory>
		          <includes>
		          	<include>**/*.java</include>
		            <include>**/*.tokens</include>
		          </includes>
		          <excludes>
		          	<exclude>**/IErrorReporter.java</exclude>
		          	<exclude>**/c2ps_opAnnot.java</exclude>
		          	<exclude>**/c2ps_opBED.java</exclude>
		          	<exclude>**/c2ps_opELEM.java</exclude>
		          	<exclude>**/c2ps_opIN.java</exclude>
		          	<exclude>**/c2ps_opOV.java</exclude>
		          	<exclude>**/c2ps_opPROX.java</exclude>
		          	<exclude>**/c2ps_opREG.java</exclude>
		          	<exclude>**/c2ps_opWF.java</exclude>
		          	<exclude>**/c2ps_optCase.java</exclude>
		          	<exclude>**/.gitignore</exclude>
		          	<exclude>fcsql/*</exclude>
		          </excludes>
		          <followSymlinks>false</followSymlinks>
		        </fileset>
		      </filesets>
		    </configuration>
		  </plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>3.5.2</version>
				<configuration>
                    <useSystemClassLoader>false</useSystemClassLoader>
					<excludes>
						<exclude>**/OPINTest.java</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.13.0</version>
				<configuration>
					<!-- <verbose>true</verbose>
		          	<fork>true</fork> -->
		         	<!-- <executable>${env.JAVA7_HOME}/bin/javac</executable> -->
					<source>${java.version}</source>
					<target>${java.version}</target>
				</configuration>
			</plugin>
			<!-- <plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>properties-maven-plugin</artifactId>
				<version>1.0.0</version>
				<executions>
					<execution>
						<goals>
							<goal>set-system-properties</goal>
						</goals>
						<configuration>
							<properties>
								<property>
									<name>https.protocols</name>
									<value>TLSv1.2</value>
								</property>
							</properties>
						</configuration>
					</execution>
				</executions>
			</plugin> -->
			<!-- <plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<version>2.19.1</version>
				<configuration>
					<systemProperties>
			            <property>
			              <name>https.protocols</name>
			              <value>TLSv1.2</value>
			            </property>
			          </systemProperties>
					<argLine>-Djava.https.protocols=TLSv1.2</argLine>
				</configuration>
			</plugin>
			<plugin>
		        <groupId>org.apache.maven.plugins</groupId>
		        <artifactId>maven-failsafe-plugin</artifactId>
		        <version>2.19.1</version>
		        <configuration>
		          <systemPropertyVariables>
		            <https.protocols>TLSv1.2</https.protocols>
		          </systemPropertyVariables>
		        </configuration>
	      </plugin> -->
			<!-- Formatter plugin for Eclipse based coding conventions http://maven-java-formatter-plugin.googlecode.com/svn/site/0.4/usage.html -->
			<plugin>
				<groupId>com.googlecode.maven-java-formatter-plugin</groupId>
				<artifactId>maven-java-formatter-plugin</artifactId>
				<version>0.4</version>
				<configuration>
					<configFile>${project.basedir}/Format.xml</configFile>
					<overrideConfigCompilerVersion>true</overrideConfigCompilerVersion>
					<compilerSource>${java.version}</compilerSource>
					<compilerCompliance>${java.version}</compilerCompliance>
					<compilerTargetPlatform>${java.version}</compilerTargetPlatform>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-dependency-plugin</artifactId>
				<executions>
					<execution>
						<phase>package</phase>
						<goals>
							<goal>copy-dependencies</goal>
						</goals>
						<configuration>
							<outputDirectory>${project.build.directory}/../lib</outputDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jar-plugin</artifactId>
				<version>3.4.2</version>
				<configuration>
					<archive>
						<manifest>
							<addClasspath>true</addClasspath>
							<classpathPrefix>../lib/</classpathPrefix>
							<mainClass>de.ids_mannheim.korap.query.serialize.QuerySerializer</mainClass>
						</manifest>
					</archive>
				</configuration>
			</plugin>
			<plugin>
				<!-- This plugin will help to build the ANTLR4 grammar on the fly. The 
					recipe is based on http://stackoverflow.com/questions/15310628/ customize-maven-to-automatically-create-antlr4-grammar-java-files-on-build -->
				<groupId>org.antlr</groupId>
				<artifactId>antlr4-maven-plugin</artifactId>
				<version>${antlr4.version}</version>
				<executions>
					<execution>
						<id>poliqarpplus</id>
						<goals>
							<goal>antlr4</goal>
						</goals>
						<configuration>
							<sourceDirectory>${basedir}/src/main/antlr/poliqarpplus</sourceDirectory>
							<outputDirectory>${basedir}/src/main/java/de/ids_mannheim/korap/query/parse/poliqarpplus</outputDirectory>
							<libDirectory>${basedir}/src/main/antlr/poliqarpplus</libDirectory>
						</configuration>
						<!-- <phase>generate-sources</phase> -->
					</execution>
					<execution>
						<id>annis</id>
						<goals>
							<goal>antlr4</goal>
						</goals>
						<configuration>
							<sourceDirectory>${basedir}/src/main/antlr/annis</sourceDirectory>
							<outputDirectory>${basedir}/src/main/java/de/ids_mannheim/korap/query/parse/annis</outputDirectory>
							<libDirectory>${basedir}/src/main/antlr/annis</libDirectory>
						</configuration>
						<!-- <phase>generate-sources</phase> -->
					</execution>
					<execution>
						<id>collection</id>
						<goals>
							<goal>antlr4</goal>
						</goals>
						<configuration>
							<sourceDirectory>${basedir}/src/main/antlr/collection</sourceDirectory>
							<outputDirectory>${basedir}/src/main/java/de/ids_mannheim/korap/query/parse/collection</outputDirectory>
							<libDirectory>${basedir}/src/main/antlr/collection</libDirectory>
						</configuration>
						<!-- <phase>generate-sources</phase> -->
					</execution>
					<execution>
						<id>cqp</id>
						<goals>
							<goal>antlr4</goal>
						</goals>
						<configuration>
							<sourceDirectory>${basedir}/src/main/antlr/cqp</sourceDirectory>
							<outputDirectory>${basedir}/src/main/java/de/ids_mannheim/korap/query/parse/cqp</outputDirectory>
							<libDirectory>${basedir}/src/main/antlr/cqp</libDirectory>
						</configuration>
					</execution>
        </executions>
			</plugin>
			<plugin>
				<!-- This plugin will help to build the ANTLR3 grammar on the fly. The 
					recipe is based on http://stackoverflow.com/questions/15310628/ customize-maven-to-automatically-create-antlr4-grammar-java-files-on-build -->
				<groupId>org.antlr</groupId>
				<artifactId>antlr3-maven-plugin</artifactId>
				<version>${antlr3.version}</version>
				<configuration>
					<sourceDirectory>${basedir}/src/main/antlr/cosmas</sourceDirectory>
					<outputDirectory>${basedir}/src/main/java/de/ids_mannheim/korap/query/parse/cosmas</outputDirectory>
					<libDirectory>${basedir}/src/main/antlr</libDirectory>
				</configuration>
				<executions>
					<execution>
						<goals>
							<goal>antlr</goal>
						</goals>
						<!-- <phase>generate-sources</phase> -->
					</execution>
				</executions>
			</plugin>
		</plugins>
    <resources>
			<resource>
				<directory>src/main/resources</directory>
				<filtering>true</filtering>
				<includes>
					<include>koral.info</include>
				</includes>
			</resource>
		</resources>
		<pluginManagement>
			<plugins>
				<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
				<plugin>
					<groupId>org.eclipse.m2e</groupId>
					<artifactId>lifecycle-mapping</artifactId>
					<version>1.0.0</version>
					<configuration>
						<lifecycleMappingMetadata>
							<pluginExecutions>
								<pluginExecution>
									<pluginExecutionFilter>
										<groupId>org.antlr</groupId>
										<artifactId>
											antlr3-maven-plugin
										</artifactId>
										<versionRange>
											[3.5.2,)
										</versionRange>
										<goals>
											<goal>antlr</goal>
										</goals>
									</pluginExecutionFilter>
									<action>
										<ignore></ignore>
									</action>
								</pluginExecution>
							</pluginExecutions>
						</lifecycleMappingMetadata>
					</configuration>
				</plugin>
			</plugins>
		</pluginManagement>
	</build>
</project>
