<?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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mulesoft.tools</groupId>
    <version>0.5.1</version>
    <artifactId>mule-migration-tool-target-modules</artifactId>
    <name>Mule Migration Assistant Library - Target Modules dependencies</name>
    <packaging>jar</packaging>
    <description>Provide a dependency management of modules to use in behavior tests (i.e.: Compatibility module integration tests)</description>

    <properties>
        <formatterConfigPath>../formatter.xml</formatterConfigPath>
        <licensePath>../LICENSE_HEADER.txt</licensePath>

        <!-- Target versions for migrated components -->
        <mule.http.connector.version>1.4.2</mule.http.connector.version>
        <mule.sockets.connector.version>1.1.4</mule.sockets.connector.version>
        <mule.file.connector.version>1.2.1</mule.file.connector.version>
        <mule.jms.connector.version>1.3.3</mule.jms.connector.version>
        <mule.vm.connector.version>2.0.0</mule.vm.connector.version>
        <mule.amqp.connector.version>1.2.0</mule.amqp.connector.version>
        <mule.aggregators.module.version>1.0.0</mule.aggregators.module.version>

        <mule.validation.module.version>1.4.0</mule.validation.module.version>
        <mule.secureProps.module.version>1.0.2</mule.secureProps.module.version>
        <mule.scripting.module.version>1.1.3</mule.scripting.module.version>
        <mule.spring.module.version>1.3.0</mule.spring.module.version>
        <mule.compression.module.version>2.0.2</mule.compression.module.version>

        <munit.version>2.1.4</munit.version>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.mule.connectors</groupId>
                <artifactId>mule-http-connector</artifactId>
                <version>${mule.http.connector.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.connectors</groupId>
                <artifactId>mule-sockets-connector</artifactId>
                <version>${mule.sockets.connector.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.connectors</groupId>
                <artifactId>mule-file-connector</artifactId>
                <version>${mule.file.connector.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>com.mulesoft.connectors</groupId>
                <artifactId>mule-amqp-connector</artifactId>
                <version>${mule.amqp.connector.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.connectors</groupId>
                <artifactId>mule-jms-connector</artifactId>
                <version>${mule.jms.connector.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.connectors</groupId>
                <artifactId>mule-vm-connector</artifactId>
                <version>${mule.vm.connector.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.modules</groupId>
                <artifactId>mule-aggregators-module</artifactId>
                <version>${mule.aggregators.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.modules</groupId>
                <artifactId>mule-validation-module</artifactId>
                <version>${mule.validation.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.modules</groupId>
                <artifactId>mule-compression-module</artifactId>
                <version>${mule.compression.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.modules</groupId>
                <artifactId>mule-scripting-module</artifactId>
                <version>${mule.scripting.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>org.mule.modules</groupId>
                <artifactId>mule-spring-module</artifactId>
                <version>${mule.spring.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>com.mulesoft.modules</groupId>
                <artifactId>mule-secure-configuration-property-module</artifactId>
                <version>${mule.secureProps.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>

            <dependency>
                <groupId>org.mule.modules</groupId>
                <artifactId>mule-spring-test-plugin</artifactId>
                <version>${mule.spring.module.version}</version>
                <classifier>mule-plugin</classifier>
            </dependency>

            <dependency>
                <groupId>com.mulesoft.munit.tools</groupId>
                <artifactId>munit-maven-plugin</artifactId>
                <version>${munit.version}</version>
                <scope>test</scope>
            </dependency>
            <dependency>
                <groupId>com.mulesoft.munit</groupId>
                <artifactId>munit-runner</artifactId>
                <version>${munit.version}</version>
                <scope>test</scope>
                <classifier>mule-plugin</classifier>
            </dependency>
            <dependency>
                <groupId>com.mulesoft.munit</groupId>
                <artifactId>munit-tools</artifactId>
                <version>${munit.version}</version>
                <scope>test</scope>
                <classifier>mule-plugin</classifier>
            </dependency>
        </dependencies>    
    </dependencyManagement>

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>

    <!-- Cannot put the root project as parent pom because it will bring its own dependency management, and that will mess up other 
        projects that use this module's dependency managemnt. -->
    <!-- So, we need to duplicate the distributionManagement here so this artifact can be published. -->
    <distributionManagement>
        <repository>
            <id>mule-releases</id>
            <name>MuleSoft Releases Repository</name>
            <url>https://repository-master.mulesoft.org/releases/</url>
        </repository>
        <snapshotRepository>
            <id>mule-snapshots</id>
            <name>MuleSoft Snapshots Repository</name>
            <url>https://repository-master.mulesoft.org/snapshots/</url>
        </snapshotRepository>
    </distributionManagement>
</project>
