<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0">

    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.dbpedia</groupId>
        <artifactId>extraction</artifactId>
        <version>3.8</version>
    </parent>

    <groupId>org.dbpedia.extraction</groupId>
    <artifactId>server</artifactId>
    <name>DBpedia Server</name>

    <build>
        <plugins>
            <plugin>
                
                <groupId>org.scala-tools</groupId>
                <artifactId>maven-scala-plugin</artifactId>

                <configuration>
                    <launchers>
                        <launcher>
                            <id>server</id>
                            <mainClass>org.dbpedia.extraction.server.Server</mainClass>
                            <args>
                                <arg>http://mappings.dbpedia.org/</arg><!-- base URI of mappings wiki -->
                                <arg>http://localhost:9999/server/</arg><!-- using /server/ here makes handling redirects from mappings wiki easier -->
                                <arg>CHANGE-THIS-PASSWORD</arg><!-- statistics ignore list password -->
                                <arg>src/main/statistics</arg><!-- statistics files dir -->
                                <arg>../ontology.xml</arg><!-- ontology file. if it doesn't exist, load from server -->
                                <arg>../mappings</arg><!-- mappings dir. if it doesn't exist, load from server -->
                                <!-- all additional args are languages, comma or whitespace separated -->
                                <!-- if none are given, all languages with a mapping namespace are used -->
                                <!-- <arg>ar,bg,bn</arg> -->
                            </args>
                            <jvmArgs>
                                <jvmArg>-Xms512m</jvmArg>
                                <jvmArg>-Xmx4096m</jvmArg><!-- 4G is ok with CMS or G1, other GCs need >= 4.5G -->
                                <jvmArg>-XX:+PrintGC</jvmArg>
                                <jvmArg>-XX:+PrintGCTimeStamps</jvmArg>
                                <jvmArg>-XX:+HeapDumpOnOutOfMemoryError</jvmArg>
                                <jvmArg>-XX:+UseConcMarkSweepGC</jvmArg>
                                <!-- <jvmArg>-XX:+UseG1GC</jvmArg> --><!-- ~20% slower than CMS --> 
                                <!-- <jvmArg>-XX:+PrintGCDetails</jvmArg> --><!-- not necessary with CMS, annoying with G1 -->
                            </jvmArgs>
                        </launcher>
                        <launcher>
                            <id>stats</id>
                            <mainClass>org.dbpedia.extraction.server.stats.CreateMappingStats</mainClass>
                            <args>
                                <arg>/home/release/wikipedia</arg><!-- base dir -->
                                <arg>src/main/statistics</arg><!-- statistics files dir -->
                                <arg>false</arg><!-- pretty printing? ugly in log files. -->
                                <!-- all additional args are languages, comma or whitespace separated -->
                                <!-- if none are given, all languages with a mapping namespace are used -->
                                <!-- <arg>ar,bg,bn</arg> -->
                            </args>
                        </launcher>
                    </launchers>
                </configuration>

            </plugin>
        </plugins>
    </build>

    <dependencies>

        <dependency>
            <groupId>org.dbpedia.extraction</groupId>
            <artifactId>core</artifactId>
        </dependency>

        <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-server</artifactId>
            <version>1.12</version>
        </dependency>

    </dependencies>

</project>
