mule4-typesafe-connector
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency>
<groupId>com.mulesoftforge</groupId>
<artifactId>mule4-typesafe-connector</artifactId>
<version>1.0.1</version>
</dependency><?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>
<parent>
<groupId>org.mule.extensions</groupId>
<artifactId>mule-java-extension-parent</artifactId>
<version>1.12.3</version>
</parent>
<!-- Default Central/Forge coordinates. Profile `exchange` overrides connector.groupId to the
Anypoint org id (required by Exchange Maven Facade). -->
<groupId>${connector.groupId}</groupId>
<artifactId>mule4-typesafe-connector</artifactId>
<version>1.0.1</version>
<packaging>mule-extension</packaging>
<name>TypeSafe Connector - Mule 4</name>
<description>Mule 4 connector for the TypeSafe System One API (Jev and later System One models) across interchangeable routes. Documentation: https://docs.mulesoftforge.com/connectors/mule4-typesafe-connector/</description>
<url>${connector.docs.url}</url>
<organization>
<name>MuleSoft-Forge</name>
<url>https://mulesoftforge.com/</url>
</organization>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
<distribution>repo</distribution>
</license>
</licenses>
<developers>
<developer>
<name>George Jeffcock</name>
<email>gjeffcock@mulesoft.com</email>
<organization>Salesforce</organization>
<organizationUrl>https://www.mulesoft.com</organizationUrl>
</developer>
</developers>
<scm>
<connection>scm:git:git://github.com/MuleSoft-Forge/mule4-typesafe-connector.git</connection>
<developerConnection>scm:git:ssh://github.com:MuleSoft-Forge/mule4-typesafe-connector.git</developerConnection>
<url>https://github.com/MuleSoft-Forge/mule4-typesafe-connector</url>
</scm>
<properties>
<connector.groupId>com.mulesoftforge</connector.groupId>
<connector.docs.url>https://docs.mulesoftforge.com/connectors/mule4-typesafe-connector/</connector.docs.url>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.release>17</maven.compiler.release>
<min.mule.version>4.9.0</min.mule.version>
<mule.service.http.api.version>4.9.0</mule.service.http.api.version>
<jackson.version>2.17.2</jackson.version>
<junit.version>5.13.4</junit.version>
<mockito.version>5.14.2</mockito.version>
<wiremock.version>3.9.2</wiremock.version>
<munit.version>3.6.1</munit.version>
<munit.extensions.maven.plugin.version>1.7.1</munit.extensions.maven.plugin.version>
<munit.mule.version>4.9.0</munit.mule.version>
<surefire.plugin.version>3.5.2</surefire.plugin.version>
<formatter.plugin.version>2.23.0</formatter.plugin.version>
<impsort.plugin.version>1.9.0</impsort.plugin.version>
<checkstyle.plugin.version>3.6.0</checkstyle.plugin.version>
<checkstyle.version>10.20.1</checkstyle.version>
<formatterConfigPath>formatter.xml</formatterConfigPath>
</properties>
<dependencies>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<!-- Field injection annotation. Mule 4.9's injector scans javax.inject.Inject (not jakarta); the runtime
provides it, so this is provided scope. -->
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
<scope>provided</scope>
</dependency>
<!-- Mule HTTP client API. Provided by the runtime at deploy time; used only for the transport layer. -->
<dependency>
<groupId>org.mule.runtime</groupId>
<artifactId>mule-service-http-api</artifactId>
<version>${mule.service.http.api.version}</version>
<scope>provided</scope>
</dependency>
<!-- Test -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-junit-jupiter</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.wiremock</groupId>
<artifactId>wiremock-standalone</artifactId>
<version>${wiremock.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${surefire.plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<release>17</release>
<parameters>true</parameters>
</configuration>
</plugin>
<plugin>
<groupId>net.revelc.code.formatter</groupId>
<artifactId>formatter-maven-plugin</artifactId>
<version>${formatter.plugin.version}</version>
<configuration>
<configFile>${formatterConfigPath}</configFile>
<lineEnding>LF</lineEnding>
<encoding>UTF-8</encoding>
</configuration>
<executions>
<execution>
<id>validate-format</id>
<phase>validate</phase>
<goals>
<goal>validate</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>net.revelc.code</groupId>
<artifactId>impsort-maven-plugin</artifactId>
<version>${impsort.plugin.version}</version>
<configuration>
<groups>org.mule.,com.mulesoft.,java.,javax.</groups>
<staticGroups>*</staticGroups>
<staticAfter>true</staticAfter>
<removeUnused>true</removeUnused>
</configuration>
<executions>
<execution>
<id>check-imports</id>
<phase>validate</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- MUnit: runs the integration suites in src/test/munit against a provisioned Mule runtime. -->
<plugin>
<groupId>com.mulesoft.munit</groupId>
<artifactId>munit-extensions-maven-plugin</artifactId>
<version>${munit.extensions.maven.plugin.version}</version>
<executions>
<execution>
<id>test</id>
<!-- After package: MUnit needs the built extension descriptor (its minMuleVersion) to generate the test app. -->
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
<configuration>
<!-- Pin one cached CE runtime at our declared minimum (4.9.0); avoids network-based version discovery.
This plugin maps the literal product MULE to Community. Any other value, including MULE_CE, selects Enterprise. -->
<runtimeProduct>MULE</runtimeProduct>
<runtimeVersion>${munit.mule.version}</runtimeVersion>
</configuration>
<dependencies>
<dependency>
<groupId>com.mulesoft.munit</groupId>
<artifactId>munit-runner</artifactId>
<version>${munit.version}</version>
<classifier>mule-plugin</classifier>
</dependency>
<dependency>
<groupId>com.mulesoft.munit</groupId>
<artifactId>munit-tools</artifactId>
<version>${munit.version}</version>
<classifier>mule-plugin</classifier>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>${checkstyle.plugin.version}</version>
<dependencies>
<dependency>
<groupId>com.puppycrawl.tools</groupId>
<artifactId>checkstyle</artifactId>
<version>${checkstyle.version}</version>
</dependency>
</dependencies>
<configuration>
<configLocation>checkstyle.xml</configLocation>
<consoleOutput>true</consoleOutput>
<failOnViolation>true</failOnViolation>
<includeTestSourceDirectory>true</includeTestSourceDirectory>
</configuration>
<executions>
<execution>
<id>checkstyle-check</id>
<phase>validate</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<!-- Maven Central publish, matching mule-infa-mdm-connector.
Activate with: mvn clean deploy -Pcentral
Requires ~/.m2/settings.xml server id maven-central-mulesoftforge
and env MAVEN_GPG_KEYNAME / MAVEN_GPG_PASSPHRASE. -->
<profiles>
<profile>
<id>central</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.11.2</version>
<executions>
<execution>
<id>attach-javadocs</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>3.3.1</version>
<executions>
<execution>
<id>attach-sources</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>net.nicoulaj.maven.plugins</groupId>
<artifactId>checksum-maven-plugin</artifactId>
<version>1.11</version>
<executions>
<execution>
<goals>
<goal>files</goal>
</goals>
</execution>
</executions>
<configuration>
<fileSets>
<fileSet>
<directory>${project.build.directory}</directory>
<includes>*.jar</includes>
</fileSet>
</fileSets>
<algorithms>
<algorithm>MD5</algorithm>
<algorithm>SHA-1</algorithm>
<algorithm>SHA-256</algorithm>
</algorithms>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>3.2.7</version>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
<configuration>
<useAgent>true</useAgent>
<keyname>${env.MAVEN_GPG_KEYNAME}</keyname>
<passphrase>${env.MAVEN_GPG_PASSPHRASE}</passphrase>
<gpgArguments>
<arg>--batch</arg>
<arg>--pinentry-mode</arg>
<arg>loopback</arg>
</gpgArguments>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.sonatype.central</groupId>
<artifactId>central-publishing-maven-plugin</artifactId>
<version>0.11.0</version>
<extensions>true</extensions>
<configuration>
<publishingServerId>maven-central-mulesoftforge</publishingServerId>
<autoPublish>false</autoPublish>
<deploymentName>TypeSafe Connector Mule 4 ${project.version}</deploymentName>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<!-- Anypoint Exchange (private org). Activate with: mvn clean deploy -Pexchange
Requires ANYPOINT_ORG_ID and ~/.m2/settings.xml server id anypoint-exchange-v3.
See docs/exchange-publish.md. Does not alter the Central `central` profile.
exchange-pre-deploy is required by Facade v3; without it deploy returns HTTP 412. -->
<profile>
<id>exchange</id>
<properties>
<connector.groupId>${env.ANYPOINT_ORG_ID}</connector.groupId>
</properties>
<distributionManagement>
<repository>
<id>anypoint-exchange-v3</id>
<name>Anypoint Exchange</name>
<url>https://maven.anypoint.mulesoft.com/api/v3/organizations/${project.groupId}/maven</url>
<layout>default</layout>
</repository>
</distributionManagement>
<!-- Facade must be a resolve repository too: exchange-pre-deploy reads
publication state from it (missing → "Artifact could not be found"). -->
<repositories>
<repository>
<id>anypoint-exchange-v3</id>
<name>Anypoint Exchange</name>
<url>https://maven.anypoint.mulesoft.com/api/v3/organizations/${project.groupId}/maven</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>anypoint-exchange-v3</id>
<name>Anypoint Exchange</name>
<url>https://maven.anypoint.mulesoft.com/api/v3/organizations/${project.groupId}/maven</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
<build>
<plugins>
<plugin>
<groupId>org.mule.tools.maven</groupId>
<artifactId>exchange-mule-maven-plugin</artifactId>
<version>0.1.7</version>
<executions>
<execution>
<id>exchange-pre-deploy</id>
<phase>validate</phase>
<goals>
<goal>exchange-pre-deploy</goal>
</goals>
</execution>
<execution>
<id>exchange-deploy</id>
<phase>deploy</phase>
<goals>
<goal>exchange-deploy</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<repositories>
<repository>
<id>mulesoft-public</id>
<name>MuleSoft Public Repository</name>
<url>https://repository.mulesoft.org/nexus/content/repositories/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>false</enabled></snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>mulesoft-public</id>
<name>MuleSoft Public Repository</name>
<url>https://repository.mulesoft.org/nexus/content/repositories/public/</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>false</enabled></snapshots>
</pluginRepository>
</pluginRepositories>
</project>