<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>

    <parent>
        <groupId>org.alfresco</groupId>
        <artifactId>alfresco-super-pom</artifactId>
        <version>10</version>
    </parent>

    <artifactId>alfresco-share-parent</artifactId>
    <version>6.2.2.4</version>
    <packaging>pom</packaging>
    <name>Alfresco Share Parent</name>

    <modules>
        <module>share-services</module>
        <module>share</module>
        <module>web-framework-commons</module>
        <module>web-editor</module>
        <module>web-editor-plugin</module>
        <module>web-editor-samples/customer-site</module>
        <module>wcmquickstart-module</module>
        <module>packaging</module>
        <module>share-encryption</module>
    </modules>

    <properties>
        <version.major>6</version.major>
        <version.minor>2</version.minor>
        <version.revision>2</version.revision>

        <!-- Version of Alfresco Platform to depend on -->
        <alfresco.platform.version>6.1.0-EA3</alfresco.platform.version>
        <alfresco.content-services.version>6.1.0-EA3</alfresco.content-services.version>

        <!-- Java 8 compatibility -->
        <maven.compile.source>1.8</maven.compile.source>
        <maven.compile.target>1.8</maven.compile.target>

        <maven.build.sourceVersion>1.8</maven.build.sourceVersion>

        <maven.distributionManagement.snapshot.url>https://artifacts.alfresco.com/nexus/content/repositories/snapshots</maven.distributionManagement.snapshot.url>
        <argLine>-Xmx2G -Duser.language=en -Dcom.sun.management.jmxremote</argLine>

        <dependency.spring.version>5.1.15.RELEASE</dependency.spring.version>
        <dependency.yui.version>2.9.0-alfresco-20141223</dependency.yui.version>
        <dependency.aikau.version>1.0.101.21</dependency.aikau.version>
        <dependency.freemarker.version>2.3.28</dependency.freemarker.version>
        <dependency.rhino.version>1.7.11</dependency.rhino.version>
        <dependency.httpcomponents.version>4.5.9</dependency.httpcomponents.version>
        <dependency.alfresco-repository.version>7.193</dependency.alfresco-repository.version>
        <dependency.alfresco-jlan.version>7.1</dependency.alfresco-jlan.version>
        <dependency.alfresco-core.version>7.33</dependency.alfresco-core.version>
        <dependency.alfresco-remote-api.version>7.144</dependency.alfresco-remote-api.version>
        <dependency.webscripts.version>7.20</dependency.webscripts.version>
        <dependency.surf.version>7.16</dependency.surf.version>
        <dependency.alfresco-sdk.version>2.0.0</dependency.alfresco-sdk.version>
        <dependency.dom4j.version>2.1.3</dependency.dom4j.version>
        <dependency.slf4j.version>1.7.30</dependency.slf4j.version>
        <dependency.cxf.version>3.3.5</dependency.cxf.version>
        <dependency.beanutils.version>1.9.4</dependency.beanutils.version>
        <dependency.keycloak.version>11.0.0-alfresco-001</dependency.keycloak.version>
        <dependency.apache.taglibs.version>1.2.3</dependency.apache.taglibs.version>
        <dependency.jackson.version>2.10.2</dependency.jackson.version>
        <dependency.commons-collections.version>3.2.2</dependency.commons-collections.version>
        <dependency.commons-codec.version>1.14</dependency.commons-codec.version>

        <!-- Developer's runtime environment configuration -->
        <runtime.parent.folder>${basedir}/..</runtime.parent.folder>
        <runtime.data.folder>${runtime.parent.folder}/runtime</runtime.data.folder>
        <runtime.tomcat.conf.folder>${runtime.parent.folder}/tomcat</runtime.tomcat.conf.folder>
        <runtime.solr.folder>${runtime.data.folder}/solr4-instance</runtime.solr.folder>
        <alfresco.properties.file>${runtime.tomcat.conf.folder}/shared/classes/alfresco-global.properties</alfresco.properties.file>
        <!-- Define the location where alfresco will store its content files, i.e. *.bin) -->
        <dir.root>${runtime.data.folder}/alf_data</dir.root>

        <tomcat.default.alfresco.port>8080</tomcat.default.alfresco.port>
        <tomcat.default.alfresco.ssl.port>8443</tomcat.default.alfresco.ssl.port>
        <tomcat.default.share.port>8081</tomcat.default.share.port>
        <tomcat.default.share.ssl.port>0</tomcat.default.share.ssl.port>
        <tomcat.default.solr.port>8082</tomcat.default.solr.port>
        <tomcat.default.solr.ssl.port>8445</tomcat.default.solr.ssl.port>
        <tomcat.default.solr4.port>8083</tomcat.default.solr4.port>
        <tomcat.default.solr4.ssl.port>8446</tomcat.default.solr4.ssl.port>

        <db.skip>true</db.skip>
        <test.working.dir>${project.build.directory}</test.working.dir>
        <img.exe>convert</img.exe>
        <swf.exe>pdf2swf</swf.exe>
    </properties>

   <scm>
     <connection>scm:git:https://github.com/Alfresco/alfresco-enterprise-share.git/</connection>
     <developerConnection>scm:git:https://github.com/Alfresco/alfresco-enterprise-share.git</developerConnection>
     <url>https://github.com/Alfresco/alfresco-enterprise-share</url>
     <tag>alfresco-share-parent-6.2.2.4</tag>
   </scm>
    <pluginRepositories>
        <pluginRepository>
            <!-- Only used for the customised version of yuicompressor in yuicompressor-maven-plugin -->
            <id>alfresco-public</id>
            <url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
        </pluginRepository>
    </pluginRepositories>

    <distributionManagement>
        <repository>
            <id>alfresco-internal</id>
         <!--   <url>https://artifacts.alfresco.com/nexus/content/repositories/internal-releases</url>-->
 	    <url>https://artifacts.alfresco.com/nexus/content/repositories/releases</url>
        </repository>
        <snapshotRepository>
            <id>alfresco-internal-snapshots</id>
            <url>${maven.distributionManagement.snapshot.url}</url>
        </snapshotRepository>
    </distributionManagement>

    <dependencyManagement>
        <dependencies>
            <!-- Import all dependencyManagement from Alfresco Platform
            <dependency>
                <groupId>org.alfresco</groupId>
                <artifactId>alfresco-parent</artifactId>
                <version>6.0.</version>
                <type>pom</type>
                <scope>import</scope>
            </dependency>
-->
            <!-- Override dependencies with the locally defined versions -->
            <dependency>
                <groupId>org.alfresco</groupId>
                <artifactId>alfresco-jlan-embed</artifactId>
                <version>${dependency.alfresco-jlan.version}</version>
            </dependency>
            <dependency>
                <groupId>org.alfresco.surf</groupId>
                <artifactId>spring-webscripts</artifactId>
                <version>${dependency.webscripts.version}</version>
            </dependency>
            <dependency>
                <groupId>org.alfresco.surf</groupId>
                <artifactId>spring-webscripts-api</artifactId>
                <version>${dependency.webscripts.version}</version>
            </dependency>
            <dependency>
                <groupId>org.alfresco.surf</groupId>
                <artifactId>spring-surf-core</artifactId>
                <version>${dependency.webscripts.version}</version>
            </dependency>
            <dependency>
                <groupId>org.alfresco.surf</groupId>
                <artifactId>spring-surf-core-configservice</artifactId>
                <version>${dependency.webscripts.version}</version>
            </dependency>
            <dependency>
               <groupId>org.alfresco.surf</groupId>
               <artifactId>spring-surf</artifactId>
               <version>${dependency.surf.version}</version>
               <exclusions>
               <!-- surf pulls in a an un-patched version, MNT-20234 -->
                    <exclusion>
                        <groupId>com.asual.lesscss</groupId>
                        <artifactId>lesscss-engine</artifactId>
                    </exclusion>
               </exclusions>
            </dependency>
            <dependency>
               <groupId>org.alfresco.surf</groupId>
               <artifactId>spring-surf-api</artifactId>
               <version>${dependency.surf.version}</version>
            </dependency>
            <dependency>
               <groupId>org.apache.httpcomponents</groupId>
               <artifactId>httpclient</artifactId>
               <version>${dependency.httpcomponents.version}</version>
            </dependency>
            <dependency>
               <groupId>org.apache.httpcomponents</groupId>
               <artifactId>httpmime</artifactId>
               <version>${dependency.httpcomponents.version}</version>
            </dependency>
            <dependency>
               <groupId>javax.servlet</groupId>
               <artifactId>javax.servlet-api</artifactId>
               <version>3.0.1</version>
               <scope>provided</scope>
            </dependency>
            <dependency>
               <groupId>commons-lang</groupId>
               <artifactId>commons-lang</artifactId>
               <version>2.6</version>
            </dependency>
            <dependency>
                <groupId>commons-fileupload</groupId>
                <artifactId>commons-fileupload</artifactId>
                <version>1.4</version>
            </dependency>
            <dependency>
                <groupId>commons-collections</groupId>
                <artifactId>commons-collections</artifactId>
                <version>${dependency.commons-collections.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-codec</groupId>
                <artifactId>commons-codec</artifactId>
                <version>${dependency.commons-codec.version}</version>
            </dependency>
            <!-- Newer cxf libs, see MNT-20520 -->
            <dependency>
                <groupId>org.apache.cxf</groupId>
                <artifactId>cxf-core</artifactId>
                <version>${dependency.cxf.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.cxf</groupId>
                <artifactId>cxf-rt-frontend-jaxws</artifactId>
                <version>${dependency.cxf.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.cxf</groupId>
                <artifactId>cxf-rt-transports-http</artifactId>
                <version>${dependency.cxf.version}</version>
            </dependency>
            <dependency>
                <groupId>org.apache.cxf</groupId>
                <artifactId>cxf-rt-ws-policy</artifactId>
                <version>${dependency.cxf.version}</version>
            </dependency>
            <dependency>
                <groupId>commons-beanutils</groupId>
                <artifactId>commons-beanutils</artifactId>
                <version>${dependency.beanutils.version}</version>
            </dependency>
            <!-- SHA-2404 -->
            <dependency>
              <groupId>org.keycloak</groupId>
              <artifactId>keycloak-servlet-filter-adapter</artifactId>
              <version>${dependency.keycloak.version}</version>
            </dependency>
            <dependency>
              <groupId>org.keycloak</groupId>
              <artifactId>keycloak-authz-client</artifactId>
              <version>${dependency.keycloak.version}</version>
            </dependency>
            <dependency>
              <groupId>org.keycloak</groupId>
              <artifactId>keycloak-core</artifactId>
              <version>${dependency.keycloak.version}</version>
            </dependency>
            <dependency>
              <groupId>org.keycloak</groupId>
              <artifactId>keycloak-adapter-core</artifactId>
              <version>${dependency.keycloak.version}</version>
            </dependency>
            <dependency>
              <groupId>org.keycloak</groupId>
              <artifactId>keycloak-adapter-spi</artifactId>
              <version>${dependency.keycloak.version}</version>
            </dependency>
            <dependency>
              <groupId>org.keycloak</groupId>
              <artifactId>keycloak-servlet-adapter-spi</artifactId>
              <version>${dependency.keycloak.version}</version>
            </dependency>
            <!-- SHA-2400 -->
            <dependency>
                <groupId>org.apache.maven</groupId>
                <artifactId>maven-artifact</artifactId>
                <version>3.5.0</version>
            </dependency>
            <!-- SHA-2432 -->
            <dependency>
              <groupId>org.apache.taglibs</groupId>
              <artifactId>taglibs-standard-spec</artifactId>
              <version>${dependency.apache.taglibs.version}</version>
            </dependency>
            <dependency>
              <groupId>org.apache.taglibs</groupId>
              <artifactId>taglibs-standard-impl</artifactId>
              <version>${dependency.apache.taglibs.version}</version>
            </dependency>
            <dependency>
              <groupId>org.apache.taglibs</groupId>
              <artifactId>taglibs-standard-jstlel</artifactId>
              <version>${dependency.apache.taglibs.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
                <version>${dependency.jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-core</artifactId>
                <version>${dependency.jackson.version}</version>
            </dependency>
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-annotations</artifactId>
                <version>${dependency.jackson.version}</version>
            </dependency>
            <!-- Enforce newer version APS200-->
            <dependency>
                <groupId>org.bouncycastle</groupId>
                <artifactId>bcprov-jdk15on</artifactId>
                <version>1.64</version>
            </dependency>
        </dependencies>

    </dependencyManagement>

    <build>
        <plugins>
            <plugin>
                <groupId>org.alfresco.maven.plugin</groupId>
                <artifactId>alfresco-maven-plugin</artifactId>
                <version>${dependency.alfresco-sdk.version}</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-enforcer-plugin</artifactId>
                <version>3.0.0-M2</version>
                <executions>
                    <execution>
                        <id>enforcer</id>
                        <goals>
                            <goal>enforce</goal>
                        </goals>
                        <configuration>
                            <rules>
                                <requireJavaVersion>
                                    <version>[1.8.0,)</version>
                                </requireJavaVersion>
                            </rules>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>properties-maven-plugin</artifactId>
                <executions>
                <!-- Read alfresco-global.properties if it exists, to use it for cleaning runtime data (e.g. which database?) -->
                    <execution>
                        <id>read-alfresco-global-properties</id>
                        <phase>initialize</phase>
                        <goals>
                            <goal>read-project-properties</goal>
                        </goals>
                        <configuration>
                            <files>
                                <file>${alfresco.properties.file}</file>
                            </files>
                            <quiet>true</quiet>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <artifactId>maven-antrun-plugin</artifactId>
                <executions>
                    <execution>
                        <id>set-default-db-props-on-initialize</id>
                        <phase>initialize</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <exportAntProperties>true</exportAntProperties>
                            <target>
                                <property name="db.driver" value="org.postgresql.Driver" />
                                <property name="db.name" value="alfresco" />
                                <property name="db.url" value="jdbc:postgresql:${db.name}" />
                                <property name="db.master.url" value="jdbc:postgresql:template1" />
                                <property name="db.username" value="alfresco" />
                                <property name="db.password" value="alfresco" />
                                <property name="db.master.username" value="alfresco" />
                                <property name="db.master.password" value="alfresco" />
                                <property name="db.drop.command" value="drop database if exists ${db.name}" />
                                <property name="db.create.command" value="create database ${db.name}" />
                            </target>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <!-- Create a jar of test classes -->
            <plugin>
                <artifactId>maven-jar-plugin</artifactId>
                <executions>
                    <execution>
                        <id>create-test-jar</id>
                        <goals>
                            <goal>test-jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>

            <!--
               Add tomcat's shared/classes as a test source. This is not a nice solution
               to getting alfresco-global.properties onto the classpath, but since additionalClasspathElements
               for the surefire plugin does NOT work, we have to do something else.
               The problem with doing it this way is that the resources are copied to the target folder,
               rather than being referenced directly.
            -->
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>build-helper-maven-plugin</artifactId>
                <executions>
                    <execution>
                        <id>add-shared-classes</id>
                        <phase>generate-test-sources</phase>
                        <goals>
                            <goal>add-test-resource</goal>
                        </goals>
                        <configuration>
                            <resources>
                                <resource>
                                    <directory>${runtime.tomcat.conf.folder}/shared/classes</directory>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>

        <pluginManagement>
            <plugins>
                <plugin>
                    <artifactId>maven-jar-plugin</artifactId>
                    <configuration>
                        <archive>
                            <manifestEntries>
                                <Specification-Version>${version.major}.${version.minor}.${version.revision}</Specification-Version>
                                <Implementation-Version>${project.version}</Implementation-Version>
                                <Build-Date>${maven.build.timestamp}</Build-Date>
                                <Build-Name>${bamboo_planName}</Build-Name>
                                <Build-Key>${bamboo_fullBuildKey}</Build-Key>
                                <Build-Number>${bamboo_buildNumber}</Build-Number>
                                <Build-Revision>${bamboo_repository_revision_number}</Build-Revision>
                            </manifestEntries>
                        </archive>
                    </configuration>
                </plugin>
                <plugin>
                    <artifactId>maven-war-plugin</artifactId>
                    <configuration>
                        <archive>
                            <manifestEntries>
                                <Specification-Version>${version.major}.${version.minor}.${version.revision}</Specification-Version>
                                <Implementation-Version>${project.version}</Implementation-Version>
                                <Build-Date>${maven.build.timestamp}</Build-Date>
                                <Build-Name>${bamboo_planName}</Build-Name>
                                <Build-Key>${bamboo_fullBuildKey}</Build-Key>
                                <Build-Number>${bamboo_buildNumber}</Build-Number>
                                <Build-Revision>${bamboo_repository_revision_number}</Build-Revision>
                            </manifestEntries>
                            <manifestSections>
                                <manifestSection>
                                    <name>Source-control</name>
                                    <manifestEntries>
                                        <Last-change-Revision>${bamboo_custom_svn_lastchange_revision_number}</Last-change-Revision>
                                        <Source-Revision>${bamboo_repository_revision_number}</Source-Revision>
                                        <Source-Url>${bamboo_planRepository_repositoryUrl}</Source-Url>
                                    </manifestEntries>
                                </manifestSection>
                            </manifestSections>
                        </archive>
                        <warSourceDirectory>src/main/webapp</warSourceDirectory>
                    </configuration>
                    <!-- Add dependency to alfresco-maven-plugin, to allow AMP overlays -->
                    <dependencies>
                        <dependency>
                            <groupId>org.alfresco.maven.plugin</groupId>
                            <artifactId>alfresco-maven-plugin</artifactId>
                            <version>${dependency.alfresco-sdk.version}</version>
                        </dependency>
                    </dependencies>
                </plugin>
                <plugin>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <configuration>
                        <!-- To prevent tests alfresco.log to be created in project roots -->
                        <workingDirectory>${project.build.directory}</workingDirectory>
                        <systemPropertyVariables>
                            <!-- Allow FTP server unit test to run unprivileged -->
                            <ftp.port>50521</ftp.port>
                            <transferservice.receiver.enabled>true</transferservice.receiver.enabled>
                            <!-- Database related properties -->
                            <db.url>${db.url}</db.url>
                            <db.driver>${db.driver}</db.driver>
                            <db.name>${db.name}</db.name>
                            <db.username>${db.username}</db.username>
                            <db.password>${db.password}</db.password>
                            <dir.root>${dir.root}</dir.root>
                            <img.exe>${img.exe}</img.exe>
                            <swf.exe>${swf.exe}</swf.exe>
                            <index.subsystem.name>${index.subsystem.name}</index.subsystem.name>
                        </systemPropertyVariables>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>sql-maven-plugin</artifactId>
                    <configuration>
                        <skip>${db.skip}</skip>
                        <autocommit>true</autocommit>
                        <driver>${db.driver}</driver>
                        <url>${db.master.url}</url>
                        <username>${db.master.username}</username>
                        <password>${db.master.password}</password>
                    </configuration>
                </plugin>
                <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
                <plugin>
                	<groupId>org.eclipse.m2e</groupId>
                	<artifactId>lifecycle-mapping</artifactId>
                	<version>1.0.0</version>
                	<configuration>
                		<lifecycleMappingMetadata>
                			<pluginExecutions>
                				<pluginExecution>
                					<pluginExecutionFilter>
                						<groupId>
                							org.codehaus.mojo
                						</groupId>
                						<artifactId>
                							license-maven-plugin
                						</artifactId>
                						<versionRange>
                							[1.8,)
                						</versionRange>
                						<goals>
                							<goal>
                								check-file-header
                							</goal>
                						</goals>
                					</pluginExecutionFilter>
                					<action>
                						<ignore />
                					</action>
                				</pluginExecution>
                			</pluginExecutions>
                		</lifecycleMappingMetadata>
                	</configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <profiles>

        <!-- Profile to build Enterprise version of share-enabled alfresco war -->
        <profile>
            <id>enterprise</id>
            <modules>
                <module>alfresco-enterprise</module>
            </modules>
        </profile>

        <!-- Profile to build Share packaging, including installer -->
        <profile>
            <id>packaging</id>
            <modules>
                <module>packaging</module>
            </modules>
        </profile>

        <profile>
            <properties>
                <!-- Filter solrcore.properties -->
                <ALFRESCO_SOLR4_DATA_DIR>${runtime.solr.folder}/data</ALFRESCO_SOLR4_DATA_DIR>
            </properties>
            <id>run</id>
            <build>
                <plugins>

                    <plugin>
                      <groupId>org.apache.maven.plugins</groupId>
                      <artifactId>maven-dependency-plugin</artifactId>
                      <executions>
                        <!-- Download and unpack the tomcat config zip file -->
                        <execution>
                          <id>unpack-tomcat-config</id>
                          <phase>generate-resources</phase>
                          <goals>
                            <goal>unpack</goal>
                          </goals>
                          <configuration>
                            <outputDirectory>${project.build.directory}/tomcat-conf</outputDirectory>
                            <artifactItems>
                              <artifactItem>
                                <groupId>org.alfresco</groupId>
                                <artifactId>alfresco-dev-tomcat</artifactId>
                                <version>5.2.3</version>
                                <classifier>config</classifier>
                                <overWrite>true</overWrite>
                                <type>zip</type>
                              </artifactItem>
                            </artifactItems>
                          </configuration>
                        </execution>

                        <!-- Download and unpack the solr4 config zip file -->
                        <execution>
                          <id>unpack-solr4-config</id>
                          <phase>generate-resources</phase>
                          <goals>
                            <goal>unpack</goal>
                          </goals>
                          <configuration>
                            <outputDirectory>${project.build.directory}/solr4</outputDirectory>
                            <artifactItems>
                              <artifactItem>
                                <groupId>org.alfresco</groupId>
                                  <artifactId>alfresco-solr4</artifactId>
                                  <version>5.2.3</version>
                                  <!--<artifactId>alfresco-solrclient</artifactId>-->
                                <!--<artifactId>alfresco-solr4</artifactId>-->
                                <!--<version>6.7</version>-->
                                <classifier>config</classifier>
                                <overWrite>true</overWrite>
                                <type>zip</type>
                              </artifactItem>
                            </artifactItems>
                          </configuration>
                        </execution>
                      </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-resources-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>filter-copy-solr4-config</id>
                                <goals>
                                    <goal>copy-resources</goal>
                                </goals>
                                <phase>generate-resources</phase>
                                <configuration>
                                    <outputDirectory>${runtime.solr.folder}</outputDirectory>
                                    <resources>
                                        <resource>
                                            <directory>${project.build.directory}/solr4</directory>
                                            <excludes>
                                                <exclude>workspace-SpacesStore/conf/solrcore.properties</exclude>
                                                <exclude>archive-SpacesStore/conf/solrcore.properties</exclude>
                                            </excludes>
                                            <filtering>false</filtering>
                                        </resource>
                                        <resource>
                                            <directory>${project.build.directory}/solr4</directory>
                                            <includes>
                                                <include>workspace-SpacesStore/conf/solrcore.properties</include>
                                                <include>archive-SpacesStore/conf/solrcore.properties</include>
                                            </includes>
                                            <filtering>true</filtering>
                                        </resource>
                                    </resources>
                                    <useDefaultDelimiters>false</useDefaultDelimiters>
                                    <delimiters>
                                        <delimiter>@@</delimiter>
                                    </delimiters>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>

                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <executions>
                            <!-- Copy tomcat config from build directory to correct location -->
                            <!--
                                Q. Why not unpack directly to ${runtime.tomcat.conf.folder} ?
                                A. There is no way of telling maven NOT to overwrite the directory if it is already there.
                                   overWrite doesn't work, overWriteIfNewer doesn't work either. The plugin uses marker files
                                   to determine whether the zip has already been unpacked, rather than using the actual folder
                                   where the contents are being unpacked - so if a clean is performed the marker files disappear
                                   and the zip is unpacked regardless (overwriting your customised tomcat config). Whilst you
                                   can change the location of the marker files, doing things this way really is going to be more
                                   reliable, since the existing directory will be respected properly.
                             -->
                            <execution>
                                <id>copy-tomcat-config</id>
                                <goals>
                                    <goal>run</goal>
                                </goals>
                                <phase>generate-resources</phase>
                                <configuration>
                                    <target>
                                        <taskdef resource="net/sf/antcontrib/antcontrib.properties" classpathref="maven.plugin.classpath" />
                                        <if>
                                            <available file="${runtime.tomcat.conf.folder}" type="dir" />
                                            <then>
                                                <echo message="Skipping creation of tomcat configuration, already exists: ${runtime.tomcat.conf.folder}" />
                                            </then>
                                            <else>
                                                <echo message="Creating tomcat runtime configuration: ${runtime.tomcat.conf.folder}" />
                                                <copy todir="${runtime.tomcat.conf.folder}">
                                                    <fileset dir="${project.build.directory}/tomcat-conf" />
                                                </copy>
                                            </else>
                                        </if>
                                    </target>
                                </configuration>
                            </execution>
                        </executions>
                        <dependencies>
                            <dependency>
                                <groupId>ant-contrib</groupId>
                                <artifactId>ant-contrib</artifactId>
                                <version>20020829</version>
                            </dependency>
                        </dependencies>
                    </plugin>


                    <plugin>
                        <groupId>org.apache.tomcat.maven</groupId>
                        <artifactId>tomcat7-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>run-exploded-webapp</id>
                                <phase>prepare-package</phase>
                                <goals>
                                    <goal>run</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

        <!--
            Use "mvn initialize -Ppurge" to drop repo, solr and DB data, then re-create an empty DB.
            Or use with a later phase to build and start a fresh repo all in one go, e.g.
            "mvn [clean] install -Ppurge,run"
          -->
        <profile>
            <id>purge</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-clean-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>delete-runtime-folders</id>
                                <phase>initialize</phase>
                                <goals>
                                    <goal>clean</goal>
                                </goals>
                                <configuration>
                                    <excludeDefaultDirectories>true</excludeDefaultDirectories>
                                    <filesets>
                                        <fileset>
                                            <directory>${runtime.data.folder}</directory>
                                        </fileset>
                                    </filesets>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>sql-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>drop-db</id>
                                <phase>initialize</phase>
                                <goals>
                                    <goal>execute</goal>
                                </goals>
                                <configuration>
                                    <skip>false</skip><!-- always run -->
                                    <sqlCommand>${db.drop.command}</sqlCommand>
                                </configuration>
                            </execution>
                            <execution>
                                <id>create-db</id>
                                <phase>initialize</phase>
                                <goals>
                                    <goal>execute</goal>
                                </goals>
                                <configuration>
                                    <skip>false</skip><!-- always run -->
                                    <sqlCommand>${db.create.command}</sqlCommand>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
</project>
