<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>
  <groupId>it.geosolutions.mapstore</groupId>
  <artifactId>mapstore-web</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>MapStore 2 - WAR</name>
  <url>http://www.geo-solutions.it</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <mapstore2.version>DEV</mapstore2.version>
    <tomcat.version>7.0.86</tomcat.version>
  </properties>
  <distributionManagement>
        <!-- use the following if you're not using a snapshot version. -->
        <repository>
            <uniqueVersion>false</uniqueVersion>
            <id>geosolutions</id>
            <url>ftp://maven.geo-solutions.it/</url>
        </repository>
        <!-- use the following if you ARE using a snapshot version. -->
        <snapshotRepository>
            <uniqueVersion>false</uniqueVersion>
            <id>geosolutions</id>
            <url>ftp://maven.geo-solutions.it/</url>
        </snapshotRepository>
    </distributionManagement>

  <dependencies>
    <!-- MapStore backend -->
    <dependency>
        <groupId>it.geosolutions.mapstore</groupId>
        <artifactId>mapstore-backend</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>

    <!-- ================================================================ -->
    <!-- GeoStore modules -->
    <!-- ================================================================ -->
    <dependency>
      <groupId>it.geosolutions.geostore</groupId>
      <artifactId>geostore-webapp</artifactId>
      <version>1.5-SNAPSHOT</version>
      <type>war</type>
      <scope>runtime</scope>
    </dependency>
    <dependency>
      <groupId>proxy</groupId>
      <artifactId>http_proxy</artifactId>
      <version>1.2-SNAPSHOT</version>
      <type>war</type>
      <scope>runtime</scope>
    </dependency>

    <dependency>
      <groupId>org.geotools</groupId>
      <artifactId>gt-epsg-hsql</artifactId>
      <version>8.6</version>
    </dependency>
    <dependency>
      <groupId>org.jyaml</groupId>
      <artifactId>jyaml</artifactId>
      <version>1.3</version>
    </dependency>
    <dependency>
      <groupId>com.vividsolutions</groupId>
      <artifactId>jts</artifactId>
      <version>1.8</version>
    </dependency>
    <dependency>
      <groupId>javax.media</groupId>
      <artifactId>jai_codec</artifactId>
      <version>1.1.3</version>
    </dependency>
    <dependency>
      <groupId>org.apache.pdfbox</groupId>
      <artifactId>pdfbox</artifactId>
      <version>1.6.0</version>
    </dependency>
    <dependency>
      <groupId>javax.media</groupId>
      <artifactId>jai_imageio</artifactId>
      <version>1.1</version>
    </dependency>
    <dependency>
      <groupId>commons-httpclient</groupId>
      <artifactId>commons-httpclient</artifactId>
      <version>3.1</version>
    </dependency>
    <dependency>
      <groupId>org.apache.xmlgraphics</groupId>
      <artifactId>batik-transcoder</artifactId>
      <version>1.7</version>
    </dependency>
    <dependency>
      <groupId>com.lowagie</groupId>
      <artifactId>itext</artifactId>
      <version>2.1.5</version>
    </dependency>
    <dependency>
      <groupId>org.json</groupId>
      <artifactId>json</artifactId>
      <version>20080701</version>
    </dependency>
    <dependency>
      <groupId>javax.media</groupId>
      <artifactId>jai_core</artifactId>
      <version>1.1.3</version>
    </dependency>
    <!-- JUnit -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <scope>test</scope>
      <version>4.4</version>
    </dependency>
    <!--  mockito -->
    <dependency>
      <groupId>org.mockito</groupId>
      <artifactId>mockito-all</artifactId>
      <version>1.9.5</version>
      <scope>test</scope>
    </dependency>
    <!-- servlet -->
    <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>servlet-api</artifactId>
          <version>2.5</version>
    </dependency>
    <!-- gzip compression filter -->
    <dependency>
        <groupId>net.sf.ehcache</groupId>
        <artifactId>ehcache-web</artifactId>
        <version>2.0.4</version>
    </dependency>
  </dependencies>

  <build>
    <finalName>mapstore</finalName>
    <plugins>
        <plugin>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.6</version>
            <executions>
                <execution>
                    <id>version</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client</directory>
                                 <filtering>true</filtering>
                                <includes>
                                    <include>**/version.txt</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>only index.html</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/dist</directory>
                                <includes>
                                    <include>index.html</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>only embedded.html</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/dist</directory>
                                <includes>
                                    <include>embedded.html</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>only api.html</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/dist</directory>
                                <includes>
                                    <include>api.html</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>html, configuration files and images</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client</directory>
                                <includes>
                                    <include>**/*.html</include>
                                    <include>**/*.json</include>
                                    <include>**/img/*</include>
                                    <include>product/assets/symbols/*</include>
                                    <include>**/*.less</include>
                                </includes>
                                <excludes>
                                    <exclude>node_modules/*</exclude>
                                    <exclude>node_modules/**/*</exclude>
                                    <exclude>**/libs/Cesium/**/*</exclude>
                                    <exclude>**/test-resources/*</exclude>
                                </excludes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>js files</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore/dist</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/dist</directory>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>example data</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore/examples</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/examples</directory>
                                <includes>
                                    <include>data/*</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>example js</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore/examples</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/examples</directory>
                                <includes>
                                    <include>**/*.js</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>translations</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client</directory>
                                <includes>
                                    <include>translations/*</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>printing</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore/printing</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/../resources/geoserver/print</directory>
                                <includes>
                                    <include>*</include>
                                </includes>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>docs</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore/docs</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/docs</directory>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
                <execution>
                    <id>CesiumJS-navigation</id>
                    <phase>process-classes</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/mapstore/libs/cesium-navigation</outputDirectory>
                        <encoding>UTF-8</encoding>
                        <resources>
                            <resource>
                                <directory>${basedir}/client/libs/cesium-navigation</directory>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.1.1</version>
            <configuration>
                <packagingExcludes>WEB-INF/lib/commons-codec-1.2.jar,
                WEB-INF/lib/commons-io-1.1.jar,
                WEB-INF/lib/commons-logging-1.0.4.jar,
		WEB-INF/lib/commons-pool-1.3.jar,
		WEB-INF/lib/spring-*-3.1.0*.jar
                </packagingExcludes>
                <overlays>
                    <overlay>
                        <groupId>it.geosolutions.geostore</groupId>
                        <artifactId>geostore-webapp</artifactId>
                    </overlay>
                    <overlay>
                        <groupId>proxy</groupId>
                        <artifactId>http_proxy</artifactId>
                    </overlay>
                </overlays>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.apache.tomcat.maven</groupId>
            <artifactId>tomcat7-maven-plugin</artifactId>
            <version>2.2</version>
            <configuration>
                <path>/mapstore</path>
                <port>8080</port>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>org.apache.tomcat.embed</groupId>
                    <artifactId>tomcat-embed-core</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-util</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-coyote</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-api</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-jdbc</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-dbcp</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-servlet-api</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-jsp-api</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-jasper</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-jasper-el</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-el-api</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-catalina</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-tribes</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-catalina-ha</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-annotations-api</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat</groupId>
                    <artifactId>tomcat-juli</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat.embed</groupId>
                    <artifactId>tomcat-embed-logging-juli</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.tomcat.embed</groupId>
                    <artifactId>tomcat-embed-logging-log4j</artifactId>
                    <version>${tomcat.version}</version>
                </dependency>
            </dependencies>
        </plugin>
    </plugins>
    <extensions>
        <extension>
            <groupId>org.apache.maven.wagon</groupId>
            <artifactId>wagon-ftp</artifactId>
            <version>2.10</version>
        </extension>
    </extensions>
  </build>
  <profiles>
    <profile>
      <id>printing</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <plugins>
            <plugin>
                <groupId>com.coderplus.maven.plugins</groupId>
                <artifactId>copy-rename-maven-plugin</artifactId>
                <version>1.0</version>
                <executions>
                    <execution>
                        <id>rename-context</id>
                        <phase>prepare-package</phase>
                        <goals>
                        <goal>copy</goal>
                        </goals>
                        <configuration>
                        <overWrite>true</overWrite>
                        <sourceFile>src/printing/applicationContext-print.xml</sourceFile>
                        <destinationFile>target/mapstore/WEB-INF/classes/applicationContext-print.xml</destinationFile>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
       </build>
       <dependencies>
        <!-- mapfish-print -->
        <dependency>
            <groupId>org.mapfish.print</groupId>
            <artifactId>print-lib</artifactId>
            <version>geosolutions-2.0-SNAPSHOT</version>
        </dependency>
        <dependency>
            <groupId>org.mapfish.geo</groupId>
            <artifactId>mapfish-geo-lib</artifactId>
            <version>1.2.0</version>
        </dependency>
       </dependencies>
    </profile>
    <profile>
        <id>serveronly</id>
        <properties>
            <skipTests>true</skipTests>
            <skipcesiumdownload>true</skipcesiumdownload>
        </properties>
        <build>
            <plugins>
                <plugin>
                    <groupId>com.github.eirslett</groupId>
                    <artifactId>frontend-maven-plugin</artifactId>
                    <configuration>
                        <skip>true</skip>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>2.6</version>
                    <executions></executions>
                </plugin>
            </plugins>
        </build>
    </profile>
    <profile>
        <id>api_mapquest</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>com.google.code.maven-replacer-plugin</groupId>
                    <artifactId>replacer</artifactId>
                    <version>1.5.3</version>
                    <executions>
                        <execution>
                            <phase>prepare-package</phase>
                            <goals>
                                <goal>replace</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <file>target/mapstore/index.html</file>
                        <replacements>
                            <replacement>
                                <token>__API_KEY_MAPQUEST__</token>
                                <value>${__API_KEY_MAPQUEST__}</value>
                            </replacement>
                        </replacements>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </profile>
  </profiles>
    <repositories>
        <!-- GeoSolutions -->
        <repository>
            <id>geosolutions</id>
            <name>GeoSolutions Repository</name>
            <url>https://maven.geo-solutions.it</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>

        <!-- Apache -->
        <repository>
            <id>maven2-repository.dev.java.net</id>
            <name>Java.net Repository for Maven</name>
            <url>http://download.java.net/maven/2/</url>
            <layout>default</layout>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>

        <!-- JBoss -->
        <repository>
            <id>jboss-repo</id>
            <name>JBoss Maven2 Repository</name>
            <url>http://repository.jboss.com/maven2</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>

        <!-- Spring -->
        <repository>
            <id>spring-release</id>
            <name>Spring Portfolio Release Repository</name>
            <url>http://maven.springframework.org/release</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>spring-external</id>
            <name>Spring Portfolio External Repository</name>
            <url>http://maven.springframework.org/external</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>

        <repository>
            <id>osgeo</id>
            <name>Open Source Geospatial Foundation Repository</name>
            <url>https://repo.osgeo.org/repository/release/</url>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
</project>
