<?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.cyberark</groupId>
	<artifactId>conjur-mule-connector</artifactId>
	<version>2.0.4</version>
	<packaging>mule-extension</packaging>
	<!-- <packaging> value should be pom instead of mule-extension while
	deploying 
		to the exchange or cloudhub -->

	<name>Conjur MuleSoft Custom Connector </name>
	<description>Conjur Credentials Provider for MuleSoft Applications</description>
	<parent> 
		<groupId>org.mule.extensions</groupId>
		<artifactId>mule-modules-parent</artifactId> 
		<version>1.6.3</version> 
    	</parent>
	<url>https://github.com/cyberark/conjur-mulesoft-connector</url>
	<licenses>
		<license>
			<name>The Apache License, Version 2.0</name>
			<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
		</license>
	</licenses>

	<developers>
		<developer>
			<name>Cyberark Conjur</name>
			<email>conj_maintainers@cyberark.com</email>
			<organization>Cyberark Software Ltd.</organization>
			<organizationUrl>https://conjur.org</organizationUrl>
		</developer>
	</developers>

	<scm>
		<connection>scm:git:git://github.cyberng.com:Conjur-Enterprise/conjur-mulesoft-connector.git</connection>
		<developerConnection>scm:git:ssh://github.cyberng.com:Conjur-Enterprise/conjur-mulesoft-connector.git</developerConnection>
		<url>https://github.com/cyberark/conjur-mulesoft-connector</url>
	</scm>
	<!-- <parent> <groupId>org.mule.extensions</groupId>
	<artifactId>mule-modules-parent</artifactId> 
		<version>1.1.3</version> </parent> -->
	<profiles>
		<!--  Profile for activating Artifactory as our deployment goal  -->
		<profile>
			<id>artifactory</id>
			<distributionManagement>
				<repository>
					<id>conjurinc-releases</id>
					<name>conjurinc-releases</name>
					<url>https://conjurinc.jfrog.io/artifactory/libs-release-local</url>
				</repository>
				<snapshotRepository>
					<id>conjurinc-snapshots</id>
					<name>conjurinc-snapshots</name>
					<url>https://conjurinc.jfrog.io/artifactory/libs-snapshot-local</url>
				</snapshotRepository>
			</distributionManagement>
		</profile>
		<!--  Profile for deploying and releasing to Maven Central through Central Portal  -->
		<profile>
			<id>central-portal</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-site-plugin</artifactId>
						<version>${maven.site.plugin.version}</version>
					</plugin>
					<plugin>
						<groupId>org.sonatype.central</groupId>
						<artifactId>central-publishing-maven-plugin</artifactId>
						<version>0.7.0</version>
						<extensions>true</extensions>
						<configuration>
							<publishingServerId>central</publishingServerId>
							<autoPublish>true</autoPublish>
						</configuration>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-source-plugin</artifactId>
						<version>2.2.1</version>
						<executions>
							<execution>
								<id>attach-sources</id>
								<goals>
									<goal>jar-no-fork</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-javadoc-plugin</artifactId>
						<version>2.9.1</version>
						<executions>
							<execution>
								<id>attach-javadocs</id>
								<goals>
									<goal>jar</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		<!--  Profile for signing releases  -->
		<profile>
			<id>sign</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.apache.maven.plugins</groupId>
						<artifactId>maven-gpg-plugin</artifactId>
						<version>1.5</version>
						<executions>
							<execution>
								<id>sign-artifacts</id>
								<phase>verify</phase>
								<goals>
									<goal>sign</goal>
								</goals>
								<configuration>
									<!--  This is necessary for gpg to not try to
									use the pinentry programs  -->
									<gpgArguments>
										<arg>--pinentry-mode</arg>
										<arg>loopback</arg>
										<arg>--passphrase-file</arg>
										<arg>/gpg_password</arg>
									</gpgArguments>
								</configuration>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
	</profiles>
	<properties>


		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

		<app.runtime>4.1.5</app.runtime>
		<http.connector.version>1.5.4</http.connector.version>
		<sockets.connector.version>1.1.5</sockets.connector.version>
		<http.policy.transform.extension>3.1.0</http.policy.transform.extension>

		<mule.maven.plugin.version>3.5.0</mule.maven.plugin.version>
		<maven.jar.plugin.version>3.2.0</maven.jar.plugin.version>
		<exchange.mule.maven.plugin>0.0.13</exchange.mule.maven.plugin>
		<maven.site.plugin.version>3.7.1</maven.site.plugin.version>
		<maven.project.info.reports.plugin.version>3.0.0</maven.project.info.reports.plugin.version>
		<maven.compiler.source>17</maven.compiler.source>
		<maven.compiler.target>17</maven.compiler.target>
		<muleJavaEeBomVersion>4.6.0</muleJavaEeBomVersion>
		<munit.extensions.maven.plugin.version>1.2.0</munit.extensions.maven.plugin.version>
		<munit.version>3.1.0</munit.version>


	</properties>
	<dependencies>
    <dependency>
        <groupId>com.cyberark</groupId>
        <artifactId>conjur-sdk-java</artifactId>
        <version>4.2.2</version>
    </dependency>
    <dependency>
        <groupId>com.squareup.okhttp3</groupId>
        <artifactId>okhttp</artifactId>
        <version>4.10.0</version>
    </dependency>
    
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13.2</version>
        <scope>test</scope>
    </dependency>
    
    <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-inline</artifactId>
        <version>3.11.2</version>
        <scope>test</scope>
    </dependency>
    
    <dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-api</artifactId>
	<version>2.17.1</version>
    </dependency>

    <dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-core</artifactId>
	<version>2.17.1</version>
    </dependency>

    <dependency>
        <groupId>org.mule.connectors</groupId>
        <artifactId>mule-http-connector</artifactId>
        <version>1.7.3</version>
        <classifier>mule-plugin</classifier>
    </dependency>

    <dependency>
        <groupId>com.mulesoft.modules</groupId>
        <artifactId>mule-secure-configuration-property-module</artifactId>
        <version>1.2.6</version>
        <classifier>mule-plugin</classifier>
    </dependency>

    <dependency>
	<groupId>org.mule.runtime</groupId>
	<artifactId>mule-module-service</artifactId>
	<version>4.8.0</version>
	<scope>provided</scope>
	<exclusions>
		<exclusion>
		    <groupId>org.mule.test</groupId>
		    <artifactId>munit-runner</artifactId>
		</exclusion>
    	</exclusions>
    </dependency>
		
	<dependency>
	    <groupId>org.mule.runtime</groupId>
	    <artifactId>mule-core</artifactId>
	    <version>4.6.0</version> <!-- Match the version of the module -->
	    <scope>provided</scope>
	    <exclusions>
		<exclusion>
		    <groupId>org.mule.test</groupId>
		    <artifactId>munit-runner</artifactId>
		</exclusion>
		</exclusions>
	</dependency>
		
     <dependency>
	<groupId>org.mule.sdk</groupId>
	<artifactId>mule-sdk-api</artifactId>
	<version>0.10.1</version>
    </dependency>
		
	<dependency>
		<groupId>org.slf4j</groupId>
		<artifactId>slf4j-api</artifactId>
		<version>1.7.5</version>
	</dependency>
    		<!-- https://mvnrepository.com/artifact/org.mule.runtime.plugins/mule-extensions-maven-plugin -->
	<!--<dependency>
	    <groupId>org.mule.runtime.plugins</groupId>
	    <artifactId>mule-extensions-maven-plugin</artifactId>
	    <version>1.6.3</version>
	    <scope>provided</scope>
	</dependency> -->

	</dependencies>

	<build>
    <plugins>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.11.0</version>
            <configuration>
                <source>17</source>
                <target>17</target>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-project-info-reports-plugin</artifactId>
            <version>${maven.project.info.reports.plugin.version}</version>
        </plugin>

        <plugin>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.2</version>
            <configuration>
                <argLine>${argLine}</argLine> <!-- for jacoco -->
                <forkCount>1</forkCount>
                <reuseForks>false</reuseForks>
            </configuration>
        </plugin>

        <plugin>
            <groupId>com.github.spotbugs</groupId>
            <artifactId>spotbugs-maven-plugin</artifactId>
            <version>4.8.6.0</version>
            <configuration>
                <includeFilterFile>spotbugs-security-include.xml</includeFilterFile>
                <excludeFilterFile>spotbugs-security-exclude.xml</excludeFilterFile>
                <plugins>
                    <plugin>
                        <groupId>com.h3xstream.findsecbugs</groupId>
                        <artifactId>findsecbugs-plugin</artifactId>
                        <version>1.12.0</version>
                    </plugin>
                </plugins>
            </configuration>
        </plugin>

        <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.8.7</version>
            <executions>
                <execution>
                    <goals>
                        <goal>prepare-agent</goal>
                    </goals>
                </execution>
                <execution>
                    <id>report</id>
                    <phase>test</phase>
                    <goals>
                        <goal>report</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <executions>
                <execution>
                    <id>attach-javadocs</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        
        <plugin>
            <groupId>com.mulesoft.munit</groupId>
            <artifactId>munit-extensions-maven-plugin</artifactId>
            <version>${munit.extensions.maven.plugin.version}</version>
            <executions>
                <execution>
                    <goals>
                        <goal>test</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <plugin>
	      <groupId>org.apache.maven.plugins</groupId>
	      <artifactId>maven-resources-plugin</artifactId>
	      <version>3.3.0</version>
	      <executions>
	        <execution>
	          <id>copy-changelog-to-classes</id>
	          <phase>process-resources</phase>
	          <goals>
	            <goal>copy-resources</goal>
	          </goals>
	          <configuration>
	            <outputDirectory>${project.build.outputDirectory}</outputDirectory>
	            <resources>
	              <resource>
	                <directory>${project.basedir}</directory>
	                <includes>
	                  <include>CHANGELOG.md</include>
	                </includes>
	                <filtering>false</filtering>
	              </resource>
	            </resources>
	          </configuration>
	        </execution>
	      </executions>
	    </plugin>

    </plugins>
</build>

	<reporting>
		<plugins>
			<plugin>
				<groupId>org.jacoco</groupId>
				<artifactId>jacoco-maven-plugin</artifactId>
				<reportSets>
					<reportSet>
						<reports>
							<!-- select non-aggregate reports -->
							<report>report</report>
						</reports>
					</reportSet>
				</reportSets>
			</plugin>
			
		</plugins>
	</reporting>

	<repositories>

		<repository>
			<id>anypoint-exchange</id>
			<name>AnyPoint Exchange</name>
			<url>https://maven.anypoint.mulesoft.com/api/v3/maven</url>
			<layout>default</layout>
		</repository>
		<repository>
			<id>mulesoft-releases</id>
			<name>MuleSoft Releases Repository</name>
			<url>https://repository.mulesoft.org/releases/</url>
			<layout>default</layout>
		</repository>
		<repository>
			<id>mulesoft-snapshots</id>
			<name>MuleSoft Snapshots Repository</name>
			<url>https://repository.mulesoft.org/snapshots/</url>
			<layout>default</layout>
		</repository>
		<repository>
			<id>releases-ee</id>
			<name>Mule EE Repository</name>
			<url>
				https://repository.mulesoft.org/nexus-ee/content/repositories/releases-ee/</url>
			<layout>default</layout>
		</repository>
		<repository>
			<id>anypoint-exchange-v3</id>
			<name>Anypoint Exchange V3</name>
			<url>https://maven.anypoint.mulesoft.com/api/v3/maven</url>
			<layout>default</layout>
		</repository>
		<repository>
  			<name>Central Portal Snapshots</name>
  			<id>central-portal-snapshots</id>
  			<url>https://central.sonatype.com/repository/maven-snapshots/</url>
  			<releases>
  			  	<enabled>false</enabled>
  			</releases>
  			<snapshots>
  			  	<enabled>true</enabled>
  			</snapshots>
  		</repository>
	</repositories>
	<pluginRepositories>
		<pluginRepository>
			<id>mulesoft-releases</id>
			<name>mulesoft release repository</name>
			<layout>default</layout>
			<url>http://repository.mulesoft.org/releases/</url>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</pluginRepository>
		<pluginRepository>
			<id>mulesoft-snapshots</id>
			<name>mulesoft snapshots repository</name>
			<layout>default</layout>
			<url>http://repository.mulesoft.org/snapshots/</url>
		</pluginRepository>
		<pluginRepository>
			<id>mule-plugin</id>
			<name>Mule Repository</name>
			<url>
				https://repository.mulesoft.org/nexus/content/repositories/public/</url>
		</pluginRepository>
	</pluginRepositories>
	<distributionManagement>
		<snapshotRepository>
			<id>conjurinc-snapshots</id>
			<name>conjurinc-snapshots</name>
			<url>https://conjurinc.jfrog.io/artifactory/libs-snapshot-local</url>
			<uniqueVersion>false</uniqueVersion>
		</snapshotRepository>
		<repository>
			<id>conjurinc-releases</id>
			<name>conjurinc-releases</name>
			<url>https://conjurinc.jfrog.io/artifactory/libs-release-local</url>
			<uniqueVersion>false</uniqueVersion>
		</repository>
	</distributionManagement>
</project>
