<?xml version="1.0" encoding="UTF-8"?>
<!-- =======================================================================
        Maven Project Configuration File

        GeoSolutions GeoBatch Project
            http://geobatch.codehaus.org

        Version: $Id: pom.xml 63 2008-04-04 11:22:11Z alessio $
======================================================================= -->
<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">
    <modelVersion>4.0.0</modelVersion>
    
    <name>GeoSolutions - figis</name>
    <url>http://www.geo-solutions.it/maven_reports/gb/</url>

    <scm>
        <connection>
            scm:svn:https://svn.codehaus.org/geobatch/trunk/
        </connection>
        <url>https://svn.codehaus.org/geobatch/trunk/</url>
    </scm>

    <description>
        The persistence  for figis
    </description>

    <organization>
        <name>GeoSolutions</name>
        <url>http://www.geo-solutions.it</url>
    </organization>
    
    <inceptionYear>2011</inceptionYear>

    <licenses>
        <license>
            <name>Lesser General Public License (LGPL)</name>
            <url>http://www.gnu.org/copyleft/lesser.txt</url>
            <distribution>repo</distribution>
        </license>
    </licenses>

    <!-- =========================================================== -->
    <!--     Developers and Contributors                             -->
    <!-- =========================================================== -->
    <developers>
        <developer>
            <name>luca paolino</name>
            <id>luca</id>
            <email>luca.paolino@geo-solutions.it</email>
            <organization>GeoSolutions</organization>
            <roles>
				<role>Project Developer</role>
            </roles>
        </developer>
    </developers>

    <contributors>
    </contributors>

    <!-- =========================================================== -->
    <!--   Properties and Profiles                                   -->
    <!--       modify the build process in certain conditions.       -->
    <!-- =========================================================== -->
    <!--   Available properties are:                                 -->
    <!--     all        build and pack all the available 		     -->
    <!--                        actions 							 -->
    <!--                                                             -->
    <!-- =========================================================== -->
    <!--   Available profiles are:                                   -->
    <!--     extensive.tests    Performs more extensive tests than   -->
    <!--                        the default. Only a few modules      -->
    <!--                        check for this profile.              -->
    <!--                                                             -->
    <!--     interactive.tests  Performs more extensive tests than   -->
    <!--                        the default. Only a few modules      -->
    <!--                        check for this profile.              -->
    <!--                                                             -->
    <!--     site.build         The main purpose of this build is to -->
    <!--                        create reports. Consequently, a      -->
    <!--                        JUnit test failure will not stop the -->
    <!--                        build. The failure should be         -->
    <!--                        reported by the surefire report      -->
    <!--                        plugin.                              -->
    <!--                                                             -->
    <!--     online             Profile to active tests which end in -->
    <!--                        "OnlineTest.java"                    -->
    <!--                                                             -->
    <!--     stress             Profile to active tests which end in -->
    <!--                        "StressTest.java"                    -->
    <!--                                                             -->
    <!--     pending            Includes modules that are pending    -->
    <!--                                                             -->
    <!--     dao.xstream        Use XStream in DAO instead of        -->
    <!--                        default JiBX                         -->
    <!--                                                             -->
    <!--   Examples:                                                 -->
    <!--       mvn -P extensive.tests install                        -->
    <!--       mvn -P online,stress install                          -->
    <!--       mvn -P site.build site                                -->
    <!--       mvn eclipse:eclipse -Djdbc.oracle=true -P pending     -->
    <!--                                                             -->
    <!--     While you can specify properties one at a time on the   -->
    <!--     command line, for properties describing your            -->
    <!--     environment you will want to modify settings.xml        -->
    <!--                                                             -->
    <!--     Note that profiles like "site.build" are not mandatory  -->
    <!--     for using the "site" goal. Such profiles just modify    -->
    <!--     the build process prior the "site" goal execution in a  -->
    <!--     manner relevant to the purpose of the "site" goal.      -->
    <!-- =========================================================== -->
    <properties>
        <allow.test.skip>true</allow.test.skip>
        <allow.test.failure.ignore>false</allow.test.failure.ignore>
        <extensive.tests>false</extensive.tests>
        <interactive.tests>false</interactive.tests>
        <online.skip.pattern>**/*OnlineTest.java</online.skip.pattern>
        <stress.skip.pattern>**/*StressTest.java</stress.skip.pattern>
        <test.maxHeapSize>512M</test.maxHeapSize>
        <src.output>${basedir}/target</src.output>
		        
        <project.version>2.0-SNAPSHOT</project.version>
    </properties>

    <!-- =========================================================== -->
    <!--     Project Description                                     -->
    <!-- =========================================================== -->

    <groupId>it.geosolutions</groupId>
    <artifactId>figis</artifactId>
    <version>2.0-SNAPSHOT</version>
    <packaging>pom</packaging>
    
	<parent>
		<groupId>it.geosolutions.figis.sdk</groupId>
		<artifactId>ie-sdk</artifactId>
		<version>2.0-SNAPSHOT</version>
		<relativePath>../ie-sdk</relativePath>
	</parent>
    
    <!-- =========================================================== -->
    <!--     Dependency Management                                   -->
    <!--     If a POM declares one of those dependencies, then it    -->
    <!--     will use the version specified here. Otherwise, those   -->
    <!--     dependencies are ignored.                               -->
    <!-- =========================================================== -->
    <dependencyManagement>
        <dependencies>
	    <!-- inherit DependencyManagement -->
        </dependencies>
    </dependencyManagement>

    <!-- =========================================================== -->
    <!--     Dependencies to be inherited by all modules.            -->
    <!-- =========================================================== -->
    <dependencies>
       <dependency>
            <groupId>it.geosolutions.figis</groupId>
            <artifactId>model</artifactId>
            <version>2.0-SNAPSHOT</version>
      </dependency>
    <!--
      ADD HERE YOUR GLOBAL DEPENDECY
      NOTE: do not specify version here unless it is necessary/required
      NOTE: in this case I suggest to use the dependencyManagement block above
      -->
    </dependencies>

    <build>
        <!-- TODO: the resources stuff hardcodes paths to source + test directories,
      we should be able to use some properties here -->
        <resources>
            <resource>
                <directory>${basedir}/src/main/resources</directory>
                <includes>
                    <include>**/*.txt</include>
                    <include>**/*.sql</include>
                    <include>**/*.html</include>
                    <include>**/*.xsd</include>
                    <include>**/*.xsl</include>
                    <include>**/*.xml</include>
                    <include>**/*.utf</include>
                    <include>**/*.prj</include>
                    <include>**/*.py</include>
                    <include>**/*.properties</include>
                    <include>**/*.query</include>
                    <include>**/*.xquery</include>
                    <include>**/*.serialized</include>
                    <include>META-INF/*.jai</include>
                    <include>META-INF/mailcap</include>
                    <include>META-INF/services/**</include>
                    <include>applicationContext.xml</include>
                    <include>**/*.ftl</include>
                    <include>**/placeholder</include> <!-- used for otherwise empty dirs -->
                </includes>
                <excludes>
                    <exclude>**/doc-files/**</exclude>
                </excludes>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>${basedir}/src/test/resources</directory>
                <includes>
                    <include>META-INF/services/**</include>
                    <include>**/test-data/**</include>
                    <include>**/*.html</include>
                    <include>**/*.xsd</include>
                    <include>**/*.xsl</include>
                    <include>**/*.xml</include>
                    <include>**/*.csv</include>
                    <include>**/*.sld</include>
                    <include>**/*.svg</include>
                    <include>**/*.gml</include>
                    <include>**/*.wkt</include>
                    <include>**/*.txt</include>
                    <include>**/*.sql</include>
                    <include>**/*.png</include>
                    <include>**/*.prj</include>
                    <include>**/*.py</include>
                    <include>**/*.properties</include>
                    <include>**/*.serialized</include>
                    <include>**/*.ftl</include>
                    <include>**/*.tif</include>
                    <include>**/*.tiff</include>
                    <include>**/*.zip</include>
                    <include>**/placeholder</include> <!-- used for otherwise empty dirs -->
                </includes>
                <excludes>
                    <exclude>**/doc-files/**</exclude>
                </excludes>
            </testResource>
        </testResources>

        <plugins>

            <!-- ======================================================= -->
            <!--     Compilation.                                        -->
            <!-- ======================================================= -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.6</source>  <!-- The -source argument for the Java compiler. -->
                    <target>1.6</target>  <!-- The -target argument for the Java compiler. -->
                    <debug>true</debug>   <!-- Whether to include debugging information.   -->
                    <encoding>UTF-8</encoding> <!-- The -encoding argument for the Java compiler. -->
                </configuration>
            </plugin>

            <!-- ======================================================= -->
            <!--     Tests.                                              -->
            <!-- ======================================================= -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <configuration>
                    <includes>
                        <include>**/*Test.java</include>
                    </includes>
                    <excludes>
                        <exclude>${online.skip.pattern}</exclude>
                        <exclude>${stress.skip.pattern}</exclude>
                        <exclude>${test.exclude.pattern}</exclude>
                    </excludes>
                    <argLine>-Xmx${test.maxHeapSize} -Djava.awt.headless=${java.awt.headless}</argLine>
                    <!-- Ignores test failure only if we are generating a       -->
          <!-- report for publication on the web site. See the        -->
          <!-- profiles section at the begining of this pom.xml file. -->
                    <testFailureIgnore>
                        ${allow.test.failure.ignore}
                    </testFailureIgnore>

                    <!-- The two following options have the opposite value of what we would
               like. They are that way because they don't seem to work as expected
               with Surefire 2.3. TODO: Try again when Surefire 2.4 will be available. -->

          <!-- Option to print summary of test suites or just print the test cases that has errors. -->
                    <printSummary>true</printSummary>
                    <!-- Redirect the unit test standard output to a file. -->
                    <redirectTestOutputToFile>false</redirectTestOutputToFile>
                </configuration>
            </plugin>

            <!-- code coverage -->
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>cobertura-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <goals>
                            <goal>clean</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!-- eclipse ide integration -->
            <plugin>
                <artifactId>maven-eclipse-plugin</artifactId>
                <version>2.5</version>
                <configuration>
                    <additionalProjectnatures>
                        <projectnature>org.springframework.ide.eclipse.core.springnature</projectnature>
                    </additionalProjectnatures>
                </configuration>
            </plugin>

      <!-- ======================================================= -->
      <!--     JAR packaging.                                      -->
      <!-- ======================================================= -->
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <configuration>
                    <archive>
                        <manifest>
                            <addClasspath>true</addClasspath>
                        </manifest>
                    </archive>
                </configuration>
            </plugin>

      <!-- ======================================================= -->
      <!--     Source packaging.                                      -->
      <!-- ======================================================= -->
            <plugin>
                <inherited>true</inherited>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <configuration>
                    <attach>false</attach>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

        </plugins>
        
	<extensions>
		<extension>
			<groupId>org.apache.maven.wagon</groupId>
			<artifactId>wagon-ftp</artifactId>
			<version>1.0-beta-2</version>
		</extension>
	</extensions>
    </build>

    <!-- ================================================================== -->
    <!--     Repositories. This is where Maven looks for dependencies. The  -->
    <!--     Maven repository is implicit and doesn't need to be specified. -->
    <!-- ================================================================== -->
    <repositories>

                <repository>
            <id>official maven 1</id>
            <name>Public online maven repository</name>
            <url>http://repo1.maven.org/maven2</url>
        </repository>

        <repository>
            <id>official maven 2</id>
            <name>Public online maven repository</name>
            <url>http://repo2.maven.org/maven2</url>
        </repository>
        <repository>
            <id>geosolutions</id>
            <name>GeoSolutions Repository</name>
            <url>http://maven.geo-solutions.it</url>
        </repository>

        <repository>
            <id>java.net</id>
            <name>java.net Repository</name>
            <url>http://download.java.net/maven/2/</url>
        </repository>
<!-- camel -->
		<repository>
			<id>camel.internal.maven.repository</id>
			<name>Camel internal Maven Repo</name>
			<url>http://svn.apache.org/repos/asf/camel/m2-repo</url>
		</repository> 

        <repository>
            <id>JBoss</id>
            <url>http://repository.jboss.com/maven2</url>
        </repository>

        <repository>
            <id>Hibernate Spatial repo</id>
            <url>http://www.hibernatespatial.org/repository</url>
        </repository>

        <repository>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <id>opengeo</id>
            <name>OpenGeo Maven Repository</name>
            <url>http://repo.opengeo.org</url>
        </repository>

        <repository>
            <id>maven-restlet</id>
            <name>Public online Restlet repository</name>
            <url>http://maven.restlet.org</url>
        </repository>
                
                     

    </repositories>


    <!-- =========================================================== -->
    <!--     Plugin repositories.                                    -->
    <!--     This is where Maven looks for plugin dependencies.      -->
    <!-- =========================================================== -->
    <pluginRepositories>
        <pluginRepository>
            <id>codehaus-snapshot-plugins</id>
            <name>codehaus-shapshot-plugins</name>
            <url>http://snapshots.repository.codehaus.org/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <enabled>false</enabled>
            </releases>
        </pluginRepository>
    </pluginRepositories>

    <!-- =========================================================== -->
    <!--     Modules for the build in approximate dependency order   -->
    <!-- =========================================================== -->
    <modules>
        <module>persistence</module>
        <module>ie-services</module>
    </modules>
    
    <distributionManagement>
		  <!--..................................-->
		  <!--      GeoSolutions Repository     -->
		  <!--..................................-->
      <repository>
       <uniqueVersion>false</uniqueVersion>
       <id>geosolutions</id>
       <url>ftp://maven.geo-solutions.it</url>
      </repository>
    </distributionManagement>
    
    <!-- Profiles set on the command-line overwrite default properties. -->
    <profiles>
        <profile>
            <id>extensive.tests</id>
            <properties>
                <extensive.tests>true</extensive.tests>
            </properties>
        </profile>
        <profile>
            <id>interactive.tests</id>
            <properties>
                <interactive.tests>true</interactive.tests>
            </properties>
        </profile>
        <profile>
            <id>site.build</id>
            <properties>
                <allow.test.skip>false</allow.test.skip>
                <allow.test.failure.ignore>true</allow.test.failure.ignore>
                <extensive.tests>true</extensive.tests>
            </properties>
        </profile>
        <profile>
            <id>online</id>
            <properties>
                <online.skip.pattern>disabled</online.skip.pattern>
            </properties>
        </profile>
        <profile>
            <id>stress</id>
            <properties>
                <stress.skip.pattern>disabled</stress.skip.pattern>
            </properties>
        </profile>
        <profile>
            <id>java5</id>
            <activation>
                <jdk>1.5</jdk>
            </activation>
            <reporting>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-javadoc-plugin</artifactId>
                        <configuration>
                            <source>1.5</source>
                        </configuration>
                    </plugin>
                </plugins>
            </reporting>
        </profile>
        <profile>
            <id>site.geosolutions</id>
            <distributionManagement>
                <site>
                    <id>site-geosolutions</id>
                    <name>Web site for Maven reports</name>
                    <url>scp://www.geo-solutions.it/var/www/geo-solutions.it/maven/reports/gb</url>
                </site>
            </distributionManagement>
        </profile>
		
        <!-- deploy libs -->
        <profile>
            <id>deployJar</id>
            <activation>
                <property>
                    <name>deployJar</name>
                </property>
            </activation>
            <modules>
                <module>deploy</module>
            </modules>
        </profile>
        
    </profiles>

</project>
