<?xml version="1.0" encoding="UTF-8"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<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>
        <groupId>org.apache.marmotta</groupId>
        <artifactId>marmotta-parent</artifactId>
        <version>3.1.0-incubating</version>
        <relativePath>../../../parent</relativePath>
    </parent>

    <name>LDPath Backend: Linked Data</name>
    <artifactId>ldpath-backend-linkeddata</artifactId>
    <packaging>jar</packaging>

    <build>
        <pluginManagement>
            <plugins>
                <plugin> <!-- generate JRebel Configuration -->
                    <groupId>org.zeroturnaround</groupId>
                    <artifactId>jrebel-maven-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>generate-rebel-xml</id>
                            <phase>process-resources</phase>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <relativePath>../../../</relativePath>
                        <rootPath>$${rebel.root}</rootPath>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.jasig.maven</groupId>
                <artifactId>maven-notice-plugin</artifactId>
                <version>1.0.4</version>
                <configuration>
                    <noticeTemplate>NOTICE.template</noticeTemplate>

                    <licenseMapping>
                        <param>../../../license-mappings.xml</param>
                    </licenseMapping>
                </configuration>
            </plugin>
        </plugins>
    </build>

    <profiles>
        <profile>
            <id>marmotta-release</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-jar-plugin</artifactId>
                        <configuration>
                            <archive>
                                <manifest>
                                    <mainClass>org.apache.marmotta.ldpath.backend.linkeddata.LDQuery</mainClass>
                                </manifest>
                            </archive>
                        </configuration>
                    </plugin>
                    <plugin>
                        <groupId>com.jolira</groupId>
                        <artifactId>onejar-maven-plugin</artifactId>
                        <version>1.4.4</version>
                        <executions>
                            <execution>
                                <phase>package</phase>
                                <goals>
                                    <goal>one-jar</goal>
                                </goals>
                                <configuration>
                                    <filename>ldpath-${project.version}.jar</filename>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>truezip-maven-plugin</artifactId>
                        <version>1.1</version>
                        <executions>
                            <execution>
                                <id>copy-into</id>
                                <goals>
                                    <goal>copy</goal>
                                </goals>
                                <phase>package</phase>
                                <configuration>
                                    <filesets>
                                        <fileset>
                                            <directory>${project.basedir}/src/main/doc/</directory>
                                            <includes>
                                                <include>LICENSE.txt</include>
                                                <include>NOTICE.txt</include>
                                            </includes>
                                            <outputDirectory>target/ldpath-${project.version}.jar/META-INF</outputDirectory>
                                        </fileset>
                                        <fileset>
                                            <directory>${project.basedir}/../../../</directory>
                                            <includes>
                                                <include>DISCLAIMER.txt</include>
                                            </includes>
                                            <outputDirectory>target/ldpath-${project.version}.jar/META-INF</outputDirectory>
                                        </fileset>
                                    </filesets>
                                </configuration>
                            </execution>

                        </executions>
                    </plugin>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>single</goal>
                                </goals>
                                <phase>package</phase>
                                <configuration>
                                    <descriptors>
                                        <descriptor>assembly.xml</descriptor>
                                    </descriptors>
                                    <finalName>apache-marmotta-${project.version}</finalName>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>

    <dependencies>

        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-core</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-backend-sesame</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-functions-text</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-functions-xml</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-functions-math</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-functions-html</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldpath-functions-date</artifactId>
        </dependency>

        <!-- LDClient and some of the more interesting providers -->
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-core</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-provider-rdf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-provider-rdfa</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-provider-facebook</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-provider-mediawiki</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-provider-youtube</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldclient-provider-vimeo</artifactId>
        </dependency>


        <!-- LDCache Generic Sail and File Backend -->
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldcache-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldcache-core</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldcache-sail-generic</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.marmotta</groupId>
            <artifactId>ldcache-backend-file</artifactId>
        </dependency>


        <!-- Sesame Model and Parsers -->
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-model</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-repository-sail</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-repository-event</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-rdfxml</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-trix</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-turtle</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-n3</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-ntriples</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-rio-trig</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-sail-api</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-sail-memory</artifactId>
        </dependency>
        <dependency>
            <groupId>org.openrdf.sesame</groupId>
            <artifactId>sesame-sail-nativerdf</artifactId>
        </dependency>


        <dependency>
            <groupId>commons-cli</groupId>
            <artifactId>commons-cli</artifactId>
            <version>1.2</version>
        </dependency>
        <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
        </dependency>
        <dependency>
            <groupId>ch.qos.logback</groupId>
            <artifactId>logback-classic</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-io</groupId>
            <artifactId>commons-io</artifactId>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
        </dependency>


    </dependencies>


</project>
