<?xml version="1.0" encoding="UTF-8"?>
<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>org.mule.templates</groupId>
	<artifactId>template-gw-external-oauth2-provider</artifactId>
	<packaging>mule</packaging>
	<version>1.3.0-LDAP</version>
	<name>Template Gateway External OAuth2 Provider with LDAP Validation Anypoint Template Project</name>

	<properties>
		<mule.version>3.8.3</mule.version>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <mule.tools.version>1.2</mule.tools.version>
        <assembly-descriptor-version>1.0.15</assembly-descriptor-version>
		<mule.module.security.version>1.6.2</mule.module.security.version>
        <licensePath>LICENSE_HEADER.txt</licensePath>
        <jdkName>JavaSE-1.7</jdkName>
        <jdk.version>1.7</jdk.version>
	</properties>

	<build>
		<plugins>
			<plugin>
				<groupId>org.mule.tools.maven</groupId>
				<artifactId>mule-app-maven-plugin</artifactId>
				<version>${mule.tools.version}</version>
				<extensions>true</extensions>
				<configuration>
                    <copyToAppsDirectory>true</copyToAppsDirectory>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<version>2.2.1</version>
				<configuration>
					<descriptorRefs>
						<descriptorRef>project</descriptorRef>
					</descriptorRefs>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>build-helper-maven-plugin</artifactId>
				<version>1.7</version>
				<executions>
					<execution>
						<id>add-resource</id>
						<phase>generate-resources</phase>
						<goals>
							<goal>add-resource</goal>
						</goals>
						<configuration>
							<resources>
								<resource>
									<directory>src/main/app/</directory>
								</resource>
								<resource>
									<directory>mappings/</directory>
								</resource>
							<resource>
                                    <directory>src/main/api/</directory>
                                </resource>
                            </resources>
						</configuration>
					</execution>
				</executions>
			</plugin>

           <plugin>
                <groupId>com.mycila.maven-license-plugin</groupId>
                <artifactId>maven-license-plugin</artifactId>
                <version>1.8.0</version>
                <configuration>
                    <header>LICENSE_HEADER.txt</header>
                    <excludes>
                        <exclude>target/**</exclude>
                        <exclude>src/main/java/com/sforce/**</exclude>
                        <exclude>**/.gitignore</exclude>
                        <exclude>**/*.txt</exclude>
                        <exclude>**/*.ftl</exclude>
                        <exclude>**/*.xml</exclude>
                        <exclude>**/*.properties</exclude>
                        <exclude>**/*.sample</exclude>
                        <exclude>**/*.md</exclude>
                        <exclude>**/build-number.txt</exclude>
                        <exclude>**/*.sql</exclude>
                        <!-- bamboo -->
                    </excludes>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>			
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-release-plugin</artifactId>
                <version>2.5</version>
                <configuration>
                    <tagNameFormat>v@{project.version}</tagNameFormat>
                    <updateWorkingCopyVersions>true</updateWorkingCopyVersions>
                    <pushChanges>false</pushChanges>
                </configuration>
            </plugin>
        </plugins>		
	</build>
	<profiles>
		<profile>
	   		<id>release-assembly</id>
            <activation>
                <activeByDefault>false</activeByDefault>
            </activation>
            <build>
                <plugins>
		            <!-- Ship project names with version -->
					<plugin>
						<groupId>com.google.code.maven-replacer-plugin</groupId>
						<artifactId>replacer</artifactId>
						<version>1.5.3</version>
						<executions>
							<execution>
								<id>replace-project-name-with-version</id>
								<phase>validate</phase>
								<goals>
									<goal>replace</goal>
								</goals>
								<configuration>
									<basedir>${project.basedir}</basedir>
									<regex>true</regex>
									<preserveDir>true</preserveDir>
									<includes>
										<include>mule-project.xml</include>
									</includes>
									<replacements>
										<replacement>
											<token>&lt;name&gt;.*&lt;/name&gt;</token>
											<value>&lt;name&gt;${project.artifactId}-${project.version}&lt;/name&gt;</value>
										</replacement>
									</replacements>
								</configuration>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<artifactId>maven-antrun-plugin</artifactId>		
						<executions>		
							<execution>		
								<phase>pre-integration-test</phase>		
								<goals>		
									<goal>run</goal>		
								</goals>		
								<configuration>		
									<tasks>		
										<delete>		
											<fileset dir="${project.build.directory}" includes="*.zip" />		
										</delete>		
									</tasks>		
								</configuration>		
							</execution>		
						</executions>		
					</plugin>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <version>2.2.1</version>
                        <dependencies>
                            <dependency>
                                <groupId>org.mule.templates</groupId>
                                <artifactId>templates-tooling-assembly-descriptor</artifactId>
                                <version>${assembly-descriptor-version}</version>
                            </dependency>
                        </dependencies>
                        <executions>
                            <execution>
                                <phase>pre-integration-test</phase>
                                <goals>
                                    <goal>single</goal>
                                </goals>
                                <configuration>
                                    <finalName>${project.artifactId}-${project.version}</finalName>
                                    <appendAssemblyId>false</appendAssemblyId>
                                    <descriptorRefs>
                                        <descriptorRef>studio-no-test-descriptor</descriptorRef>
                                    </descriptorRefs>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>
    </profiles>
    <!-- Mule Dependencies -->
    <dependencies>
        <!-- Xml configuration -->
        <dependency>
            <groupId>com.mulesoft.muleesb</groupId>
            <artifactId>mule-core-ee</artifactId>
            <version>${mule.version}</version>
            <scope>provided</scope>
        </dependency>

        <!-- Xml configuration -->
        <dependency>
            <groupId>com.mulesoft.muleesb.modules</groupId>
            <artifactId>mule-module-spring-config-ee</artifactId>
            <version>${mule.version}</version>
            <scope>provided</scope>
        </dependency>

		<!-- Mule Transports -->
		<dependency>
			<groupId>org.mule.transports</groupId>
			<artifactId>mule-transport-file</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.mule.transports</groupId>
			<artifactId>mule-transport-http</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
        	<groupId>com.mulesoft.muleesb.transports</groupId>
			<artifactId>mule-transport-jdbc-ee</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
        	<groupId>com.mulesoft.muleesb.transports</groupId>
			<artifactId>mule-transport-jms-ee</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.mule.transports</groupId>
			<artifactId>mule-transport-vm</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>

        <!-- Mule Modules -->
		<dependency>
			<groupId>org.mule.modules</groupId>
			<artifactId>mule-module-scripting</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.mule.modules</groupId>
			<artifactId>mule-module-xml</artifactId>
			<version>${mule.version}</version>
			<scope>provided</scope>
		</dependency>
		<dependency>
            <groupId>com.mulesoft.security</groupId>
            <artifactId>mule-module-security-oauth2-provider</artifactId>
            <version>${mule.module.security.version}</version>
        </dependency>
	</dependencies>

    <distributionManagement>
        <repository>
            <id>mulesoft-releases</id>
            <name>MuleSoft Repository</name>
            <url>http://repository-master.mulesoft.org/releases/</url>
        </repository>
        <snapshotRepository>
            <id>mulesoft-snapshots</id>
            <name>MuleSoft Snapshot Repository</name>
            <url>http://repository-master.mulesoft.org/snapshots/</url>
            <uniqueVersion>false</uniqueVersion>
        </snapshotRepository>
    </distributionManagement>	

	<repositories>
          <repository>
            <id>Central</id>
            <name>Central</name>
            <url>http://repo1.maven.org/maven2/</url>
            <layout>default</layout>
        </repository>
        <repository>
            <id>mulesoft-releases</id>
            <name>MuleSoft Releases Repository</name>
            <url>http://repository.mulesoft.org/releases/</url>
            <layout>default</layout>
        </repository>
        <repository>
            <id>mulesoft-snapshots</id>
            <name>MuleSoft Snapshots Repository</name>
            <url>http://repository.mulesoft.org/snapshots/</url>
            <layout>default</layout>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>mulesoft-release</id>
            <name>mulesoft release repository</name>
            <layout>default</layout>
            <url>http://repository.mulesoft.org/releases/</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

	<scm>
		<connection>scm:git:https://github.com/mulesoft/template-gw-external-oauth2-provider.git</connection>
		<developerConnection>scm:git:https://github.com/mulesoft/template-gw-external-oauth2-provider.git</developerConnection>
		<url>http://github.com/mulesoft/template-gw-external-oauth2-provider</url>
	  <tag>v1.3.0-LDAP</tag>
  </scm>
</project>