<?xml version="1.0"?>
<!--
  Licensed 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. See accompanying LICENSE file.
-->
<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>
    <groupId>org.apache.ambari</groupId>
    <artifactId>ambari-project</artifactId>
    <version>1.3.0-SNAPSHOT</version>
    <relativePath>../ambari-project</relativePath>
  </parent>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.apache.ambari</groupId>
  <artifactId>ambari-server</artifactId>
  <packaging>jar</packaging>
  <name>Ambari Server</name>
  <version>1.3.0-SNAPSHOT</version>
  <description>Ambari Server</description>
  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <python.ver>python &gt;= 2.6</python.ver>
    <hdpUrlForCentos6>http://s3.amazonaws.com/dev.hortonworks.com/HDP-1.3.3.0/repos/centos6</hdpUrlForCentos6>
  </properties>
  <build>
    <plugins>
      <plugin>
         <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.8</version>
        <executions>
          <execution>
            <id>parse-version</id>
            <phase>validate</phase>
            <goals>
              <goal>parse-version</goal>
            </goals>
          </execution>
          <execution>
            <id>regex-property</id>
            <goals>
              <goal>regex-property</goal>
            </goals>
            <configuration>
              <name>ambariVersion</name>
              <value>${project.version}</value>
              <regex>-SNAPSHOT</regex>
              <replacement></replacement>
              <failIfNoMatch>false</failIfNoMatch>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.6</version>
        <executions>
          <execution>
            <id>copy-resources</id>
            <phase>generate-test-resources</phase>
            <goals>
              <goal>copy-resources</goal>
            </goals>
            <configuration>
              <outputDirectory>${basedir}/target/</outputDirectory>
              <resources>
                <resource>
                  <directory>${basedir}/../</directory>
                  <includes>
                      <include>**/version</include>
                  </includes>
                  <filtering>true</filtering>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.0</version>
      </plugin>
      <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <descriptors>
            <descriptor>src/main/assemblies/server.xml</descriptor>
          </descriptors>
          <tarLongFileMode>gnu</tarLongFileMode>
        </configuration>
        <executions>
          <execution>
            <id>build-tarball</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <configuration>
          <excludes>
            <exclude>pass.txt</exclude>
            <exclude>derby.log</exclude>
            <exclude>src/test/resources/users.ldif</exclude>
            <exclude>src/test/resources/gsInstaller-hosts.txt</exclude>
            <exclude>src/test/resources/temporal_ganglia_data.txt</exclude>
            <exclude>src/test/resources/users.ldif</exclude>
            <exclude>src/main/resources/ca.config</exclude>
            <exclude>src/main/resources/hive-schema-0.10.0.oracle.sql</exclude>
            <exclude>src/main/resources/db/serial</exclude>
            <exclude>src/main/resources/db/index.txt</exclude>
            <exclude>conf/unix/ca.config</exclude>
            <exclude>**/*.json</exclude>

            <!--gitignore content-->
            <exclude>src/main/resources/db/newcerts/**</exclude>

            <!--test samples-->
            <exclude>src/test/resources/TestAmbaryServer.samples/**</exclude>
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <!--Static -->
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <execution>
            <phase>process-classes</phase>
            <configuration>
              <tasks>
                <java classname="org.eclipse.persistence.tools.weaving.jpa.StaticWeave"
                      classpathref="maven.runtime.classpath" fork="true">
                  <arg line="-loglevel FINE -persistenceinfo src/main/resources target/classes target/classes"/>
                </java>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>rpm-maven-plugin</artifactId>
        <version>2.0.1</version>
        <executions>
          <execution>
            <!-- unbinds rpm creation from maven lifecycle -->
            <phase>none</phase>
            <goals>
              <goal>rpm</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <copyright>2012, Apache Software Foundation</copyright>
          <version>${project.version}</version>
          <group>Development</group>
          <description>Maven Recipe: RPM Package.</description>
          <requires>
            <require>postgresql-server &gt;= 8.1</require>
            <require>openssl</require>
            <require>${python.ver}</require>
          </requires>
          <postinstallScriptlet>
            <scriptFile>src/main/package/rpm/postinstall.sh</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </postinstallScriptlet>
          <preinstallScriptlet>
            <scriptFile>src/main/package/rpm/preinstall.sh</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </preinstallScriptlet>
          <preremoveScriptlet>
            <scriptFile>src/main/package/rpm/preremove.sh</scriptFile>
            <fileEncoding>utf-8</fileEncoding>
          </preremoveScriptlet>
          <defaultFilemode>644</defaultFilemode>
          <defaultDirmode>755</defaultDirmode>
          <defaultUsername>root</defaultUsername>
          <defaultGroupname>root</defaultGroupname>
          <mappings>
            <mapping>
              <directory>/usr/lib/ambari-server</directory>
              <dependency>
              </dependency>
            </mapping>
            <mapping>
              <directory>/usr/lib/ambari-server/web</directory>
              <sources>
                <source>
                  <location>${basedir}/../ambari-web/public</location>
                  <includes>
                    <include>**</include>
                  </includes>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/usr/lib/ambari-server</directory>
              <sources>
                <source>
                  <location>${project.build.directory}/${project.artifactId}-${project.version}.jar</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/usr/sbin</directory>
              <filemode>755</filemode>
              <username>root</username>
              <groupname>root</groupname>
              <directoryIncluded>false</directoryIncluded>
              <sources>
                <source>
                  <location>src/main/python/ambari-server.py</location>
                </source>
                <source>
                  <location>sbin/ambari-server</location>
                  <filter>true</filter>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/etc/ambari-server/conf</directory>
              <configuration>true</configuration>
              <sources>
                <source>
                  <location>conf/unix/ambari.properties</location>
                </source>
                <source>
                  <location>conf/unix/log4j.properties</location>
                </source>
                <source>
                  <location>conf/unix/krb5JAASLogin.conf</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/</directory>
              <filemode>700</filemode>
              <username>root</username>
              <groupname>root</groupname>
              <sources>
                <source>
                  <location>conf/unix/ambari-env.sh</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/keys</directory>
              <sources>
                <source>
                  <location>conf/unix/ca.config</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/keys/db</directory>
              <filemode>700</filemode>
              <username>root</username>
              <groupname>root</groupname>
              <sources>
                <source>
                  <location>src/main/resources/db</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/run/ambari-server/bootstrap</directory>
            </mapping>
            <mapping>
              <directory>/var/log/ambari-server</directory>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources</directory>
              <sources>
                <source>
                  <location>target/classes/Ambari-DDL-Postgres-CREATE.sql</location>
                </source>
                <source>
                  <location>src/main/resources/Ambari-DDL-Postgres-DROP.sql</location>
                </source>
                <source>
                  <location>target/classes/Ambari-DDL-Postgres-REMOTE-CREATE.sql</location>
                </source>
                <source>
                  <location>src/main/resources/Ambari-DDL-Postgres-REMOTE-DROP.sql</location>
                </source>
                <source>
                  <location>target/classes/Ambari-DDL-Oracle-CREATE.sql</location>
                </source>
                <source>
                  <location>target/classes/Ambari-DDL-MySQL-CREATE.sql</location>
                </source>
                <source>
                  <location>src/main/resources/Ambari-DDL-Oracle-DROP.sql</location>
                </source>
                <source>
                  <location>src/main/resources/Ambari-DDL-MySQL-DROP.sql</location>
                </source>
                 <source>
                  <location>src/main/resources/hive-schema-0.10.0.oracle.sql</location>
                </source>
                <source>
                  <location>${project.build.directory}/DBConnectionVerification.jar</location>
                </source> 
                <source>
                  <!-- This file is also included into agent rpm-->
                  <location>src/main/resources/role_command_order.json</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources/scripts</directory>
              <filemode>755</filemode>
              <sources>
                <source>
                  <location>src/main/resources/scripts/install_flume.sh</location>
                </source>
                <source>
                  <location>src/main/resources/scripts/configs.sh</location>
                </source>
                <source>
                  <location>src/main/resources/scripts/keytabs.sh</location>
                </source>
                <source>
                  <location>src/main/resources/scripts/distribute_keytabs.py</location>
                </source>
                <source>
                  <location>src/main/python/UpgradeHelper_HDP2.py</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources/upgrade</directory>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources/upgrade/ddl</directory>
              <sources>
                <source>
                  <location>target/classes/upgrade/ddl/Ambari-DDL-Postgres-UPGRADE-1.3.0.sql</location>
                </source>
                <source>
                  <location>src/main/resources/upgrade/ddl/Ambari-DDL-Postgres-UPGRADE-1.3.0.Fix.sql</location>
                </source>
                <source>
                  <location>src/main/resources/upgrade/ddl/Ambari-DDL-Postgres-UPGRADE-1.3.0.Check.sql</location>
                </source>
                <source>
                  <location>target/classes/upgrade/ddl/Ambari-DDL-Oracle-UPGRADE.sql</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources/upgrade/dml</directory>
              <sources>
                <source>
                  <location>src/main/resources/upgrade/dml/Ambari-DML-Postgres-UPGRADE_STACK.sql</location>
                </source>
                <source>
                  <location>src/main/resources/upgrade/dml/Ambari-DML-Oracle-UPGRADE_STACK.sql</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources/stacks/HDP</directory>
              <sources>
                <source>
                  <location>target/classes/stacks/HDP</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/usr/lib/python2.6/site-packages/ambari_server</directory>
              <filemode>755</filemode>
              <username>root</username>
              <groupname>root</groupname>
              <sources>
                <source>
                  <location>src/main/python/bootstrap.py</location>
                </source>
                <source>
                  <location>src/main/python/setupAgent.py</location>
                </source>
                <source>
                  <location>src/main/python/os_type_check.sh</location>
                </source>
              </sources>
            </mapping>
            <mapping>
              <directory>/var/run/ambari-server</directory>
            </mapping>
            <mapping>
              <directory>/var/lib/ambari-server/resources</directory>
              <sources>
                <source>
                  <location>../version</location>
                  <filter>true</filter>
                </source>
              </sources>
            </mapping>
          </mappings>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>findbugs-maven-plugin</artifactId>
        <version>2.5.2</version>
        <configuration>
          <failOnError>false</failOnError>
        </configuration>
        <executions>
          <execution>
            <phase>verify</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.2</version>
        <executions>
          <execution>
            <configuration>
              <executable>python2.6</executable>
              <workingDirectory>src/test/python</workingDirectory>
              <arguments>
                <argument>unitTests.py</argument>
              </arguments>
              <environmentVariables>
                <PYTHONPATH>${project.basedir}/../ambari-common/src/test/python:${project.basedir}/src/main/python:${project.basedir}/src/main/python/ambari-server-state:${project.basedir}/src/test/python:$PYTHONPATH</PYTHONPATH>
              </environmentVariables>
              <skip>${skipTests}</skip>
            </configuration>
            <id>python-test</id>
            <phase>test</phase>
            <goals>
              <goal>exec</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.atlassian.maven.plugins</groupId>
        <artifactId>maven-clover2-plugin</artifactId>
        <version>3.1.11</version>
        <!--
        <configuration>
          <licenseLocation>/path/to/clover.license</licenseLocation>
        </configuration>
        -->
      </plugin>
      <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>buildnumber-maven-plugin</artifactId>
          <version>${buildnumber-maven-plugin-version}</version>
          <configuration>
              <urlScm>scm:git:https://git-wip-us.apache.org/repos/asf/incubator-ambari.git</urlScm>
          </configuration>    
          <executions>
              <execution>
                  <phase>validate</phase>
                  <goals>
                      <goal>create</goal>
                  </goals>
              </execution>
          </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <version>1.7</version>
        <executions>
          <execution>
            <id>set-hdp-url-classes</id>
            <phase>process-classes</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target name="ambari-server-compile">
                <exec dir="${basedir}" executable="bash" failonerror="true">
                  <arg value="${basedir}/set-hdp-repo-url.sh"/>
                  <arg value="${hdpUrlForCentos6}"/>
                </exec>
              </target>
            </configuration>
          </execution>
          <execution>
            <id>set-hdp-url-packages</id>
            <phase>package</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target name="ambari-server-compile">
                <exec dir="${basedir}" executable="bash" failonerror="true">
                  <arg value="${basedir}/set-hdp-repo-url.sh"/>
                  <arg value="${hdpUrlForCentos6}"/>
                  <arg value="${project.build.directory}/ambari-server-${project.version}-dist/ambari-server-${project.version}"/>
                </exec>
              </target>
            </configuration>
          </execution>
          <execution>
            <phase>package</phase>
            <configuration>
              <tasks>
                <jar destfile="target/DBConnectionVerification.jar">
                     <fileset dir="${basedir}/target/classes/" includes="**/DBConnectionVerification.class" />
		     <manifest>
		      <attribute name="Main-Class" value="org.apache.ambari.server.DBConnectionVerification"/>
		     </manifest>
		</jar>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        <excludes>
          <exclude>stacks/**</exclude>
        </excludes>
      </resource>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>false</filtering>
        <includes>
          <include>stacks/**</include>
        </includes>
      </resource>
    </resources>
  </build>
  <profiles>
  </profiles>
  <dependencies>
    <dependency>
      <groupId>commons-io</groupId>
      <artifactId>commons-io</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.inject.extensions</groupId>
      <artifactId>guice-assistedinject</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.inject.extensions</groupId>
      <artifactId>guice-persist</artifactId>
    </dependency>
    <dependency>
      <groupId>com.google.inject.extensions</groupId>
      <artifactId>guice-servlet</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.derby</groupId>
      <artifactId>derby</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-config</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-web</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-mock</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-ldap</artifactId>
    </dependency>
    <dependency>
      <groupId>org.springframework.ldap</groupId>
      <artifactId>spring-ldap-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>apacheds-core</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.directory.server</groupId>
      <artifactId>apacheds-protocol-ldap</artifactId>
    </dependency>
    <dependency>
      <groupId>org.apache.directory.shared</groupId>
      <artifactId>shared-ldap</artifactId>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
    </dependency>
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
    </dependency>
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
    </dependency>
    <dependency>
      <groupId>org.eclipse.persistence</groupId>
      <artifactId>eclipselink</artifactId>
    </dependency>
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-security</artifactId>
    </dependency>
    <dependency>
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-servlet</artifactId>
    </dependency>
    <dependency>
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-webapp</artifactId>
    </dependency>
    <dependency>
      <groupId>org.eclipse.jetty</groupId>
      <artifactId>jetty-server</artifactId>
    </dependency>
    <dependency>
      <groupId>commons-logging</groupId>
      <artifactId>commons-logging</artifactId>
    </dependency>
    <dependency>
      <groupId>commons-codec</groupId>
      <artifactId>commons-codec</artifactId>
    </dependency>
    <dependency>
      <groupId>commons-lang</groupId>
      <artifactId>commons-lang</artifactId>
    </dependency>
    <dependency>
      <groupId>commons-httpclient</groupId>
      <artifactId>commons-httpclient</artifactId>
    </dependency>
    <dependency>
      <groupId>commons-net</groupId>
      <artifactId>commons-net</artifactId>
      <version>1.4.1</version>
    </dependency>
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-json</artifactId>
      <exclusions>
        <exclusion>
          <groupId>org.codehaus.jackson</groupId>
          <artifactId>jackson-xc</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.jettison</groupId>
          <artifactId>jettison</artifactId>
        </exclusion>
        <exclusion>
          <groupId>org.codehaus.jackson</groupId>
          <artifactId>jackson-mapper-asl</artifactId>
        </exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-server</artifactId>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey</groupId>
      <artifactId>jersey-client</artifactId>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey.contribs</groupId>
      <artifactId>jersey-multipart</artifactId>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey.contribs</groupId>
      <artifactId>jersey-guice</artifactId>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-mapper-asl</artifactId>
      <version>1.9.2</version>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-core-asl</artifactId>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-jaxrs</artifactId>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jackson</groupId>
      <artifactId>jackson-xc</artifactId>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey.jersey-test-framework</groupId>
      <artifactId>jersey-test-framework-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.sun.jersey.jersey-test-framework</groupId>
      <artifactId>jersey-test-framework-grizzly2</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.codehaus.jettison</groupId>
      <artifactId>jettison</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymock</artifactId>
      <version>3.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-core</artifactId>
      <version>1.5</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-reflect</artifactId>
      <version>1.5</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-api-easymock</artifactId>
      <version>1.5</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.powermock</groupId>
      <artifactId>powermock-module-junit4</artifactId>
      <version>1.5</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.objenesis</groupId>
      <artifactId>objenesis-tck</artifactId>
      <version>1.2</version>
    </dependency>
    <dependency>
      <groupId>cglib</groupId>
      <artifactId>cglib</artifactId>
      <version>2.2.2</version>
    </dependency>
    <dependency>
      <groupId>asm</groupId>
      <artifactId>asm</artifactId>
      <version>3.3.1</version>
    </dependency>
    <dependency>
      <groupId>org.xerial</groupId>
      <artifactId>sqlite-jdbc</artifactId>
      <version>3.7.2</version>
    </dependency>
    <dependency>
      <groupId>com.google.inject</groupId>
      <artifactId>guice</artifactId>
      <version>3.0</version>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.2.2</version>
    </dependency>
    <dependency>
      <groupId>postgresql</groupId>
      <artifactId>postgresql</artifactId>
      <version>9.1-901.jdbc4</version>
    </dependency>
    <dependency>
	  <groupId>org.apache.httpcomponents</groupId>
	  <artifactId>httpclient</artifactId>
	  <version>4.2.5</version>
    </dependency>
    <dependency>
      <groupId>com.google.guava</groupId>
      <artifactId>guava</artifactId>
      <version>14.0.1</version>
    </dependency>
    <dependency>
      <groupId>com.google.code.findbugs</groupId>
      <artifactId>jsr305</artifactId>
      <version>1.3.9</version>
    </dependency>
  </dependencies>
  <!--<reporting>
        <plugins>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
                <version>2.5.2</version>
            </plugin>
        </plugins>
    </reporting>-->
</project>
