2021-08-31 14:59:32 -04:00

278 lines
8.2 KiB
XML

<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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.inteligr8.alfresco</groupId>
<artifactId>aps-public-rest-api</artifactId>
<version>1.1-SNAPSHOT-v1</version>
<name>Alfresco Process Services ReST API Client for Java</name>
<properties>
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
<!-- If you want to build for your specific version, point to your own
installation -->
<aps.baseUrl>https://activiti.alfresco.com</aps.baseUrl>
<junit.version>5.7.2</junit.version>
<spring.version>5.2.14.RELEASE</spring.version>
<jersey.version>2.34</jersey.version>
<cxf.version>3.3.2</cxf.version>
</properties>
<dependencies>
<dependency>
<groupId>com.inteligr8</groupId>
<artifactId>common-rest-api</artifactId>
<version>1.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.ext</groupId>
<artifactId>jersey-proxy-client</artifactId>
<version>${jersey.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.cxf</groupId>
<artifactId>cxf-rt-rs-client</artifactId>
<version>${cxf.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.core</groupId>
<artifactId>jersey-client</artifactId>
<version>${jersey.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.inject</groupId>
<artifactId>jersey-hk2</artifactId>
<version>${jersey.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.media</groupId>
<artifactId>jersey-media-json-jackson</artifactId>
<version>${jersey.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.5.9</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M5</version>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>3.0.0-M5</version>
<dependencies>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<groupId>io.repaint.maven</groupId>
<artifactId>tiles-maven-plugin</artifactId>
<version>2.21</version>
<extensions>true</extensions>
<configuration>
<filtering>true</filtering>
<tiles>
<tile>com.inteligr8:maven-public-deploy-tile:[1.0.0,2.0.0)</tile>
</tiles>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<!-- Implement when descriptor is available -->
<profile>
<id>openapi-codegen</id>
</profile>
<!-- RAML seems legacy, but sometimes works -->
<profile>
<id>raml-codegen</id>
<properties>
<aps.ramlUrl>${aps.baseUrl}/activiti-app/raml/activiti.raml</aps.ramlUrl>
</properties>
<build>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<filesets>
<fileset>
<directory>src/main/java</directory>
<includes>
<include>com/inteligr8/alfresco/activiti/raml/**/*</include>
</includes>
</fileset>
</filesets>
</configuration>
<executions>
<execution>
<id>delete-extras</id>
<phase>process-sources</phase>
<goals><goal>clean</goal></goals>
<configuration>
<excludeDefaultDirectories>true</excludeDefaultDirectories>
<filesets>
<fileset>
<directory>${project.build.directory}/ramlgen/java</directory>
<includes>
<include>com/inteligr8/alfresco/activiti/raml/**/*__*.java</include>
</includes>
</fileset>
</filesets>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.googlecode.maven-download-plugin</groupId>
<artifactId>download-maven-plugin</artifactId>
<version>1.6.3</version>
<executions>
<execution>
<id>download-aps-raml</id>
<phase>generate-sources</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>${aps.ramlUrl}</url>
<outputDirectory>${project.build.directory}/downloads</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.inteligr8</groupId>
<artifactId>regex-maven-plugin</artifactId>
<version>1.0.2</version>
<executions>
<execution>
<id>fix-displayName</id>
<phase>generate-sources</phase>
<goals>
<goal>replace-file</goal>
</goals>
<configuration>
<filesets>
<fileset>
<directory>${project.build.directory}/downloads</directory>
<includes>
<include>activiti.raml</include>
</includes>
<outputDirectory>${project.build.directory}/regexed</outputDirectory>
</fileset>
</filesets>
<regexes>
<regex>
<pattern>(^|[^A-Za-z])task-id([^A-Za-z]|$)</pattern>
<replacement>$1taskId$2</replacement>
</regex>
<regex>
<pattern>^([ ]*)displayName</pattern>
<replacement>#$1 displayName</replacement>
</regex>
</regexes>
</configuration>
</execution>
<execution>
<id>fix-dupclasses</id>
<phase>process-sources</phase>
<goals>
<goal>replace-file</goal>
</goals>
<configuration>
<filesets>
<fileset>
<directory>${project.build.directory}/ramlgen/java</directory>
<includes>
<include>**/*.java</include>
</includes>
<outputDirectory>src/main/java</outputDirectory>
</fileset>
</filesets>
<regexes>
<regex>
<pattern>([A-Z][A-Za-z0-9]*)__[0-9]+</pattern>
<replacement>$1</replacement>
</regex>
</regexes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.mule.raml.codegen</groupId>
<artifactId>raml-client-generator-maven-plugin</artifactId>
<version>0.11</version>
<executions>
<execution>
<id>raml-aps-codegen</id>
<phase>generate-sources</phase>
<goals>
<goal>generate-client</goal>
</goals>
<configuration>
<basePackage>com.inteligr8.alfresco.activiti.raml</basePackage>
<ramlFile>${project.build.directory}/regexed/activiti.raml</ramlFile>
<includeAdditionalProperties>false</includeAdditionalProperties>
<outputDir>${project.build.directory}/ramlgen/java</outputDir>
<outputVersion>v2</outputVersion>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<pluginRepositories>
<pluginRepository>
<id>mulesoft-releases</id>
<url>https://repository.mulesoft.org/releases</url>
</pluginRepository>
<pluginRepository>
<id>inteligr8-releases</id>
<url>http://repos.inteligr8.com/nexus/repository/inteligr8-public</url>
</pluginRepository>
</pluginRepositories>
</project>