<?xml version="1.0" encoding="UTF-8"?>
<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/maven-v4_0_0.xsd">
  <parent>
    <artifactId>oss-parent</artifactId>
    <groupId>org.sonatype.oss</groupId>
    <version>7</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.elasticsearch</groupId>
  <artifactId>elasticsearch</artifactId>
  <name>elasticsearch</name>
  <version>0.90.1</version>
  <description>ElasticSearch - Open Source, Distributed, RESTful Search Engine</description>
  <inceptionYear>2009</inceptionYear>
  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>
  <scm>
    <connection>scm:git:git@github.com:elasticsearch/elasticsearch.git</connection>
    <developerConnection>scm:git:git@github.com:elasticsearch/elasticsearch.git</developerConnection>
    <url>http://github.com/elasticsearch/elasticsearch</url>
  </scm>
  <build>
    <resources>
      <resource>
        <directory>${basedir}/src/main/java</directory>
        <includes>
          <include>**/*.json</include>
          <include>**/*.yml</include>
        </includes>
      </resource>
      <resource>
        <directory>${basedir}/src/main/resources</directory>
        <includes>
          <include>**/*.*</include>
        </includes>
      </resource>
    </resources>
    <testResources>
      <testResource>
        <directory>${basedir}/src/test/java</directory>
        <includes>
          <include>**/*.json</include>
          <include>**/*.yml</include>
          <include>**/*.txt</include>
        </includes>
      </testResource>
      <testResource>
        <directory>${basedir}/src/test/resources</directory>
        <includes>
          <include>**/*.*</include>
        </includes>
      </testResource>
    </testResources>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.eclipse.m2e</groupId>
          <artifactId>lifecycle-mapping</artifactId>
          <version>1.0.0</version>
          <configuration>
            <lifecycleMappingMetadata>
              <pluginExecutions>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <versionRange>[1.0.0,)</versionRange>
                    <goals>
                      <goal>copy-dependencies</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>2.3.2</version>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.12.3</version>
        <configuration>
          <includes>
            <include>**/*Tests.java</include>
          </includes>
          <properties>
            <property>
              <name>listener</name>
              <value>org.elasticsearch.test.TestNGLoggingListener</value>
            </property>
          </properties>
          <argLine>-Xmx512m -Des.logger.prefix=</argLine>
          <systemPropertyVariables>
            <es.node.local>${env.ES_TEST_LOCAL}</es.node.local>
            <es.transport.tcp.compress>${env.ES_TEST_COMPRESS}</es.transport.tcp.compress>
            <es.action.wait_on_mapping_change>${env.ES_WAIT_ON_MAPPING_CHANGE}</es.action.wait_on_mapping_change>
          </systemPropertyVariables>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>2.1.2</version>
        <executions>
          <execution>
            <id>attach-sources</id>
            <goals>
              <goal>jar</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-shade-plugin</artifactId>
        <version>1.5</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <minimizeJar>true</minimizeJar>
          <artifactSet>
            <includes>
              <include>com.google.guava:guava</include>
              <include>net.sf.trove4j:trove4j</include>
              <include>org.mvel:mvel2</include>
              <include>com.fasterxml.jackson.core:jackson-core</include>
              <include>com.fasterxml.jackson.dataformat:jackson-dataformat-smile</include>
              <include>com.fasterxml.jackson.dataformat:jackson-dataformat-yaml</include>
              <include>joda-time:joda-time</include>
              <include>io.netty:netty</include>
              <include>com.ning:compress-lzf</include>
            </includes>
          </artifactSet>
          <relocations>
            <relocation>
              <pattern>com.google.common</pattern>
              <shadedPattern>org.elasticsearch.common</shadedPattern>
            </relocation>
            <relocation>
              <pattern>gnu.trove</pattern>
              <shadedPattern>org.elasticsearch.common.trove</shadedPattern>
            </relocation>
            <relocation>
              <pattern>jsr166y</pattern>
              <shadedPattern>org.elasticsearch.common.util.concurrent.jsr166y</shadedPattern>
            </relocation>
            <relocation>
              <pattern>jsr166e</pattern>
              <shadedPattern>org.elasticsearch.common.util.concurrent.jsr166e</shadedPattern>
            </relocation>
            <relocation>
              <pattern>org.mvel2</pattern>
              <shadedPattern>org.elasticsearch.common.mvel2</shadedPattern>
            </relocation>
            <relocation>
              <pattern>com.fasterxml.jackson</pattern>
              <shadedPattern>org.elasticsearch.common.jackson</shadedPattern>
            </relocation>
            <relocation>
              <pattern>org.joda</pattern>
              <shadedPattern>org.elasticsearch.common.joda</shadedPattern>
            </relocation>
            <relocation>
              <pattern>org.jboss.netty</pattern>
              <shadedPattern>org.elasticsearch.common.netty</shadedPattern>
            </relocation>
            <relocation>
              <pattern>com.ning.compress</pattern>
              <shadedPattern>org.elasticsearch.common.compress</shadedPattern>
            </relocation>
          </relocations>
          <filters>
            <filter>
              <artifact>*:*</artifact>
              <excludes>
                <exclude>META-INF/license/**</exclude>
                <exclude>META-INF/*</exclude>
                <exclude>META-INF/maven/**</exclude>
                <exclude>LICENSE</exclude>
                <exclude>NOTICE</exclude>
                <exclude>/*.txt</exclude>
                <exclude>build.properties</exclude>
              </excludes>
            </filter>
          </filters>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.5</version>
        <executions>
          <execution>
            <id>copy-resources</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.directory}/bin</outputDirectory>
              <resources>
                <resource>
                  <directory>${basedir}/bin</directory>
                  <filtering>true</filtering>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <appendAssemblyId>false</appendAssemblyId>
          <outputDirectory>${project.build.directory}/releases/</outputDirectory>
          <descriptors>
            <descriptor>${basedir}/src/main/assemblies/targz-bin.xml</descriptor>
            <descriptor>${basedir}/src/main/assemblies/zip-bin.xml</descriptor>
          </descriptors>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <phase>prepare-package</phase>
            <goals>
              <goal>copy-dependencies</goal>
            </goals>
            <configuration>
              <outputDirectory>${project.build.directory}/lib</outputDirectory>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.vafer</groupId>
        <artifactId>jdeb</artifactId>
        <version>0.9</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>jdeb</goal>
            </goals>
            <configuration>
              <dataSet>
                <data>
                  <src>${project.basedir}/</src>
                  <includes>*.txt, *.textile</includes>
                  <type>directory</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/share/elasticsearch</prefix>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.build.directory}/bin</src>
                  <type>directory</type>
                  <excludes>*.bat, .DS_Store</excludes>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/share/elasticsearch/bin</prefix>
                    <filemode>755</filemode>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.build.directory}/</src>
                  <includes>${project.build.finalName}.jar</includes>
                  <type>directory</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/share/elasticsearch/lib</prefix>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.basedir}/lib/sigar/</src>
                  <includes>sigar-*.jar, libsigar-*-linux.*</includes>
                  <type>directory</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/share/elasticsearch/lib/sigar</prefix>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.build.directory}/lib</src>
                  <includes>lucene*, log4j*, jna*, spatial4j*, jts*</includes>
                  <type>directory</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/share/elasticsearch/lib</prefix>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.basedir}/src/deb/default/</src>
                  <type>directory</type>
                  <excludes>.DS_Store</excludes>
                  <mapper>
                    <type>perm</type>
                    <prefix>/etc/default</prefix>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.basedir}/src/deb/init.d/</src>
                  <type>directory</type>
                  <excludes>.DS_Store</excludes>
                  <mapper>
                    <type>perm</type>
                    <prefix>/etc/init.d</prefix>
                    <filemode>755</filemode>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
                <data>
                  <src>${project.basedir}/config</src>
                  <type>directory</type>
                  <excludes>.DS_Store</excludes>
                  <mapper>
                    <type>perm</type>
                    <prefix>/etc/elasticsearch</prefix>
                    <user>root</user>
                    <group>root</group>
                  </mapper>
                </data>
              </dataSet>
            </configuration>
          </execution>
        </executions>
        <configuration>
          <deb>${project.build.directory}/releases/${project.artifactId}-${project.version}.deb</deb>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>rpm-maven-plugin</artifactId>
        <version>2.1-alpha-2</version>
        <configuration>
          <copyright>2013, Elasticsearch</copyright>
          <distribution>Elasticsearch</distribution>
          <group>Application/Internet</group>
          <packager>Elasticsearch</packager>
          <prefix>/usr</prefix>
          <changelogFile>src/changelog</changelogFile>
          <defineStatements>
            <defineStatement>_unpackaged_files_terminate_build 0</defineStatement>
            <defineStatement>_binaries_in_noarch_packages_terminate_build 0</defineStatement>
          </defineStatements>
          <defaultFilemode>644</defaultFilemode>
          <defaultDirmode>755</defaultDirmode>
          <defaultUsername>root</defaultUsername>
          <defaultGroupname>root</defaultGroupname>
          <mappings>
            <mapping>
              <directory>/etc/elasticsearch/</directory>
              <configuration>true</configuration>
            </mapping>
            <mapping>
              <directory>/etc/elasticsearch/</directory>
              <configuration>true</configuration>
              <sources>
                <source>
                  <location>config/</location>
                  <includes>
                    <include>*.yml</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/etc/sysconfig/</directory>
              <configuration>true</configuration>
              <sources>
                <source>
                  <location>src/rpm/sysconfig</location>
                  <includes>
                    <include>elasticsearch</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/etc/rc.d/init.d/</directory>
              <filemode>755</filemode>
              <configuration>true</configuration>
              <sources>
                <source>
                  <location>src/rpm/init.d/elasticsearch</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/etc/systemd/system/</directory>
              <filemode>755</filemode>
              <configuration>true</configuration>
              <sources>
                <source>
                  <location>src/rpm/systemd</location>
                  <includes>
                    <include>elasticsearch.service</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/etc/tmpfiles.d/</directory>
              <configuration>true</configuration>
              <sources>
                <source>
                  <location>src/rpm/systemd/</location>
                  <includes>
                    <include>elasticsearch.conf</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/run/elasticsearch/</directory>
              <filemode>755</filemode>
              <username>elasticsearch</username>
              <groupname>elasticsearch</groupname>
            </mapping>
            <mapping>
              <directory>/var/lib/elasticsearch/</directory>
              <filemode>755</filemode>
              <username>elasticsearch</username>
              <groupname>elasticsearch</groupname>
            </mapping>
            <mapping>
              <directory>/var/log/elasticsearch/</directory>
              <filemode>755</filemode>
              <username>elasticsearch</username>
              <groupname>elasticsearch</groupname>
            </mapping>
            <mapping>
              <directory>/usr/share/elasticsearch/bin/</directory>
              <filemode>755</filemode>
              <sources>
                <source>
                  <location>target/bin</location>
                  <includes>
                    <include>elasticsearch</include>
                    <include>elasticsearch.in.sh</include>
                    <include>plugin</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/usr/share/elasticsearch/lib</directory>
              <sources>
                <source>
                  <location>target/lib/</location>
                  <includes>
                    <include>lucene*</include>
                    <include>log4j*</include>
                    <include>jna*</include>
                    <include>spatial4j*</include>
                    <include>jts*</include>
                  </includes>
                </source>
                <source>
                  <location>${project.build.directory}/</location>
                  <includes>
                    <include>${project.build.finalName}.jar</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/usr/share/elasticsearch/lib/sigar</directory>
              <sources>
                <source>
                  <location>lib/sigar</location>
                  <includes>
                    <include>sigar*.jar</include>
                    <include>libsigar-*-linux.*</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/usr/share/elasticsearch/</directory>
              <sources>
                <source>
                  <location>.</location>
                  <includes>
                    <include>LICENSE.txt</include>
                    <include>NOTICE.txt</include>
                    <include>README.textile</include>
                  </includes>
                </source>
              </sources>
            </mapping>
          </mappings>
          <preinstallScriptlet>
            <scriptFile>src/rpm/scripts/preinstall</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </preinstallScriptlet>
          <postinstallScriptlet>
            <scriptFile>src/rpm/scripts/postinstall</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </postinstallScriptlet>
          <preremoveScriptlet>
            <scriptFile>src/rpm/scripts/preremove</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </preremoveScriptlet>
          <postremoveScriptlet>
            <scriptFile>src/rpm/scripts/postremove</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </postremoveScriptlet>
        </configuration>
      </plugin>
      <plugin>
        <groupId>de.thetaphi</groupId>
        <artifactId>forbiddenapis</artifactId>
        <version>1.3</version>
        <executions>
          <execution>
            <id>check-forbidden-apis</id>
            <phase>test</phase>
            <goals>
              <goal>check</goal>
            </goals>
            <configuration>
              <targetVersion>1.6</targetVersion>
              <internalRuntimeForbidden>true</internalRuntimeForbidden>
              <failOnUnsupportedJava>false</failOnUnsupportedJava>
              <excludes>
                <exclude>jsr166e/**</exclude>
                <exclude>jsr166y/**</exclude>
              </excludes>
              <bundledSignatures>
                <bundledSignature>jdk-unsafe</bundledSignature>
                <bundledSignature>jdk-deprecated</bundledSignature>
              </bundledSignatures>
              <signaturesFiles>
                <signaturesFile>core-signatures.txt</signaturesFile>
              </signaturesFiles>
            </configuration>
          </execution>
          <execution>
            <id>check-forbidden-test-apis</id>
            <phase>test</phase>
            <goals>
              <goal>testCheck</goal>
            </goals>
            <configuration>
              <targetVersion>1.6</targetVersion>
              <internalRuntimeForbidden>true</internalRuntimeForbidden>
              <failOnUnsupportedJava>false</failOnUnsupportedJava>
              <bundledSignatures>
                <bundledSignature>jdk-unsafe</bundledSignature>
                <bundledSignature>jdk-deprecated</bundledSignature>
              </bundledSignatures>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
  <repositories>
    <repository>
      <id>elasticsearch</id>
      <name>elasticsearch repo</name>
      <url>http://elasticsearch.googlecode.com/svn/maven</url>
    </repository>
  </repositories>
  <dependencies>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-core</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-analyzers-common</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-codecs</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-queries</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>jakarta-regexp</artifactId>
          <groupId>jakarta-regexp</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-memory</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-highlighter</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-queryparser</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>jakarta-regexp</artifactId>
          <groupId>jakarta-regexp</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-suggest</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-join</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>org.apache.lucene</groupId>
      <artifactId>lucene-spatial</artifactId>
      <version>4.3.0</version>
      <scope>compile</scope>
    </dependency>
    <dependency>
      <groupId>com.spatial4j</groupId>
      <artifactId>spatial4j</artifactId>
      <version>0.3</version>
      <scope>compile</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>com.vividsolutions</groupId>
      <artifactId>jts</artifactId>
      <version>1.12</version>
      <scope>compile</scope>
      <exclusions>
        <exclusion>
          <artifactId>xercesImpl</artifactId>
          <groupId>xerces</groupId>
        </exclusion>
      </exclusions>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
      <scope>compile</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.6.2</version>
      <scope>compile</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>net.java.dev.jna</groupId>
      <artifactId>jna</artifactId>
      <version>3.3.0</version>
      <scope>compile</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.fusesource</groupId>
      <artifactId>sigar</artifactId>
      <version>1.6.4</version>
      <scope>compile</scope>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <version>6.8</version>
      <scope>test</scope>
      <exclusions>
        <exclusion>
          <artifactId>hamcrest-core</artifactId>
          <groupId>org.hamcrest</groupId>
        </exclusion>
        <exclusion>
          <artifactId>junit</artifactId>
          <groupId>junit</groupId>
        </exclusion>
        <exclusion>
          <artifactId>bsh</artifactId>
          <groupId>org.beanshell</groupId>
        </exclusion>
        <exclusion>
          <artifactId>jcommander</artifactId>
          <groupId>com.beust</groupId>
        </exclusion>
        <exclusion>
          <artifactId>snakeyaml</artifactId>
          <groupId>org.yaml</groupId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest-all</artifactId>
      <version>1.3</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
  <properties>
    <lucene.version>4.3.0</lucene.version>
  </properties>
</project>

