<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.49</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>Franck Bodmer</name>
			<email>bodmer@ids-mannheim.de</email>
		</developer>
		<developer>
			<name>Elena Irimia</name>
		</developer>
	</developers>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>		
		<jackson.version>2.22.1</jackson.version>
		<jackson.annotations.version>2.21</jackson.annotations.version>
		<antlr4.version>4.13.2</antlr4.version>
		<antlr3.version>3.5.3</antlr3.version>
		<java.version>21</java.version>
		<log4j.version>2.26.1</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.3</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.6.0-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.annotations.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>org.apache.commons</groupId>
			<artifactId>commons-lang3</artifactId>
			<version>3.20.0</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.18</version>
		</dependency>
		<dependency>
			<groupId>eu.clarin.sru.fcs</groupId>
			<artifactId>fcs-simple-endpoint</artifactId>
			<version>2.0.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.5.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_opMORPH.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.6</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.15.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.5.0</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>
