<!-- ****************************************************** -->
<!-- ** Experimental Maven build - use at your own risk! ** -->
<!-- ****************************************************** -->

<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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.alfresco</groupId>
        <artifactId>alfresco-parent</artifactId>
        <version>4.2.e</version>
        <relativePath>../../pom.xml</relativePath>
    </parent>

    <artifactId>share</artifactId>
    <packaging>war</packaging>
    <name>Alfresco Share</name>
    <description>Alfresco Share</description>
    
    <properties>
        <maven.tomcat.path>/share</maven.tomcat.path>
        <maven.tomcat.port>${tomcat.default.share.port}</maven.tomcat.port>
    </properties>

    <dependencies>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>alfresco-web-framework-commons</artifactId>
            <version>${project.version}</version>
            <classifier>classes</classifier>
            <exclusions>
                <exclusion>
                   <groupId>javax.servlet</groupId>
                   <artifactId>jsp-api</artifactId>
               </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>alfresco-jlan-embed</artifactId>
            <version>${project.version}</version>
            <exclusions>
                <exclusion>
                    <groupId>aopalliance</groupId>
                    <artifactId>aopalliance</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.hibernate</groupId>
                    <artifactId>hibernate</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>com.sun.xml.bind</groupId>
                    <artifactId>jaxb-xjc</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>javax.xml.bind</groupId>
                    <artifactId>jaxb-api</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.mybatis</groupId>
                    <artifactId>mybatis-spring</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.quartz-scheduler</groupId>
                    <artifactId>quartz</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>javax.portlet</groupId>
            <artifactId>portlet-api</artifactId>
            <version>2.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>servlet-api</artifactId>
            <version>2.5</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.alfresco.cmis.client</groupId>
            <artifactId>alfresco-opencmis-extension</artifactId>
            <version>0.6</version>
            <exclusions>
                <exclusion>
                    <artifactId>jaxb-api</artifactId>
                    <groupId>javax.xml.bind</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>junit</artifactId>
                    <groupId>junit</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>org.osgi.core</artifactId>
                    <groupId>org.apache.felix</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>saaj-impl</artifactId>
                    <groupId>com.sun.xml.messaging.saaj</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>stax-api</artifactId>
                    <groupId>javax.xml.stream</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>wstx-asl</artifactId>
                    <groupId>org.codehaus.woodstox</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.extensions.surf</groupId>
            <artifactId>spring-surf-api</artifactId>
            <version>${dependency.surf.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.abdera</groupId>
            <artifactId>abdera-client</artifactId>
            <version>0.4.0-incubating</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-httpclient</groupId>
                    <artifactId>commons-httpclient</artifactId>
                </exclusion>
                <exclusion>
                    <artifactId>geronimo-stax-api_1.0_spec</artifactId>
                    <groupId>org.apache.geronimo.specs</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>geronimo-activation_1.0.2_spec</artifactId>
                    <groupId>org.apache.geronimo.specs</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>wstx-asl</artifactId>
                    <groupId>org.codehaus.woodstox</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>xml-apis</artifactId>
                    <groupId>xml-apis</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.springframework.extensions.surf</groupId>
            <artifactId>spring-cmis-framework</artifactId>
            <version>${dependency.surf.version}</version>
            <exclusions>
                <exclusion>
                    <artifactId>abdera-extensions-main</artifactId>
                    <groupId>org.apache.abdera</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>abdera-extensions-html</artifactId>
                    <groupId>org.apache.abdera</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>abdera-server</artifactId>
                    <groupId>org.apache.abdera</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-lang</artifactId>
                    <groupId>commons-lang</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>geronimo-stax-api_1.0_spec</artifactId>
                    <groupId>org.apache.geronimo.specs</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>geronimo-activation_1.0.2_spec</artifactId>
                    <groupId>org.apache.geronimo.specs</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>js</artifactId>
                    <groupId>rhino</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jstl</artifactId>
                    <groupId>javax.servlet</groupId>
                </exclusion>
                <exclusion>
                    <groupId>commons-collections</groupId>
                    <artifactId>commons-collections</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- Dependency on Alfresco patched version of Rhino available in artfifact.alfresco.com -->
        <dependency>
            <groupId>rhino</groupId>
            <artifactId>js</artifactId>
            <version>1.6R7-patched</version>
        </dependency>
        <dependency>
            <artifactId>json-simple</artifactId>
            <groupId>com.googlecode.json-simple</groupId>
            <version>1.1.1</version>
            <exclusions>
                <exclusion>
                    <artifactId>junit</artifactId>
                    <groupId>junit</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.tuckey</groupId>
            <artifactId>urlrewritefilter</artifactId>
            <version>4.0.4</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.2.2</version>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>jaxen</groupId>
            <artifactId>jaxen</artifactId>
            <version>1.1.3</version>
            <scope>runtime</scope>
            <exclusions>
                <exclusion>
                    <artifactId>maven-cobertura-plugin</artifactId>
                    <groupId>maven-plugins</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>maven-findbugs-plugin</artifactId>
                    <groupId>maven-plugins</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>icu4j</artifactId>
                    <groupId>com.ibm.icu</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jdom</artifactId>
                    <groupId>jdom</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>xom</artifactId>
                    <groupId>xom</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>xercesImpl</artifactId>
                    <groupId>xerces</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>xml-apis</artifactId>
                    <groupId>xml-apis</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
            <version>2.3.18-alfresco-patched-2</version>
        </dependency>
        <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>alfresco-web-framework-commons</artifactId>
            <version>${project.version}</version>
            <type>war</type>
        </dependency>
        <dependency>
            <artifactId>stax-api</artifactId>
            <groupId>stax</groupId>
            <version>1.0.1</version>
        </dependency>
        <dependency>
            <groupId>com.facebook.api</groupId>
            <artifactId>facebook-java-api</artifactId>
            <version>070716</version>
        </dependency>
        <dependency>
            <groupId>com.hazelcast</groupId>
            <artifactId>hazelcast-spring</artifactId>
            <version>2.4</version>
            <exclusions>
                <exclusion>
                    <artifactId>hazelcast-client</artifactId>
                    <groupId>com.hazelcast</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>jsr250-api</artifactId>
                    <groupId>javax.annotation</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.myfaces.core</groupId>
            <artifactId>myfaces-api</artifactId>
            <version>1.1.8</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-collections</groupId>
                    <artifactId>commons-collections</artifactId>
                </exclusion>
                <exclusion>
                    <artifactId>jstl</artifactId>
                    <groupId>javax.servlet</groupId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>org.apache.myfaces.core</groupId>
            <artifactId>myfaces-impl</artifactId>
            <version>1.1.8</version>
            <exclusions>
                <exclusion>
                    <groupId>commons-collections</groupId>
                    <artifactId>commons-collections</artifactId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-lang</artifactId>
                    <groupId>commons-lang</groupId>
                </exclusion>
                <exclusion>
                    <artifactId>commons-digester</artifactId>
                    <groupId>commons-digester</groupId>
                </exclusion>
            </exclusions>
        </dependency>
		<!-- Dependency on Dojo ZIP -->
		<dependency>
			<groupId>org.dojotoolkit</groupId>
			<artifactId>dojo</artifactId>
			<version>1.9.0</version>
			<type>zip</type>
		</dependency>
		<!-- Dependency on YUI ZIP (custom version deployed at artifacts.alfresco.com) -->
		<dependency>
			<groupId>com.yahoo.platform.yui</groupId>
			<artifactId>yui</artifactId>
			<version>2.9.0-alfresco</version>
			<type>zip</type>
		</dependency>

        <dependency>
            <groupId>org.mockito</groupId>
            <artifactId>mockito-all</artifactId>
            <version>1.8.0</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
        <!-- Configuration of the WAR build -->
            <plugin>
                <artifactId>maven-war-plugin</artifactId>
                <configuration>
                    <useCache>true</useCache>
                    <overlays>
                        <overlay>
                            <groupId>${project.groupId}</groupId>
                            <artifactId>alfresco-web-framework-commons</artifactId>
                            <excludes>
                                <exclude>WEB-INF/classes/*</exclude>
                                <exclude>WEB-INF/lib/*</exclude>
                            </excludes>
                        </overlay>
                        <overlay>
                            <groupId>org.dojotoolkit</groupId>
                            <artifactId>dojo</artifactId>
                            <type>zip</type>
                            <targetPath>js/lib</targetPath>
                        </overlay>
                        <overlay>
                            <groupId>com.yahoo.platform.yui</groupId>
                            <artifactId>yui</artifactId>
                            <type>zip</type>
                        </overlay>
                    </overlays>
                   <archiveClasses>false</archiveClasses>
                   <attachClasses>true</attachClasses>
                </configuration>
                <!-- This allows overlays to be prepared on the FS for minification and faster run -->
                <executions>
                    <execution>
                        <id>prepare-exploded-war</id>
                        <goals>
                            <goal>exploded</goal>
                        </goals>
                        <phase>prepare-package</phase>
                    </execution>
                </executions>
            </plugin>
			<plugin>
				<groupId>net.alchim31.maven</groupId>
				<artifactId>yuicompressor-maven-plugin</artifactId>
				<version>1.3.2</version>
				<executions>
					<execution>
						<id>minimize-slingshot-javascript</id>
						<goals>
							<goal>compress</goal>
						</goals>
						<phase>prepare-package</phase>
					</execution>
				</executions>
				<configuration>
				    <jswarn>false</jswarn>
				    <encoding>UTF-8</encoding>
				    <includes>
				        <include>**/*.js</include>
                    </includes>
                    <!-- We don't need to re-minify YUI or 3rd party libs -->   
				    <excludes>
                        <exclude>**/*-min.js</exclude>
                        <exclude>**/WEB-INF/**</exclude>
                        <exclude>**/tiny_mce/**</exclude>
                        <exclude>**/yui/**</exclude>
                        <exclude>js/lib/dojo*/**</exclude>  
                        <exclude>**/log4javascript*.js</exclude>
                    </excludes>
                    <sourceDirectory>${project.build.directory}/${project.build.finalName}</sourceDirectory>
                    <outputDirectory>${project.build.directory}/${project.build.finalName}</outputDirectory>
                    <excludeResources>true</excludeResources>
						<!-- <nocompress>true</nocompress> -->
						<!-- <disableOptimizations>true</disableOptimizations> -->
						<!-- <nosuffix>true</nosuffix> -->
						<!-- <preserveAllSemiColons>true</preserveAllSemiColons> -->
						<!-- <nomunge>true</nomunge> -->
				    <aggregations>
						<aggregation>
							<!-- remove files after aggregation (default: false) <removeIncluded>true</removeIncluded> -->
							<output>${project.build.directory}/${project.build.finalName}/js/yui-common.js</output>
							<!-- files to include, path relative to output's directory or absolute path -->
							<includes>
								<include>${project.build.directory}/${project.build.finalName}/yui/utilities/utilities.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/button/button-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/container/container-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/menu/menu-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/json/json-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/selector/selector-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/datasource/datasource-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/autocomplete/autocomplete-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/paginator/paginator-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/datatable/datatable-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/treeview/treeview-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/cookie/cookie-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/uploader/uploader-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/calendar/calendar-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/resize/resize-min.js</include>
								<include>${project.build.directory}/${project.build.finalName}/yui/yui-patch.js</include>
							</includes>
							<!-- files to exclude, path relative to output's directory <excludes> <exclude>**/*.pack.js</exclude> 
								<exclude>**/compressed.css</exclude> </excludes> -->
						</aggregation>
                    </aggregations>
		  		</configuration>
			</plugin>
        </plugins>
    </build>

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

</project>
