Compare commits

..

68 Commits

Author SHA1 Message Date
b75e655061 v3.0.3 pom 2024-09-24 09:39:24 -04:00
bf3bfa1091 Merge branch 'develop' into stable 2024-09-24 09:39:03 -04:00
77220a82ab v3.0.2 pom 2024-09-23 16:17:28 -04:00
548d9046fa Merge branch 'develop' into stable 2024-09-23 16:17:08 -04:00
ad8712fa54 v3.0.1 pom 2024-09-23 15:14:25 -04:00
e354c5be2f Merge branch 'develop' into stable 2024-09-23 15:12:16 -04:00
a146654ea9 Merge branch 'develop' into stable 2024-08-15 12:26:21 -04:00
44d87548bf v2.0.17 pom 2023-11-16 11:38:52 -05:00
775498670e Merge branch 'develop' into stable 2023-11-16 11:38:33 -05:00
9ba16c4b3b v2.0.16 pom 2023-11-16 09:25:24 -05:00
8937539a77 Merge branch 'develop' into stable 2023-11-16 09:21:57 -05:00
b359502c86 v2.0.15 pom 2023-11-15 20:27:38 -05:00
3e3cb195b3 Merge branch 'develop' into stable 2023-11-15 20:00:00 -05:00
6dff96f35f v2.0.14 pom 2023-11-15 16:30:13 -05:00
09d6f5b885 Merge branch 'develop' into stable 2023-11-15 16:25:43 -05:00
bf779a8d18 v2.0.13 pom 2023-11-13 17:35:23 -05:00
6e0e1eaa1c Merge branch 'develop' into stable 2023-11-13 17:35:08 -05:00
f4183d7897 v2.0.12 pom 2023-11-13 17:14:08 -05:00
cced7e76e4 Merge branch 'develop' into stable 2023-11-13 17:08:53 -05:00
550a01278a v2.0.11 pom 2023-06-01 10:25:17 -04:00
39abfcfc22 Merge branch 'develop' into stable 2023-06-01 10:24:56 -04:00
31b1823b76 v2.0.10 pom 2023-05-30 13:28:28 -04:00
20a9504301 Merge branch 'develop' into stable 2023-05-30 13:28:00 -04:00
b4b57b7594 v2.0.10 pom 2023-05-30 12:46:54 -04:00
6067a2e551 Merge branch 'develop' into stable 2023-05-30 12:46:36 -04:00
dbbf71b692 v2.0.9 pom 2023-05-30 10:53:36 -04:00
8dd46fd1f1 Merge branch 'develop' into stable 2023-05-30 10:53:11 -04:00
12530dd951 v2.0.8 pom 2023-05-28 11:56:05 -04:00
998d69f3b9 Merge branch 'develop' into stable 2023-05-28 11:54:12 -04:00
a358be79fb Merge branch 'develop' into stable 2023-05-27 12:31:08 -04:00
8d2b207886 v2.0.6 pom 2023-01-19 17:06:10 -05:00
cddf59689a Merge branch 'develop' into stable 2023-01-19 17:04:42 -05:00
fd80199050 v2.0.5 pom 2023-01-10 17:07:06 -05:00
e29b460ed4 Merge branch 'develop' into stable 2023-01-10 17:06:24 -05:00
a98005618a v2.0.4 pom 2022-12-02 12:18:38 -05:00
3dcdfe7415 Merge branch 'develop' into stable 2022-12-02 12:16:21 -05:00
1e17f5f638 Merge branch 'develop' into stable 2022-10-03 10:20:23 -04:00
7eba0541b4 Merge branch 'develop' into stable 2022-10-03 09:59:06 -04:00
a1ea5ddf17 v2.0.1 pom 2022-05-03 17:11:54 -04:00
6596bf16b1 Merge branch 'develop' into stable 2022-05-03 17:11:23 -04:00
df7c41628a Merge branch 'develop' into stable 2022-05-02 23:40:01 +01:00
96880f911f v1.2.3 pom 2022-04-18 15:50:07 -04:00
707053915f updated common-rest-api to support multipart 2022-04-18 15:48:12 -04:00
57efd8fe4e Merge branch 'develop' into stable 2022-04-18 15:46:53 -04:00
59adc9cea4 v1.2.2 pom 2022-04-07 23:49:57 -04:00
92b038f65b Merge branch 'develop' into stable 2022-04-07 23:48:42 -04:00
e917e3c5aa v1.2.1 pom 2022-03-28 15:04:40 -04:00
6853324d2d Merge branch 'develop' into stable 2022-03-28 14:48:35 -04:00
debfb8d998 updated commons-api to v1.1.2 2021-12-10 17:15:50 -05:00
2c77100246 Merge branch 'develop' into stable 2021-12-10 17:15:42 -05:00
3521365f86 v1.1.3 pom 2021-10-27 14:40:57 -04:00
bca4ea6db0 Merge branch 'develop' into stable 2021-10-27 14:40:30 -04:00
5d2fb8e47b v1.1.2 pom 2021-09-03 13:24:45 -04:00
9d4c8b5cbf Merge branch 'develop' into stable 2021-09-03 13:24:19 -04:00
e5cb8e7517 Merge branch 'develop' into stable 2021-09-01 14:41:53 -04:00
94f3de6386 v1.1.1 pom 2021-09-01 14:41:18 -04:00
a3ab8a5c08 Merge branch 'develop' into stable 2021-08-31 13:28:40 -04:00
78f006849f v1.0.3-v1 pom & common v1.0.1 2021-07-07 11:10:36 -04:00
3d0cb56680 Merge branch 'develop' into stable 2021-07-07 11:09:59 -04:00
6dbb73fa17 using common v1.0.0 2021-06-16 16:10:27 -04:00
7c0dfe919e v1.0.2-v1 pom 2021-06-16 16:03:17 -04:00
8c31f098d4 Merge branch 'develop' into stable 2021-06-16 16:02:42 -04:00
fe41dbef76 v1.0.1-v1 pom 2021-06-04 13:36:28 -04:00
4fe407de0f Merge branch 'develop' into stable 2021-06-04 13:36:05 -04:00
f7ad93797e Merge branch 'develop' into stable 2021-06-03 21:18:31 -04:00
aad2ed6406 Merge branch 'develop' into stable 2021-06-02 14:46:29 -04:00
6125c6b92e Merge branch 'develop' into stable 2021-05-18 21:49:20 -04:00
d81322dd33 v1.11-v2 pom 2021-05-17 15:51:37 -04:00
14 changed files with 493 additions and 143 deletions

10
pom.xml
View File

@ -5,7 +5,7 @@
<groupId>com.inteligr8.alfresco</groupId> <groupId>com.inteligr8.alfresco</groupId>
<artifactId>aps-public-rest-api</artifactId> <artifactId>aps-public-rest-api</artifactId>
<version>3.0-SNAPSHOT</version> <version>3.0.3</version>
<name>Alfresco Process Services ReST API for Java</name> <name>Alfresco Process Services ReST API for Java</name>
<description>An APS API library for building REST API clients that support both the CXF and Jersey frameworks</description> <description>An APS API library for building REST API clients that support both the CXF and Jersey frameworks</description>
@ -43,9 +43,9 @@
<maven.compiler.release>11</maven.compiler.release> <maven.compiler.release>11</maven.compiler.release>
<maven.compiler.debuglevel>lines,vars,source</maven.compiler.debuglevel> <maven.compiler.debuglevel>lines,vars,source</maven.compiler.debuglevel>
<jersey.version>3.1.10</jersey.version> <jersey.version>3.1.8</jersey.version>
<cxf.version>4.1.0</cxf.version> <cxf.version>4.0.2</cxf.version>
<jackson.version>2.18.1</jackson.version> <jackson.version>2.17.2</jackson.version>
</properties> </properties>
<dependencies> <dependencies>
@ -61,7 +61,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.fasterxml.jackson.module</groupId> <groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jakarta-xmlbind-annotations</artifactId> <artifactId>jackson-module-jaxb-annotations</artifactId>
<version>${jackson.version}</version> <version>${jackson.version}</version>
</dependency> </dependency>
<dependency> <dependency>

View File

@ -17,11 +17,6 @@ package com.inteligr8.activiti.api;
import java.io.File; import java.io.File;
import java.time.LocalDate; import java.time.LocalDate;
import com.inteligr8.activiti.model.Job;
import com.inteligr8.activiti.model.ProcessInstanceAction;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SortOrder;
import jakarta.ws.rs.Consumes; import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.DELETE; import jakarta.ws.rs.DELETE;
import jakarta.ws.rs.GET; import jakarta.ws.rs.GET;
@ -32,6 +27,12 @@ import jakarta.ws.rs.Produces;
import jakarta.ws.rs.QueryParam; import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.MediaType; import jakarta.ws.rs.core.MediaType;
import com.inteligr8.activiti.model.ProcessInstanceAction;
import com.inteligr8.activiti.model.ProcessInstanceAction.ActionValue;
import com.inteligr8.activiti.model.Job;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SortOrder;
public interface BaseJobsApi { public interface BaseJobsApi {
@GET @GET
@ -52,6 +53,17 @@ public interface BaseJobsApi {
@PathParam("jobId") String jobId, @PathParam("jobId") String jobId,
ProcessInstanceAction execute); ProcessInstanceAction execute);
default void executeJob(
String jobId,
ActionValue action) {
this.executeJob(jobId, new ProcessInstanceAction(action));
}
default void executeJob(
String jobId) {
this.executeJob(jobId, new ProcessInstanceAction(ActionValue.Execute));
}
@GET @GET
@Path("{jobId}/execution-stacktrace") @Path("{jobId}/execution-stacktrace")
@Produces({ MediaType.APPLICATION_OCTET_STREAM }) @Produces({ MediaType.APPLICATION_OCTET_STREAM })

View File

@ -16,13 +16,6 @@ package com.inteligr8.activiti.api;
import java.util.List; import java.util.List;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.inteligr8.activiti.model.Execution;
import com.inteligr8.activiti.model.ProcessInstanceAction;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SortOrder;
import com.inteligr8.activiti.model.Variable;
import jakarta.ws.rs.Consumes; import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.GET; import jakarta.ws.rs.GET;
import jakarta.ws.rs.POST; import jakarta.ws.rs.POST;
@ -33,6 +26,15 @@ import jakarta.ws.rs.Produces;
import jakarta.ws.rs.QueryParam; import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.MediaType; import jakarta.ws.rs.core.MediaType;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.inteligr8.activiti.model.ProcessInstanceAction;
import com.inteligr8.activiti.model.ProcessInstanceAction.ActionValue;
import com.inteligr8.activiti.model.Execution;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SignalEventAction;
import com.inteligr8.activiti.model.SortOrder;
import com.inteligr8.activiti.model.Variable;
@Path("/api/runtime/executions") @Path("/api/runtime/executions")
public interface ExecutionApi { public interface ExecutionApi {
@ -66,6 +68,35 @@ public interface ExecutionApi {
List<String> getActiveActivities( List<String> getActiveActivities(
@PathParam("executionId") String executionId); @PathParam("executionId") String executionId);
default Execution signal(
String processInstanceId,
List<Variable> variables) {
ProcessInstanceAction action = new ProcessInstanceAction(ActionValue.Signal);
if (variables != null && !variables.isEmpty())
action.setVariables(variables);
return this.execute(processInstanceId, action);
}
default Execution signalReceived(
String processInstanceId,
String signal,
List<Variable> variables) {
ProcessInstanceAction action = new SignalEventAction(ActionValue.SignalReceived, signal);
if (variables != null && !variables.isEmpty())
action.setVariables(variables);
return this.execute(processInstanceId, action);
}
default Execution messageReceived(
String processInstanceId,
String message,
List<Variable> variables) {
ProcessInstanceAction action = new SignalEventAction(ActionValue.MessageReceived, message);
if (variables != null && !variables.isEmpty())
action.setVariables(variables);
return this.execute(processInstanceId, action);
}
@PUT @PUT
@Path("{executionId}") @Path("{executionId}")
@Consumes({ MediaType.APPLICATION_JSON }) @Consumes({ MediaType.APPLICATION_JSON })
@ -74,39 +105,61 @@ public interface ExecutionApi {
@PathParam("executionId") String executionId, @PathParam("executionId") String executionId,
ProcessInstanceAction action); ProcessInstanceAction action);
@GET default ResultList<Execution> getWithoutTenant(
@Produces({ MediaType.APPLICATION_JSON }) String executionId,
ResultList<Execution> getByTenant( String activityId,
@QueryParam("id") String executionId, String processDefinitionKey,
@QueryParam("activityId") String activityId, String processDefinitionId,
@QueryParam("processDefinitionKey") String processDefinitionKey, String processInstanceId,
@QueryParam("processDefinitionId") String processDefinitionId, String messageEventSubscriptionName,
@QueryParam("processInstanceId") String processInstanceId, String signalEventSubscriptionName,
@QueryParam("messageEventSubscriptionName") String messageEventSubscriptionName, String parentId,
@QueryParam("signalEventSubscriptionName") String signalEventSubscriptionName, Sort sort,
@QueryParam("parentId") String parentId, SortOrder sortOrder,
@QueryParam("tenantId") String tenantId, Integer pageStart,
@QueryParam("sort") Sort sort, Integer pageSize) {
@QueryParam("order") SortOrder sortOrder, return this.getByAny(executionId, activityId, processDefinitionKey, processDefinitionId, processInstanceId,
@QueryParam("start") Integer pageStart, messageEventSubscriptionName, signalEventSubscriptionName, parentId, null, null, true,
@QueryParam("size") Integer pageSize); sort, sortOrder, pageStart, pageSize);
}
@GET default ResultList<Execution> getByTenant(
@Produces({ MediaType.APPLICATION_JSON }) String executionId,
ResultList<Execution> getByTenants( String activityId,
@QueryParam("id") String executionId, String processDefinitionKey,
@QueryParam("activityId") String activityId, String processDefinitionId,
@QueryParam("processDefinitionKey") String processDefinitionKey, String processInstanceId,
@QueryParam("processDefinitionId") String processDefinitionId, String messageEventSubscriptionName,
@QueryParam("processInstanceId") String processInstanceId, String signalEventSubscriptionName,
@QueryParam("messageEventSubscriptionName") String messageEventSubscriptionName, String parentId,
@QueryParam("signalEventSubscriptionName") String signalEventSubscriptionName, String tenantId,
@QueryParam("parentId") String parentId, Sort sort,
@QueryParam("tenantIdLike") String tenantIdLike, SortOrder sortOrder,
@QueryParam("sort") Sort sort, Integer pageStart,
@QueryParam("order") SortOrder sortOrder, Integer pageSize) {
@QueryParam("start") Integer pageStart, return this.getByAny(executionId, activityId, processDefinitionKey, processDefinitionId, processInstanceId,
@QueryParam("size") Integer pageSize); messageEventSubscriptionName, signalEventSubscriptionName, parentId, tenantId, null, false,
sort, sortOrder, pageStart, pageSize);
}
default ResultList<Execution> getByTenants(
String executionId,
String activityId,
String processDefinitionKey,
String processDefinitionId,
String processInstanceId,
String messageEventSubscriptionName,
String signalEventSubscriptionName,
String parentId,
String tenantIdLike,
Sort sort,
SortOrder sortOrder,
Integer pageStart,
Integer pageSize) {
return this.getByAny(executionId, activityId, processDefinitionKey, processDefinitionId, processInstanceId,
messageEventSubscriptionName, signalEventSubscriptionName, parentId, null, tenantIdLike, false,
sort, sortOrder, pageStart, pageSize);
}
@GET @GET
@Produces({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON })
@ -154,6 +207,12 @@ public interface ExecutionApi {
void updateVariables( void updateVariables(
@PathParam("executionId") String executionId, @PathParam("executionId") String executionId,
List<Variable> variables); List<Variable> variables);
default void updateVariable(
String executionId,
Variable variable) {
this.updateVariable(executionId, variable.getName(), variable);
}
@PUT @PUT
@Path("{executionId}/variables/{variableName}") @Path("{executionId}/variables/{variableName}")

View File

@ -19,6 +19,7 @@ import com.inteligr8.activiti.model.ProcessDefinition;
import com.inteligr8.activiti.model.ProcessDefinitionAction; import com.inteligr8.activiti.model.ProcessDefinitionAction;
import com.inteligr8.activiti.model.ResultList; import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SortOrder; import com.inteligr8.activiti.model.SortOrder;
import com.inteligr8.activiti.model.ProcessDefinitionAction.ActionValue;
import jakarta.ws.rs.Consumes; import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.GET; import jakarta.ws.rs.GET;
@ -38,6 +39,16 @@ public interface ProcessDefinitionApi {
ProcessDefinition get( ProcessDefinition get(
@PathParam("processDefinitionId") String processDefinitionId); @PathParam("processDefinitionId") String processDefinitionId);
default void activate(
String processDefinitionId) {
this.act(processDefinitionId, new ProcessDefinitionAction(ActionValue.Activate));
}
default void suspend(
String processDefinitionId) {
this.act(processDefinitionId, new ProcessDefinitionAction(ActionValue.Suspend));
}
@PUT @PUT
@Path("{processDefinitionId}") @Path("{processDefinitionId}")
@Consumes({ MediaType.APPLICATION_JSON }) @Consumes({ MediaType.APPLICATION_JSON })
@ -45,6 +56,58 @@ public interface ProcessDefinitionApi {
@PathParam("processDefinitionId") String processDefinitionId, @PathParam("processDefinitionId") String processDefinitionId,
ProcessDefinitionAction action); ProcessDefinitionAction action);
default ResultList<ProcessDefinition> getByTenant(
String category,
String categoryLike,
String categoryNotEquals,
String key,
String keyLike,
String name,
String nameLike,
String resourceName,
String resourceNameLike,
String version,
Boolean suspended,
boolean latest,
String deploymentId,
String startableByUser,
String tenantId,
Sort sort,
SortOrder sortOrder,
Integer pageStart,
Integer pageSize) {
return this.getByAny(category, categoryLike, categoryNotEquals, key, keyLike,
name, nameLike, resourceName, resourceNameLike, version,
suspended, latest, deploymentId, startableByUser,
tenantId, null, sort, sortOrder, pageStart, pageSize);
}
default ResultList<ProcessDefinition> getByTenants(
String category,
String categoryLike,
String categoryNotEquals,
String key,
String keyLike,
String name,
String nameLike,
String resourceName,
String resourceNameLike,
String version,
Boolean suspended,
boolean latest,
String deploymentId,
String startableByUser,
String tenantIdLike,
Sort sort,
SortOrder sortOrder,
Integer pageStart,
Integer pageSize) {
return this.getByAny(category, categoryLike, categoryNotEquals, key, keyLike,
name, nameLike, resourceName, resourceNameLike, version,
suspended, latest, deploymentId, startableByUser,
null, tenantIdLike, sort, sortOrder, pageStart, pageSize);
}
@GET @GET
@Produces({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON })
public ResultList<ProcessDefinition> getByAny( public ResultList<ProcessDefinition> getByAny(

View File

@ -17,13 +17,6 @@ package com.inteligr8.activiti.api;
import java.io.File; import java.io.File;
import java.util.List; import java.util.List;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.inteligr8.activiti.model.ProcessInstanceAction;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SortOrder;
import com.inteligr8.activiti.model.Variable;
import com.inteligr8.alfresco.activiti.model.ProcessInstance;
import jakarta.ws.rs.Consumes; import jakarta.ws.rs.Consumes;
import jakarta.ws.rs.DELETE; import jakarta.ws.rs.DELETE;
import jakarta.ws.rs.GET; import jakarta.ws.rs.GET;
@ -35,6 +28,14 @@ import jakarta.ws.rs.Produces;
import jakarta.ws.rs.QueryParam; import jakarta.ws.rs.QueryParam;
import jakarta.ws.rs.core.MediaType; import jakarta.ws.rs.core.MediaType;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.inteligr8.activiti.model.ProcessInstanceAction;
import com.inteligr8.activiti.model.ProcessInstanceAction.ActionValue;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.activiti.model.SortOrder;
import com.inteligr8.activiti.model.Variable;
import com.inteligr8.alfresco.activiti.model.ProcessInstance;
@Path("/api/runtime/process-instances") @Path("/api/runtime/process-instances")
public interface ProcessInstanceApi { public interface ProcessInstanceApi {
@ -60,6 +61,16 @@ public interface ProcessInstanceApi {
void delete( void delete(
@PathParam("processInstanceId") String processInstanceId); @PathParam("processInstanceId") String processInstanceId);
default void activate(
String processInstanceId) {
this.act(processInstanceId, new ProcessInstanceAction(ActionValue.Activate));
}
default void suspend(
String processInstanceId) {
this.act(processInstanceId, new ProcessInstanceAction(ActionValue.Suspend));
}
@PUT @PUT
@Path("{processInstanceId}") @Path("{processInstanceId}")
@Consumes({ MediaType.APPLICATION_JSON }) @Consumes({ MediaType.APPLICATION_JSON })
@ -67,43 +78,70 @@ public interface ProcessInstanceApi {
@PathParam("processInstanceId") String processInstanceId, @PathParam("processInstanceId") String processInstanceId,
ProcessInstanceAction action); ProcessInstanceAction action);
@GET default ResultList<ProcessInstance> getWithoutTenant(
@Produces({ MediaType.APPLICATION_JSON }) String processInstanceId,
public ResultList<ProcessInstance> getByTenant( String processDefinitionKey,
@QueryParam("id") String processInstanceId, String processDefinitionId,
@QueryParam("processDefinitionKey") String processDefinitionKey, String businessKey,
@QueryParam("processDefinitionId") String processDefinitionId, String involvedUser,
@QueryParam("businessKey") String businessKey, Boolean suspended,
@QueryParam("involvedUser") String involvedUser, String superProcessInstanceId,
@QueryParam("suspended") Boolean suspended, String subProcessInstanceId,
@QueryParam("superProcessInstanceId") String superProcessInstanceId, Boolean excludeSubprocesses,
@QueryParam("subProcessInstanceId") String subProcessInstanceId, Boolean includeProcessVariables,
@QueryParam("excludeSubprocesses") Boolean excludeSubprocesses, Sort sort,
@QueryParam("includeProcessVariables") Boolean includeProcessVariables, SortOrder sortOrder,
@QueryParam("tenantId") String tenantId, Integer pageStart,
@QueryParam("sort") Sort sort, Integer pageSize) {
@QueryParam("order") SortOrder sortOrder, return this.getByAny(processInstanceId, processDefinitionKey, processDefinitionId,
@QueryParam("start") Integer pageStart, businessKey, involvedUser, suspended, superProcessInstanceId, subProcessInstanceId,
@QueryParam("size") Integer pageSize); excludeSubprocesses, includeProcessVariables, null, null, true,
sort, sortOrder, pageStart, pageSize);
}
@GET default ResultList<ProcessInstance> getByTenant(
@Produces({ MediaType.APPLICATION_JSON }) String processInstanceId,
public ResultList<ProcessInstance> getByTenants( String processDefinitionKey,
@QueryParam("id") String processInstanceId, String processDefinitionId,
@QueryParam("processDefinitionKey") String processDefinitionKey, String businessKey,
@QueryParam("processDefinitionId") String processDefinitionId, String involvedUser,
@QueryParam("businessKey") String businessKey, Boolean suspended,
@QueryParam("involvedUser") String involvedUser, String superProcessInstanceId,
@QueryParam("suspended") Boolean suspended, String subProcessInstanceId,
@QueryParam("superProcessInstanceId") String superProcessInstanceId, Boolean excludeSubprocesses,
@QueryParam("subProcessInstanceId") String subProcessInstanceId, Boolean includeProcessVariables,
@QueryParam("excludeSubprocesses") Boolean excludeSubprocesses, String tenantId,
@QueryParam("includeProcessVariables") Boolean includeProcessVariables, Sort sort,
@QueryParam("tenantIdLike") String tenantIdLike, SortOrder sortOrder,
@QueryParam("sort") Sort sort, Integer pageStart,
@QueryParam("order") SortOrder sortOrder, Integer pageSize) {
@QueryParam("start") Integer pageStart, return this.getByAny(processInstanceId, processDefinitionKey, processDefinitionId,
@QueryParam("size") Integer pageSize); businessKey, involvedUser, suspended, superProcessInstanceId, subProcessInstanceId,
excludeSubprocesses, includeProcessVariables, tenantId, null, false,
sort, sortOrder, pageStart, pageSize);
}
default ResultList<ProcessInstance> getByTenants(
String processInstanceId,
String processDefinitionKey,
String processDefinitionId,
String businessKey,
String involvedUser,
Boolean suspended,
String superProcessInstanceId,
String subProcessInstanceId,
Boolean excludeSubprocesses,
Boolean includeProcessVariables,
String tenantIdLike,
Sort sort,
SortOrder sortOrder,
Integer pageStart,
Integer pageSize) {
return this.getByAny(processInstanceId, processDefinitionKey, processDefinitionId,
businessKey, involvedUser, suspended, superProcessInstanceId, subProcessInstanceId,
excludeSubprocesses, includeProcessVariables, null, tenantIdLike, false,
sort, sortOrder, pageStart, pageSize);
}
@GET @GET
@Produces({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON })
@ -158,6 +196,12 @@ public interface ProcessInstanceApi {
void updateVariables( void updateVariables(
@PathParam("processInstanceId") String processInstanceId, @PathParam("processInstanceId") String processInstanceId,
List<Variable> variables); List<Variable> variables);
default void updateVariable(
String processInstanceId,
Variable variable) {
this.updateVariable(processInstanceId, variable.getName(), variable);
}
@PUT @PUT
@Path("{processInstanceId}/variables/{variableName}") @Path("{processInstanceId}/variables/{variableName}")

View File

@ -1,12 +0,0 @@
package com.inteligr8.alfresco.activiti;
/**
* This interface appends CXF implementation specific methods to the JAX-RS API
* of the APS Protected ReST API. This is due to a lack of multi-part in the
* JAX-RS specification.
*
* @author brian@inteligr8.com
*/
public interface ApsProtectedRestCxfApi extends ApsProtectedRestApi, ApsPublicRestCxfApi {
}

View File

@ -1,12 +0,0 @@
package com.inteligr8.alfresco.activiti;
/**
* This interface appends Jersey implementation specific methods to the JAX-RS
* API of the APS Protected ReST API. This is due to a lack of multi-part in
* the JAX-RS specification.
*
* @author brian@inteligr8.com
*/
public interface ApsProtectedRestJerseyApi extends ApsProtectedRestApi, ApsPublicRestJerseyApi {
}

View File

@ -51,7 +51,7 @@ public interface AppDeploymentsApi {
@Produces({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON })
ResultListDataRepresentation<AppDeployment> query( ResultListDataRepresentation<AppDeployment> query(
@QueryParam("nameLike") String nameLike, @QueryParam("nameLike") String nameLike,
@QueryParam("tenantId") Long tenantId, @QueryParam("tenantId") Integer tenantId,
@QueryParam("latest") Boolean latest, @QueryParam("latest") Boolean latest,
@QueryParam("start") Integer start, @QueryParam("start") Integer start,
@QueryParam("sort") String sort, @QueryParam("sort") String sort,

View File

@ -29,9 +29,7 @@ public interface ModelsApi {
enum ModelType { enum ModelType {
Process(0), Process(0),
Form(2), Form(2),
App(3), App(3);
DecisionTable(4),
DataModel(5);
private int id; private int id;
private ModelType(int id) { private ModelType(int id) {

View File

@ -29,7 +29,7 @@ public interface ProcessDefinitionsApi {
@Produces({ "application/json" }) @Produces({ "application/json" })
ResultListDataRepresentation<ProcessDefinition> get( ResultListDataRepresentation<ProcessDefinition> get(
@QueryParam("latest") Boolean latest, @QueryParam("latest") Boolean latest,
@QueryParam("appDefinitionId") Long appDefinitionId, @QueryParam("appDefinitionId") Integer appDefinitionId,
@QueryParam("deploymentId") String deploymentId); @QueryParam("deploymentId") String deploymentId);
} }

View File

@ -138,6 +138,11 @@ public interface TemplatesApi {
@QueryParam("sort") TemplateSort sort, @QueryParam("sort") TemplateSort sort,
@QueryParam("tenantId") Long tenantId); @QueryParam("tenantId") Long tenantId);
default Response getDocumentTemplate(
DocumentTemplateLight template) {
return this.getDocumentTemplate(template.getId(), System.currentTimeMillis());
}
@GET @GET
@Path("document-templates/{templateId}") @Path("document-templates/{templateId}")
@Produces({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON })
@ -153,7 +158,7 @@ public interface TemplatesApi {
}) })
public Response getDocumentTemplate( public Response getDocumentTemplate(
@PathParam("templateId") long id, @PathParam("templateId") long id,
@QueryParam("version") Long version); @QueryParam("version") long version);
@DELETE @DELETE
@Path("document-templates/{templateId}") @Path("document-templates/{templateId}")

View File

@ -40,13 +40,13 @@ public class AppDefinition {
@JsonProperty("icon") @JsonProperty("icon")
private String icon; private String icon;
@JsonProperty("id") @JsonProperty("id")
private Long id; private Integer id;
@JsonProperty("modelId") @JsonProperty("modelId")
private Long modelId; private Integer modelId;
@JsonProperty("name") @JsonProperty("name")
private String name; private String name;
@JsonProperty("tenantId") @JsonProperty("tenantId")
private Long tenantId; private Integer tenantId;
@JsonProperty("theme") @JsonProperty("theme")
private String theme; private String theme;
@JsonIgnore @JsonIgnore
@ -113,31 +113,31 @@ public class AppDefinition {
} }
@JsonProperty("id") @JsonProperty("id")
public Long getId() { public Integer getId() {
return id; return id;
} }
@JsonProperty("id") @JsonProperty("id")
public void setId(Long id) { public void setId(Integer id) {
this.id = id; this.id = id;
} }
public AppDefinition withId(Long id) { public AppDefinition withId(Integer id) {
this.id = id; this.id = id;
return this; return this;
} }
@JsonProperty("modelId") @JsonProperty("modelId")
public Long getModelId() { public Integer getModelId() {
return modelId; return modelId;
} }
@JsonProperty("modelId") @JsonProperty("modelId")
public void setModelId(Long modelId) { public void setModelId(Integer modelId) {
this.modelId = modelId; this.modelId = modelId;
} }
public AppDefinition withModelId(Long modelId) { public AppDefinition withModelId(Integer modelId) {
this.modelId = modelId; this.modelId = modelId;
return this; return this;
} }
@ -158,16 +158,16 @@ public class AppDefinition {
} }
@JsonProperty("tenantId") @JsonProperty("tenantId")
public Long getTenantId() { public Integer getTenantId() {
return tenantId; return tenantId;
} }
@JsonProperty("tenantId") @JsonProperty("tenantId")
public void setTenantId(Long tenantId) { public void setTenantId(Integer tenantId) {
this.tenantId = tenantId; this.tenantId = tenantId;
} }
public AppDefinition withTenantId(Long tenantId) { public AppDefinition withTenantId(Integer tenantId) {
this.tenantId = tenantId; this.tenantId = tenantId;
return this; return this;
} }

View File

@ -1,12 +1,205 @@
package com.inteligr8.alfresco.activiti.model; package com.inteligr8.alfresco.activiti.model;
import java.util.HashMap;
import java.util.Map;
import com.fasterxml.jackson.annotation.JsonAnyGetter;
import com.fasterxml.jackson.annotation.JsonAnySetter;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
/** /**
* AppDefinitionRepresentation * AppDefinitionRepresentation
* <p> * <p>
* *
* *
*/ */
public class AppDefinitionRepresentation extends AppDefinition { @JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"defaultAppId",
"deploymentId",
"description",
"icon",
"id",
"modelId",
"name",
"tenantId",
"theme"
})
public class AppDefinitionRepresentation {
@JsonProperty("defaultAppId")
private String defaultAppId;
@JsonProperty("deploymentId")
private String deploymentId;
@JsonProperty("description")
private String description;
@JsonProperty("icon")
private String icon;
@JsonProperty("id")
private Integer id;
@JsonProperty("modelId")
private Integer modelId;
@JsonProperty("name")
private String name;
@JsonProperty("tenantId")
private Integer tenantId;
@JsonProperty("theme")
private String theme;
@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<String, Object>();
@JsonProperty("defaultAppId")
public String getDefaultAppId() {
return defaultAppId;
}
@JsonProperty("defaultAppId")
public void setDefaultAppId(String defaultAppId) {
this.defaultAppId = defaultAppId;
}
public AppDefinitionRepresentation withDefaultAppId(String defaultAppId) {
this.defaultAppId = defaultAppId;
return this;
}
@JsonProperty("deploymentId")
public String getDeploymentId() {
return deploymentId;
}
@JsonProperty("deploymentId")
public void setDeploymentId(String deploymentId) {
this.deploymentId = deploymentId;
}
public AppDefinitionRepresentation withDeploymentId(String deploymentId) {
this.deploymentId = deploymentId;
return this;
}
@JsonProperty("description")
public String getDescription() {
return description;
}
@JsonProperty("description")
public void setDescription(String description) {
this.description = description;
}
public AppDefinitionRepresentation withDescription(String description) {
this.description = description;
return this;
}
@JsonProperty("icon")
public String getIcon() {
return icon;
}
@JsonProperty("icon")
public void setIcon(String icon) {
this.icon = icon;
}
public AppDefinitionRepresentation withIcon(String icon) {
this.icon = icon;
return this;
}
@JsonProperty("id")
public Integer getId() {
return id;
}
@JsonProperty("id")
public void setId(Integer id) {
this.id = id;
}
public AppDefinitionRepresentation withId(Integer id) {
this.id = id;
return this;
}
@JsonProperty("modelId")
public Integer getModelId() {
return modelId;
}
@JsonProperty("modelId")
public void setModelId(Integer modelId) {
this.modelId = modelId;
}
public AppDefinitionRepresentation withModelId(Integer modelId) {
this.modelId = modelId;
return this;
}
@JsonProperty("name")
public String getName() {
return name;
}
@JsonProperty("name")
public void setName(String name) {
this.name = name;
}
public AppDefinitionRepresentation withName(String name) {
this.name = name;
return this;
}
@JsonProperty("tenantId")
public Integer getTenantId() {
return tenantId;
}
@JsonProperty("tenantId")
public void setTenantId(Integer tenantId) {
this.tenantId = tenantId;
}
public AppDefinitionRepresentation withTenantId(Integer tenantId) {
this.tenantId = tenantId;
return this;
}
@JsonProperty("theme")
public String getTheme() {
return theme;
}
@JsonProperty("theme")
public void setTheme(String theme) {
this.theme = theme;
}
public AppDefinitionRepresentation withTheme(String theme) {
this.theme = theme;
return this;
}
@JsonAnyGetter
public Map<String, Object> getAdditionalProperties() {
return this.additionalProperties;
}
@JsonAnySetter
public void setAdditionalProperty(String name, Object value) {
this.additionalProperties.put(name, value);
}
public AppDefinitionRepresentation withAdditionalProperty(String name, Object value) {
this.additionalProperties.put(name, value);
return this;
}
} }

View File

@ -91,7 +91,7 @@ public class Task extends Datum {
@JsonProperty("parentTaskName") @JsonProperty("parentTaskName")
private String parentTaskName; private String parentTaskName;
@JsonProperty("priority") @JsonProperty("priority")
private Integer priority; private Long priority;
@JsonProperty("processDefinitionCategory") @JsonProperty("processDefinitionCategory")
private String processDefinitionCategory; private String processDefinitionCategory;
@JsonProperty("processDefinitionDeploymentId") @JsonProperty("processDefinitionDeploymentId")
@ -105,7 +105,7 @@ public class Task extends Datum {
@JsonProperty("processDefinitionName") @JsonProperty("processDefinitionName")
private String processDefinitionName; private String processDefinitionName;
@JsonProperty("processDefinitionVersion") @JsonProperty("processDefinitionVersion")
private Integer processDefinitionVersion; private Long processDefinitionVersion;
@JsonProperty("processInstanceId") @JsonProperty("processInstanceId")
private String processInstanceId; private String processInstanceId;
@JsonProperty("processInstanceName") @JsonProperty("processInstanceName")
@ -370,15 +370,15 @@ public class Task extends Datum {
return this; return this;
} }
public Integer getPriority() { public Long getPriority() {
return priority; return priority;
} }
public void setPriority(Integer priority) { public void setPriority(Long priority) {
this.priority = priority; this.priority = priority;
} }
public Task withPriority(Integer priority) { public Task withPriority(Long priority) {
this.priority = priority; this.priority = priority;
return this; return this;
} }
@ -461,15 +461,15 @@ public class Task extends Datum {
return this; return this;
} }
public Integer getProcessDefinitionVersion() { public Long getProcessDefinitionVersion() {
return processDefinitionVersion; return processDefinitionVersion;
} }
public void setProcessDefinitionVersion(Integer processDefinitionVersion) { public void setProcessDefinitionVersion(Long processDefinitionVersion) {
this.processDefinitionVersion = processDefinitionVersion; this.processDefinitionVersion = processDefinitionVersion;
} }
public Task withProcessDefinitionVersion(Integer processDefinitionVersion) { public Task withProcessDefinitionVersion(Long processDefinitionVersion) {
this.processDefinitionVersion = processDefinitionVersion; this.processDefinitionVersion = processDefinitionVersion;
return this; return this;
} }