<?xml version="1.0" encoding="UTF-8"?>

<!--
 * See the NOTICE file distributed with this work for additional
 * information regarding copyright ownership.
 *
 * This is free software; you can redistribute it and/or modify it
 * under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation; either version 2.1 of
 * the License, or (at your option) any later version.
 *
 * This software is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this software; if not, write to the Free
 * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
 * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-->

<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>xwiki-platform-search</artifactId>
    <groupId>org.xwiki.platform</groupId>
    <version>10.7</version>
  </parent>
  <artifactId>xwiki-platform-search-solr</artifactId>
  <packaging>pom</packaging>
  <name>XWiki Platform - Search - Solr - Parent POM</name>
  <description>Parent project for the Solr search engine.</description>
  <properties>
    <solr.version>${lucene.version}</solr.version>
  </properties>
  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.apache.solr</groupId>
        <artifactId>solr-solrj</artifactId>
        <version>${solr.version}</version>
        <exclusions>
          <!-- We want a different version of Woodstox and the id changed -->
          <exclusion>
            <groupId>org.codehaus.woodstox</groupId>
            <artifactId>woodstox-core-asl</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>org.apache.solr</groupId>
        <artifactId>solr-core</artifactId>
        <version>${solr.version}</version>
        <exclusions>
          <!-- We want to choose the SLF4J binding only when XWiki is packaged. -->
          <exclusion>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
          </exclusion>
          <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
          </exclusion>
          <!-- Exclude the dependencies that are needed by Solr when it runs as a separate webapp because we use
            solr-core to embed Solr in the same webapp as XWiki. This doesn't mean we cannot communicate with a remote
            Solr instance. This part is handled by solr-solrj jar. -->
          <exclusion>
            <groupId>org.restlet.jee</groupId>
            <artifactId>org.restlet</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.restlet.jee</groupId>
            <artifactId>org.restlet.ext.servlet</artifactId>
          </exclusion>
          <exclusion>
            <groupId>org.eclipse.jetty</groupId>
            <artifactId>*</artifactId>
          </exclusion>
          <exclusion>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
          </exclusion>
          <!-- XWiki is using org.dom4j:dom4j:2.0.0+. Previous versions of dom4j were using dom4j:dom4j
               and thus we need to exclude them so that they don't end up in the XWiki WAR -->
          <exclusion>
            <groupId>dom4j</groupId>
            <artifactId>dom4j</artifactId>
          </exclusion>
          <!-- We want a different version of Woodstox and the id changed -->
          <exclusion>
            <groupId>org.codehaus.woodstox</groupId>
            <artifactId>woodstox-core-asl</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <!-- Make sure we use the right version of Restlet. -->
      <dependency>
        <groupId>org.restlet.jse</groupId>
        <artifactId>org.restlet</artifactId>
        <version>${restlet.version}</version>
      </dependency>
      <!-- Explicit dependency on dom4j since we're excluding it above -->
      <dependency>
        <groupId>org.dom4j</groupId>
        <artifactId>dom4j</artifactId>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <modules>
    <module>xwiki-platform-search-solr-server</module>
    <module>xwiki-platform-search-solr-api</module>
    <module>xwiki-platform-search-solr-query</module>
    <module>xwiki-platform-search-solr-rest</module>
    <module>xwiki-platform-search-solr-ui</module>
  </modules>
  <profiles>
    <profile>
      <id>integration-tests</id>
      <modules>
        <module>xwiki-platform-search-solr-test-utils</module>
      </modules>
    </profile>
  </profiles>
</project>
