Commit 3ba01ddd authored by Brian Long's avatar Brian Long
Browse files

initial checkin

parents
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+14 −0
Original line number Diff line number Diff line
# Maven
target
pom.xml.versionsBackup

# Eclipse
.project
.classpath
.settings

# Visual Studio Code
.vscode

# IntelliJ
/.idea/

pom.xml

0 → 100644
+221 −0
Original line number Diff line number Diff line
<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.activiti</groupId>
    <artifactId>mq-activiti-ext</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    
    <name>MQ Activiti Extension</name>

    <properties>
    	<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    	<maven.compiler.source>11</maven.compiler.source>
    	<maven.compiler.target>11</maven.compiler.target>
    	<maven.compiler.release>11</maven.compiler.release>
    	
    	<aps.version>2.4.1</aps.version>
		<spring.version>5.3.29</spring.version>
    	<activiti.version>7.11.0</activiti.version>
    	<jackson.version>2.13.5</jackson.version>
    	
    	<rabbitmq.version>5.12.0</rabbitmq.version>
    	<activemq.version>5.18.3</activemq.version>
    	<activemq.jms.version>2.31.2</activemq.jms.version>
    	
    	<!-- for testin -->
		<cxf.version>3.0.12</cxf.version>
    </properties>

    <dependencies>
    	<!-- APS and Activiti -->
        <dependency>
			<groupId>com.activiti</groupId>
			<artifactId>activiti-app-rest</artifactId>
			<version>${aps.version}</version>
			<scope>provided</scope>
			
			<!-- none of these are needed for builds -->
			<exclusions>
				<exclusion>
					<!-- extra repository needed for this -->
					<groupId>org.alfresco.officeservices</groupId>
					<artifactId>aoservices</artifactId>
				</exclusion>
				<exclusion>
					<!-- extra repository needed for this -->
					<groupId>com.activiti</groupId>
					<artifactId>aspose-transformation</artifactId>
				</exclusion>
				<exclusion>
					<!-- avoiding log4j-api vulnerabilities -->
					<groupId>org.elasticsearch</groupId>
					<artifactId>elasticsearch</artifactId>
				</exclusion>
				<exclusion>
					<!-- avoiding old spring-context-support -->
					<groupId>com.ryantenney.metrics</groupId>
					<artifactId>metrics-spring</artifactId>
				</exclusion>
				<exclusion>
					<!-- avoiding old spring-* versions -->
					<groupId>org.activiti</groupId>
					<artifactId>activiti-spring</artifactId>
				</exclusion>
			</exclusions>
		</dependency>
        <dependency>
			<groupId>org.activiti</groupId>
			<artifactId>activiti-api-process-runtime</artifactId>
			<version>${activiti.version}</version>
			<scope>provided</scope>
        </dependency>
        <dependency>
			<groupId>org.activiti</groupId>
			<artifactId>activiti-api-task-runtime</artifactId>
			<version>${activiti.version}</version>
			<scope>provided</scope>
        </dependency>
        
        <!-- MQ -->
        <dependency>
			<groupId>com.rabbitmq</groupId>
			<artifactId>amqp-client</artifactId>
			<version>${rabbitmq.version}</version>
			<scope>provided</scope>
        </dependency>
        <dependency>
			<groupId>org.apache.activemq</groupId>
			<artifactId>activemq-client</artifactId>
			<version>${activemq.version}</version>
        </dependency>
        <dependency>
			<groupId>org.apache.activemq</groupId>
			<artifactId>artemis-jms-client</artifactId>
			<version>${activemq.jms.version}</version>
        </dependency>
		
		<!-- Testing only -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.13.2</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>
			<!-- avoids log4j dependency -->
			<plugin>
				<artifactId>maven-compiler-plugin</artifactId>
				<version>3.11.0</version>
			</plugin>
			<!-- avoids struts dependency -->
			<plugin>
				<artifactId>maven-site-plugin</artifactId>
				<version>3.12.1</version>
			</plugin>
			<plugin>
				<artifactId>maven-assembly-plugin</artifactId>
				<version>3.6.0</version>
				<executions>
					<execution>
						<id>assemble-jar</id>
						<phase>package</phase>
						<goals><goal>single</goal></goals>
						<configuration>
							<descriptorRefs>
								<descriptorRef>jar-with-dependencies</descriptorRef>
							</descriptorRefs>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>io.repaint.maven</groupId>
				<artifactId>tiles-maven-plugin</artifactId>
				<version>2.36</version>
				<extensions>true</extensions>
				<configuration>
					<tiles>
                        <!-- Documentation: https://bitbucket.org/inteligr8/ootbee-beedk/src/stable/beedk-aps-ext-rad-tile -->
						<tile>com.inteligr8.ootbee:beedk-aps-ext-rad-tile:[1.0.16,1.1)</tile>
					</tiles>
				</configuration>
			</plugin>
		</plugins>
    </build>
    
    <profiles>
    	<profile>
    		<id>apidoc</id>
    		<build>
    			<plugins>
    				<plugin>
    					<artifactId>maven-clean-plugin</artifactId>
    					<configuration>
    						<filesets>
    							<fileset>
    								<directory>${basedir}/apidocs</directory>
    							</fileset>
    						</filesets>
    					</configuration>
    				</plugin>
					<plugin>
					    <groupId>org.apache.maven.plugins</groupId>
					    <artifactId>maven-javadoc-plugin</artifactId>
					    <version>3.4.1</version>
					    <executions>
					        <execution>
					            <id>generate-doclet</id>
					            <phase>generate-resources</phase>
					            <goals><goal>javadoc</goal></goals>
					            <configuration>
					                <doclet>com.inteligr8.activiti.doclet.ActivitiDoclet</doclet>
					                <docletArtifact>
					                    <groupId>com.inteligr8.activiti</groupId>
					                    <artifactId>activiti-api-doclet</artifactId>
					                    <version>1.0.4</version>
					                </docletArtifact>
					                <useStandardDocletOptions>false</useStandardDocletOptions>
					                <destDir>apidocs</destDir>
					                <reportOutputDirectory>${basedir}</reportOutputDirectory>
					                <additionalOptions>
					                    <additionalOption>--title 'API Documentation'</additionalOption>
					                    <additionalOption>--apiName '${project.name}</additionalOption>
					                </additionalOptions>
					            </configuration>
					        </execution>
					    </executions>
					</plugin>
    			</plugins>
    		</build>
    	</profile>
    </profiles>
    
    <repositories>
        <repository>
            <id>alfresco-public</id>
            <url>https://artifacts.alfresco.com/nexus/content/groups/public</url>
        </repository>
        <repository>
            <id>activiti-releases</id>
            <url>https://artifacts.alfresco.com/nexus/content/repositories/activiti-enterprise-releases</url>
        </repository>
    </repositories>
</project>

rad.ps1

0 → 100644
+74 −0
Original line number Diff line number Diff line

function discoverArtifactId {
	$script:ARTIFACT_ID=(mvn -q -Dexpression=project"."artifactId -DforceStdout help:evaluate)
}

function rebuild {
	echo "Rebuilding project ..."
	mvn process-classes
}

function start_ {
	echo "Rebuilding project and starting Docker containers to support rapid application development ..."
	mvn -Drad process-classes
}

function start_log {
	echo "Rebuilding project and starting Docker containers to support rapid application development ..."
	mvn -Drad "-Ddocker.showLogs" process-classes
}

function stop_ {
	discoverArtifactId
	echo "Stopping Docker containers that supported rapid application development ..."
	docker container ls --filter name=${ARTIFACT_ID}-*
	echo "Stopping containers ..."
	docker container stop (docker container ls -q --filter name=${ARTIFACT_ID}-*)
	echo "Removing containers ..."
	docker container rm (docker container ls -aq --filter name=${ARTIFACT_ID}-*)
}

function tail_logs {
	param (
		$container
	)
	
	discoverArtifactId
	docker container logs -f (docker container ls -q --filter name=${ARTIFACT_ID}-${container})
}

function list {
	discoverArtifactId
	docker container ls --filter name=${ARTIFACT_ID}-*
}

switch ($args[0]) {
	"start" {
		start_
	}
	"start_log" {
		start_log
	}
	"stop" {
		stop_
	}
	"restart" {
		stop_
		start_
	}
	"rebuild" {
		rebuild
	}
	"tail" {
		tail_logs $args[1]
	}
	"containers" {
		list
	}
	default {
		echo "Usage: .\rad.ps1 [ start | start_log | stop | restart | rebuild | tail {container} | containers ]"
	}
}

echo "Completed!"

rad.sh

0 → 100644
+71 −0
Original line number Diff line number Diff line
#!/bin/sh

discoverArtifactId() {
	ARTIFACT_ID=`mvn -q -Dexpression=project.artifactId -DforceStdout help:evaluate`
}

rebuild() {
	echo "Rebuilding project ..."
	mvn process-classes
}

start() {
	echo "Rebuilding project and starting Docker containers to support rapid application development ..."
	mvn -Drad process-classes
}

start_log() {
	echo "Rebuilding project and starting Docker containers to support rapid application development ..."
	mvn -Drad -Ddocker.showLogs process-classes
}

stop() {
	discoverArtifactId
	echo "Stopping Docker containers that supported rapid application development ..."
	docker container ls --filter name=${ARTIFACT_ID}-*
	echo "Stopping containers ..."
	docker container stop `docker container ls -q --filter name=${ARTIFACT_ID}-*`
	echo "Removing containers ..."
	docker container rm `docker container ls -aq --filter name=${ARTIFACT_ID}-*`
}

tail_logs() {
	discoverArtifactId
	docker container logs -f `docker container ls -q --filter name=${ARTIFACT_ID}-$1`
}

list() {
	discoverArtifactId
	docker container ls --filter name=${ARTIFACT_ID}-*
}

case "$1" in
	start)
		start
		;;
	start_log)
		start_log
		;;
	stop)
		stop
		;;
	restart)
		stop
		start
		;;
	rebuild)
		rebuild
		;;
	tail)
		tail_logs $2
		;;
	containers)
		list
		;;
	*)
		echo "Usage: ./rad.sh [ start | start_log | stop | restart | rebuild | tail {container} | containers ]"
		exit 1
esac

echo "Completed!"
+12 −0
Original line number Diff line number Diff line
package com.activiti.extension.conf;

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;

@Configuration
@ComponentScan(basePackages = {
        "com.inteligr8.activiti.mq"
})
public class MqSpringComponentScanner {

}
Loading