added more endpoints; community endpoints

This commit is contained in:
Brian Long 2023-05-27 12:30:26 -04:00
parent a3cef80cb3
commit dc69d34202
32 changed files with 2729 additions and 78 deletions

View File

@ -0,0 +1,33 @@
/*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at your
* option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <https://www.gnu.org/licenses/>.
*/
package com.inteligr8.activiti;
import com.inteligr8.activiti.api.ManagementApi;
/**
* This interface consolidates the JAX-RS APIs available in the open-source
* Activiti Public ReST API.
*
* @author brian@inteligr8.com
*/
public interface ActivitiPublicRestApi {
<T> T getApi(Class<T> apiClass);
default ManagementApi getManagementApi() {
return this.getApi(ManagementApi.class);
}
}

View File

@ -0,0 +1,173 @@
/*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at your
* option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <https://www.gnu.org/licenses/>.
*/
package com.inteligr8.activiti.api;
import java.io.File;
import java.time.LocalDate;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.inteligr8.activiti.model.Engine;
import com.inteligr8.activiti.model.EngineProperties;
import com.inteligr8.activiti.model.ExecuteAction;
import com.inteligr8.activiti.model.ExecuteAction.Action;
import com.inteligr8.activiti.model.Job;
import com.inteligr8.activiti.model.ResultList;
@Path("/api/management")
public interface ManagementApi {
public enum JobType {
@JsonProperty("jobs")
Job,
@JsonProperty("deadletter-jobs")
DeadletterJob
}
@GET
@Path("engine")
@Produces({ "application/json" })
public Engine getEngine();
@GET
@Path("properties")
@Produces({ "application/json" })
public EngineProperties getEngineProperties();
@GET
@Path("{jobType}/{jobId}")
@Produces({ "application/json" })
public Job getJob(
@PathParam("jobType") JobType jobType,
@PathParam("jobId") String jobId);
@DELETE
@Path("{jobType}/{jobId}")
public void deleteJob(
@PathParam("jobType") JobType jobType,
@PathParam("jobId") String jobId);
@POST
@Path("{jobType}/{jobId}")
@Consumes({ "application/json" })
public void executeJob(
@PathParam("jobType") JobType jobType,
@PathParam("jobId") String jobId,
ExecuteAction execute);
default void executeJob(
JobType jobType,
String jobId,
Action action) {
this.executeJob(jobType, jobId, new ExecuteAction(action));
}
default void executeJob(
JobType jobType,
String jobId) {
this.executeJob(jobType, jobId, new ExecuteAction(Action.Execute));
}
@GET
@Path("{jobType}/{jobId}/execution-stacktrace")
@Produces({ "application/octet-stream" })
public File getJobStacktrace(
@PathParam("jobType") JobType jobType,
@PathParam("jobId") String jobId);
@GET
@Path("{jobType}")
@Produces({ "application/json" })
public ResultList<Job> queryJobs(
@PathParam("jobType") JobType jobType,
@QueryParam("id") String jobId,
@QueryParam("processInstanceId") String processInstanceId,
@QueryParam("executionId") String executionId,
@QueryParam("processDefinitionId") String processDefinitionId,
@QueryParam("withRetriesLeft") Boolean withRetriesLeft,
@QueryParam("executable") Boolean executable,
@QueryParam("timersOnly") Boolean timersOnly,
@QueryParam("messagesOnly") Boolean messagesOnly,
@QueryParam("withException") Boolean withException,
@QueryParam("dueBefore") LocalDate dueBefore,
@QueryParam("dueAfter") LocalDate dueAfter,
@QueryParam("exceptionMessage") String exceptionMessage,
@QueryParam("withoutTenantId") Boolean withoutTenatId,
@QueryParam("sort") String sort);
@GET
@Path("{jobType}")
@Produces({ "application/json" })
public ResultList<Job> queryJobs(
@PathParam("jobType") JobType jobType,
@QueryParam("id") String jobId,
@QueryParam("processInstanceId") String processInstanceId,
@QueryParam("executionId") String executionId,
@QueryParam("processDefinitionId") String processDefinitionId,
@QueryParam("withRetriesLeft") Boolean withRetriesLeft,
@QueryParam("executable") Boolean executable,
@QueryParam("timersOnly") Boolean timersOnly,
@QueryParam("messagesOnly") Boolean messagesOnly,
@QueryParam("withException") Boolean withException,
@QueryParam("dueBefore") LocalDate dueBefore,
@QueryParam("dueAfter") LocalDate dueAfter,
@QueryParam("exceptionMessage") String exceptionMessage,
@QueryParam("tenantId") String tenantId,
@QueryParam("tenantIdLike") String tenantIdLike,
@QueryParam("sort") String sort);
default ResultList<Job> queryTimerJobs(
JobType jobType,
@QueryParam("id") String jobId,
@QueryParam("processInstanceId") String processInstanceId,
@QueryParam("executionId") String executionId,
@QueryParam("processDefinitionId") String processDefinitionId,
@QueryParam("withRetriesLeft") Boolean withRetriesLeft,
@QueryParam("executable") Boolean executable,
@QueryParam("withException") Boolean withException,
@QueryParam("dueBefore") LocalDate dueBefore,
@QueryParam("dueAfter") LocalDate dueAfter,
@QueryParam("exceptionMessage") String exceptionMessage,
@QueryParam("withoutTenantId") Boolean withoutTenantId,
@QueryParam("sort") String sort) {
return this.queryJobs(jobType, jobId, processInstanceId, executionId, processDefinitionId, withRetriesLeft, executable, true, false, withException, dueBefore, dueAfter, exceptionMessage, withoutTenantId, sort);
}
default ResultList<Job> queryMessagesJobs(
JobType jobType,
@QueryParam("id") String jobId,
@QueryParam("processInstanceId") String processInstanceId,
@QueryParam("executionId") String executionId,
@QueryParam("processDefinitionId") String processDefinitionId,
@QueryParam("withRetriesLeft") Boolean withRetriesLeft,
@QueryParam("executable") Boolean executable,
@QueryParam("withException") Boolean withException,
@QueryParam("dueBefore") LocalDate dueBefore,
@QueryParam("dueAfter") LocalDate dueAfter,
@QueryParam("exceptionMessage") String exceptionMessage,
@QueryParam("withoutTenantId") Boolean withoutTenantId,
@QueryParam("sort") String sort) {
return this.queryJobs(jobType, jobId, processInstanceId, executionId, processDefinitionId, withRetriesLeft, executable, false, true, withException, dueBefore, dueAfter, exceptionMessage, withoutTenantId, sort);
}
}

View File

@ -1,18 +1,15 @@
package com.inteligr8.alfresco.activiti.model;
package com.inteligr8.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.JsonPropertyOrder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
})
public class Datum {
@JsonIgnore

View File

@ -0,0 +1,76 @@
package com.inteligr8.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Engine {
@JsonProperty("name")
private String name;
@JsonProperty("version")
private String version;
@JsonProperty("resourceUrl")
private String resourceUrl;
@JsonProperty("exception")
private String exception;
/**
* No args constructor for use in serialization
*/
public Engine() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Engine withName(String name) {
this.name = name;
return this;
}
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
public Engine withVersion(String version) {
this.version = version;
return this;
}
public String getResourceUrl() {
return resourceUrl;
}
public void setResourceUrl(String resourceUrl) {
this.resourceUrl = resourceUrl;
}
public Engine withResourceUrl(String resourceUrl) {
this.resourceUrl = resourceUrl;
return this;
}
public String getException() {
return exception;
}
public void setException(String exception) {
this.exception = exception;
}
public Engine withException(String exception) {
this.exception = exception;
return this;
}
}

View File

@ -0,0 +1,61 @@
package com.inteligr8.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class EngineProperties {
@JsonProperty("next.dbid")
private String nextDbid;
@JsonProperty("schema.history")
private String schemaHistory;
@JsonProperty("schema.version")
private String schemaVersion;
/**
* No args constructor for use in serialization
*/
public EngineProperties() {
}
public String getNextDbid() {
return nextDbid;
}
public void setNextDbid(String nextDbid) {
this.nextDbid = nextDbid;
}
public EngineProperties withNextDbid(String nextDbid) {
this.nextDbid = nextDbid;
return this;
}
public String getSchemaHistory() {
return schemaHistory;
}
public void setSchemaHistory(String schemaHistory) {
this.schemaHistory = schemaHistory;
}
public EngineProperties withSchemaHistory(String schemaHistory) {
this.schemaHistory = schemaHistory;
return this;
}
public String getSchemaVersion() {
return schemaVersion;
}
public void setSchemaVersion(String schemaVersion) {
this.schemaVersion = schemaVersion;
}
public EngineProperties withSchemaVersion(String schemaVersion) {
this.schemaVersion = schemaVersion;
return this;
}
}

View File

@ -0,0 +1,40 @@
package com.inteligr8.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ExecuteAction {
public enum Action {
@JsonProperty("execute")
Execute
}
@JsonProperty("action")
private Action action;
/**
* No args constructor for use in serialization
*/
public ExecuteAction() {
}
public ExecuteAction(Action action) {
this.action = action;
}
public Action getAction() {
return action;
}
public void setAction(Action action) {
this.action = action;
}
public ExecuteAction withAction(Action action) {
this.action = action;
return this;
}
}

View File

@ -0,0 +1,189 @@
package com.inteligr8.activiti.model;
import java.time.OffsetDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class Job extends Datum {
@JsonProperty("id")
private String id;
@JsonProperty("processInstanceId")
private String processInstanceId;
@JsonProperty("processInstanceUrl")
private String processInstanceUrl;
@JsonProperty("processDefinitionId")
private String processDefinitionId;
@JsonProperty("processDefinitionUrl")
private String processDefinitionUrl;
@JsonProperty("executionId")
private String executionId;
@JsonProperty("executionUrl")
private String executionUrl;
@JsonProperty("retries")
private int retries;
@JsonProperty("exceptionMessage")
private String exceptionMessage;
@JsonProperty("dueDate")
private OffsetDateTime dueDate;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
@JsonProperty("tenantId")
private String tenantId;
/**
* No args constructor for use in serialization
*/
public Job() {
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Job withId(String id) {
this.id = id;
return this;
}
public String getProcessInstanceId() {
return processInstanceId;
}
public void setProcessInstanceId(String processInstanceId) {
this.processInstanceId = processInstanceId;
}
public Job withProcessInstanceId(String processInstanceId) {
this.processInstanceId = processInstanceId;
return this;
}
public String getProcessInstanceUrl() {
return processInstanceUrl;
}
public void setProcessInstanceUrl(String processInstanceUrl) {
this.processInstanceUrl = processInstanceUrl;
}
public Job withProcessInstanceUrl(String processInstanceUrl) {
this.processInstanceUrl = processInstanceUrl;
return this;
}
public String getProcessDefinitionId() {
return processDefinitionId;
}
public void setProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
}
public Job withProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
return this;
}
public String getProcessDefinitionUrl() {
return processDefinitionUrl;
}
public void setProcessDefinitionUrl(String processDefinitionUrl) {
this.processDefinitionUrl = processDefinitionUrl;
}
public Job withProcessDefinitionUrl(String processDefinitionUrl) {
this.processDefinitionUrl = processDefinitionUrl;
return this;
}
public String getExecutionId() {
return executionId;
}
public void setExecutionId(String executionId) {
this.executionId = executionId;
}
public Job withExecutionId(String executionId) {
this.executionId = executionId;
return this;
}
public String getExecutionUrl() {
return executionUrl;
}
public void setExecutionUrl(String executionUrl) {
this.executionUrl = executionUrl;
}
public Job withExecutionUrl(String executionUrl) {
this.executionUrl = executionUrl;
return this;
}
public int getRetries() {
return retries;
}
public void setRetries(int retries) {
this.retries = retries;
}
public Job withRetries(int retries) {
this.retries = retries;
return this;
}
public String getExceptionMessage() {
return exceptionMessage;
}
public void setExceptionMessage(String exceptionMessage) {
this.exceptionMessage = exceptionMessage;
}
public Job withExceptionMessage(String exceptionMessage) {
this.exceptionMessage = exceptionMessage;
return this;
}
public OffsetDateTime getDueDate() {
return dueDate;
}
public void setDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
}
public Job withDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
return this;
}
public String getTenantId() {
return tenantId;
}
public void setTenantId(String tenantId) {
this.tenantId = tenantId;
}
public Job withTenantId(String tenantId) {
this.tenantId = tenantId;
return this;
}
}

View File

@ -1,5 +1,5 @@
package com.inteligr8.alfresco.activiti.model;
package com.inteligr8.activiti.model;
import java.util.LinkedList;
import java.util.List;
@ -8,16 +8,28 @@ import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonInclude(JsonInclude.Include.NON_NULL)
public class ResultList<T> {
public class ResultList<T> extends Datum {
@JsonProperty("data")
private List<T> data = new LinkedList<T>();
@JsonProperty("size")
private Integer size;
@JsonProperty("total")
private Integer total;
@JsonProperty("start")
private Integer start;
@JsonProperty("data")
private List<T> data = new LinkedList<T>();
@JsonProperty("sort")
private String sort;
@JsonProperty("order")
private String order;
public List<T> getData() {
return data;
}
public void setData(List<T> data) {
this.data = data;
}
public Integer getSize() {
return size;
@ -43,12 +55,20 @@ public class ResultList<T> {
this.start = start;
}
public List<T> getData() {
return data;
}
public String getSort() {
return sort;
}
public void setData(List<T> data) {
this.data = data;
}
public void setSort(String sort) {
this.sort = sort;
}
public String getOrder() {
return order;
}
public void setOrder(String order) {
this.order = order;
}
}

View File

@ -14,10 +14,11 @@
*/
package com.inteligr8.alfresco.activiti;
import com.inteligr8.activiti.ActivitiPublicRestApi;
import com.inteligr8.alfresco.activiti.api.AdminApi;
import com.inteligr8.alfresco.activiti.api.AppDefinitionsApi;
import com.inteligr8.alfresco.activiti.api.AppVersionApi;
import com.inteligr8.alfresco.activiti.api.HistoricProcessInstancesApi;
import com.inteligr8.alfresco.activiti.api.HistoricApi;
import com.inteligr8.alfresco.activiti.api.ModelsApi;
import com.inteligr8.alfresco.activiti.api.ProcessInstancesApi;
import com.inteligr8.alfresco.activiti.api.ProfileApi;
@ -30,7 +31,7 @@ import com.inteligr8.alfresco.activiti.api.TasksApi;
*
* @author brian@inteligr8.com
*/
public interface ApsPublicRestApi {
public interface ApsPublicRestApi extends ActivitiPublicRestApi {
<T> T getApi(Class<T> apiClass);
@ -46,8 +47,8 @@ public interface ApsPublicRestApi {
return this.getApi(AppVersionApi.class);
}
default HistoricProcessInstancesApi getHistoricProcessInstancesApi() {
return this.getApi(HistoricProcessInstancesApi.class);
default HistoricApi getHistoricProcessInstancesApi() {
return this.getApi(HistoricApi.class);
}
default ModelsApi getModelsApi() {

View File

@ -26,9 +26,9 @@ import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.alfresco.activiti.model.Group;
import com.inteligr8.alfresco.activiti.model.GroupLight;
import com.inteligr8.alfresco.activiti.model.ResultList;
import com.inteligr8.alfresco.activiti.model.Tenant;
import com.inteligr8.alfresco.activiti.model.UserLight;

View File

@ -20,8 +20,8 @@ import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.alfresco.activiti.model.GroupLight;
import com.inteligr8.alfresco.activiti.model.ResultList;
import com.inteligr8.alfresco.activiti.model.UserLight;
@Path("/api/enterprise/groups")

View File

@ -20,16 +20,24 @@ import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import com.inteligr8.alfresco.activiti.model.HistoricProcessInstanceQueryRepresentation;
import com.inteligr8.alfresco.activiti.model.HistoricTaskQueryRepresentation;
import com.inteligr8.alfresco.activiti.model.ProcessInstance;
import com.inteligr8.alfresco.activiti.model.ResultListDataRepresentation;
import com.inteligr8.alfresco.activiti.model.Task;
@Path("/api/enterprise/historic-process-instances")
public interface HistoricProcessInstancesApi {
@Path("/api/enterprise")
public interface HistoricApi {
@POST
@Path("query")
@Path("historic-process-instances/query")
@Consumes({ "application/json" })
@Produces({ "application/json" })
ResultListDataRepresentation<ProcessInstance> query(HistoricProcessInstanceQueryRepresentation request);
@POST
@Path("historic-tasks/query")
@Consumes({ "application/json" })
@Produces({ "application/json" })
ResultListDataRepresentation<Task> query(HistoricTaskQueryRepresentation request);
}

View File

@ -0,0 +1,35 @@
/*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or (at your
* option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
* more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see <https://www.gnu.org/licenses/>.
*/
package com.inteligr8.alfresco.activiti.api;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import com.inteligr8.alfresco.activiti.model.ProcessDefinition;
import com.inteligr8.alfresco.activiti.model.ResultListDataRepresentation;
@Path("/api/enterprise/process-definitions")
public interface ProcessDefinitionsApi {
@GET
@Produces({ "application/json" })
ResultListDataRepresentation<ProcessDefinition> get(
@QueryParam("latest") Boolean latest,
@QueryParam("appDefinitionId") Integer appDefinitionId,
@QueryParam("deploymentId") String deploymentId);
}

View File

@ -27,7 +27,9 @@ import javax.ws.rs.Produces;
import com.inteligr8.alfresco.activiti.model.CreateProcessInstance;
import com.inteligr8.alfresco.activiti.model.ProcessInstance;
import com.inteligr8.alfresco.activiti.model.ProcessInstanceFilterRepresentation;
import com.inteligr8.alfresco.activiti.model.ProcessInstanceQueryRepresentation;
import com.inteligr8.alfresco.activiti.model.ProcessInstanceVariable;
import com.inteligr8.alfresco.activiti.model.ResultListDataRepresentation;
import com.inteligr8.alfresco.activiti.model.Variable;
@ -39,6 +41,12 @@ public interface ProcessInstancesApi {
@Produces({ "application/json" })
ProcessInstance create(CreateProcessInstance processInstance);
@POST
@Path("filter")
@Consumes({ "application/json" })
@Produces({ "application/json" })
ResultListDataRepresentation<ProcessInstance> filter(ProcessInstanceFilterRepresentation request);
@POST
@Path("query")
@Consumes({ "application/json" })
@ -64,6 +72,11 @@ public interface ProcessInstancesApi {
@Produces({ "application/json" })
ProcessInstance suspend(@PathParam("processInstanceId") String processInstanceId);
@GET
@Path("{processInstanceId}/historic-variables")
@Produces({ "application/json" })
List<ProcessInstanceVariable> getHistoricVariables(@PathParam("processInstanceId") String processInstanceId);
@GET
@Path("{processInstanceId}/variables")
@Produces({ "application/json" })
@ -88,6 +101,6 @@ public interface ProcessInstancesApi {
@DELETE
@Path("{processInstanceId}/variables/{variableName}")
void deleteVariable(@PathParam("processInstanceId") String processInstanceId, @PathParam("variableName") String variableName);
void removeVariable(@PathParam("processInstanceId") String processInstanceId, @PathParam("variableName") String variableName);
}

View File

@ -22,7 +22,7 @@ import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import com.inteligr8.alfresco.activiti.model.ResultList;
import com.inteligr8.activiti.model.ResultList;
import com.inteligr8.alfresco.activiti.model.ShareInfoRequest;
import com.inteligr8.alfresco.activiti.model.SharePermission;

View File

@ -19,36 +19,111 @@ import java.util.List;
import javax.ws.rs.Consumes;
import javax.ws.rs.DELETE;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.PUT;
import javax.ws.rs.Path;
import javax.ws.rs.PathParam;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import com.inteligr8.alfresco.activiti.model.AssigneeIdentifier;
import com.inteligr8.alfresco.activiti.model.HistoricTaskQueryRepresentation;
import com.inteligr8.alfresco.activiti.model.ResultListDataRepresentation;
import com.inteligr8.alfresco.activiti.model.Task;
import com.inteligr8.alfresco.activiti.model.TaskQueryRepresentation;
import com.inteligr8.alfresco.activiti.model.TaskUpdate;
import com.inteligr8.alfresco.activiti.model.UserIdentifier;
import com.inteligr8.alfresco.activiti.model.Variable;
@Path("/api/enterprise/tasks")
public interface TasksApi {
@GET
@Path("{taskId}")
@Produces({ "application/json" })
Task get(@PathParam("taskId") String taskId);
@PUT
@Path("{taskId}")
@Consumes({ "application/json" })
@Produces({ "application/json" })
public Task update(@PathParam("taskId") String taskId, TaskUpdate taskUpdate);
Task update(@PathParam("taskId") String taskId, TaskUpdate taskUpdate);
@DELETE
@Path("{taskId}")
@Produces({ "application/json" })
void delete(@PathParam("taskId") String taskId);
@POST
@Path("query")
@Produces({ "application/json" })
ResultListDataRepresentation<Task> query(TaskQueryRepresentation request);
@POST
@Path("filter")
@Produces({ "application/json" })
ResultListDataRepresentation<Task> query(HistoricTaskQueryRepresentation request);
@PUT
@Path("{taskId}/action/assign")
@Consumes({ "application/json" })
@Produces({ "application/json" })
Task assign(@PathParam("taskId") String taskId, AssigneeIdentifier request);
@PUT
@Path("{taskId}/action/claim")
void claim(@PathParam("taskId") String taskId);
@PUT
@Path("{taskId}/action/complete")
void complete(@PathParam("taskId") String taskId);
@PUT
@Path("{taskId}/action/delegate")
@Consumes({ "application/json" })
void delegate(@PathParam("taskId") String taskId, UserIdentifier request);
@PUT
@Path("{taskId}/action/involve")
@Consumes({ "application/json" })
void involve(@PathParam("taskId") String taskId, UserIdentifier request);
@POST
@Path("{taskId}/groups/{groupId}")
void involveGroup(@PathParam("taskId") String taskId, @PathParam("groupId") String groupId);
@DELETE
@Path("{taskId}/groups/{groupId}")
void removeInvolvedGroup(@PathParam("taskId") String taskId, @PathParam("groupId") String groupId);
@PUT
@Path("{taskId}/action/remove-involved")
@Consumes({ "application/json" })
void removeInvolved(@PathParam("taskId") String taskId, UserIdentifier request);
@PUT
@Path("{taskId}/action/resolve")
void resolve(@PathParam("taskId") String taskId);
@PUT
@Path("{taskId}/action/unclaim")
void unclaim(@PathParam("taskId") String taskId);
@GET
@Path("{taskId}/variables")
@Produces({ "application/json" })
List<Variable> getVariables(@PathParam("taskId") String taskId, @QueryParam("scope") String scope);
@PUT
@POST
@Path("{taskId}/variables")
@Consumes({ "application/json" })
@Produces({ "application/json" })
List<Variable> setVariables(@PathParam("taskId") String taskId, List<Variable> variables);
@DELETE
@Path("{taskId}/variables")
List<Variable> removeVariables(@PathParam("taskId") String taskId);
@GET
@Path("{taskId}/variables/{variableName}")
@Produces({ "application/json" })
@ -62,6 +137,6 @@ public interface TasksApi {
@DELETE
@Path("{taskId}/variables/{variableName}")
void deleteVariable(@PathParam("taskId") String taskId, @PathParam("variableName") String variableName, @QueryParam("scope") String scope);
void removeVariable(@PathParam("taskId") String taskId, @PathParam("variableName") String variableName, @QueryParam("scope") String scope);
}

View File

@ -0,0 +1,42 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class AssigneeIdentifier {
@JsonProperty
private String assignee;
@JsonProperty
private String email;
public String getAssignee() {
return assignee;
}
public void setAssignee(String assignee) {
this.assignee = assignee;
}
public AssigneeIdentifier withAssignee(String assignee) {
this.assignee = assignee;
return this;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public AssigneeIdentifier withEmail(String email) {
this.email = email;
return this;
}
}

View File

@ -6,9 +6,11 @@ import java.time.OffsetDateTime;
import java.util.LinkedList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
@ -43,8 +45,10 @@ public class HistoricProcessInstanceQueryRepresentation {
@JsonProperty("finished")
private Boolean finished;
@JsonProperty("finishedAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime finishedAfter;
@JsonProperty("finishedBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime finishedBefore;
@JsonProperty("includeProcessVariables")
private Boolean includeProcessVariables;
@ -69,8 +73,10 @@ public class HistoricProcessInstanceQueryRepresentation {
@JsonProperty("start")
private Integer start;
@JsonProperty("startedAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime startedAfter;
@JsonProperty("startedBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime startedBefore;
@JsonProperty("startedBy")
private String startedBy;

View File

@ -0,0 +1,835 @@
package com.inteligr8.alfresco.activiti.model;
import java.time.OffsetDateTime;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"taskId",
"parentTaskId",
"taskName",
"taskNameLike",
"taskDefinitionKey",
"taskDefinitionKeyLike",
"finished",
"taskPriority",
"taskMinPriority",
"taskMaxPriority",
"taskAssignee",
"taskAssigneeLike",
"taskOwner",
"taskOwnerLike",
"taskInvolvedUser",
"taskCandidateGroup",
"taskCreatedOn",
"taskCreatedAfter",
"taskCreatedBefore",
"dueDate",
"dueDateAfter",
"dueDateBefore",
"withoutDueDate",
"taskCompletedOn",
"taskCompletedAfter",
"taskCompletedBefore",
"taskDeleteReason",
"taskDeleteReasonLike",
"taskDescription",
"taskDescriptionLike",
"processBusinessKey",
"processBusinessKeyLike",
"processDefinitionId",
"processDefinitionKey",
"processDefinitionKeyLike",
"processDefinitionName",
"processDefinitionNameLike",
"processFinished",
"processInstanceId",
"includeProcessVariables",
"includeTaskLocalVariables",
"processVariables",
"taskVariables",
"size",
"sort",
"order",
"start",
"tenantId",
"tenantIdLike",
"withoutTenantId",
})
public class HistoricTaskQueryRepresentation {
@JsonProperty("taskId")
private String taskId;
@JsonProperty("parentTaskId")
private String parentTaskId;
@JsonProperty("taskName")
private String taskName;
@JsonProperty("taskNameLike")
private String taskNameLike;
@JsonProperty("taskDefinitionKey")
private String taskDefinitionKey;
@JsonProperty("taskDefinitionKeyLike")
private String taskDefinitionKeyLike;
@JsonProperty("finished")
private Boolean finished;
@JsonProperty("taskPriority")
private Integer taskPriority;
@JsonProperty("taskMinPriority")
private Integer taskMinPriority;
@JsonProperty("taskMaxPriority")
private Integer taskMaxPriority;
@JsonProperty("taskAssignee")
private String taskAssignee;
@JsonProperty("taskAssigneeLike")
private String taskAssigneeLike;
@JsonProperty("taskOwner")
private String taskOwner;
@JsonProperty("taskOwnerLike")
private String taskOwnerLike;
@JsonProperty("taskInvolvedUser")
private String taskInvolvedUser;
@JsonProperty("taskCandidateGroup")
private String taskCandidateGroup;
@JsonProperty("taskCreatedOn")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime taskCreated;
@JsonProperty("taskCreatedBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime taskCreatedBefore;
@JsonProperty("taskCreatedAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime taskCreatedAfter;
@JsonProperty("dueDate")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueDate;
@JsonProperty("dueDateBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueDateBefore;
@JsonProperty("dueDateAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueDateAfter;
@JsonProperty("withoutDueDate")
private Boolean withoutDueDate;
@JsonProperty("taskCompletedOn")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime taskCompleted;
@JsonProperty("taskCompletedBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime taskCompletedBefore;
@JsonProperty("taskCompletedAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime taskCompletedAfter;
@JsonProperty("taskDeleteReason")
private String taskDeleteReason;
@JsonProperty("taskDeleteReasonLike")
private String taskDeleteReasonLike;
@JsonProperty("taskDescription")
private String taskDescription;
@JsonProperty("taskDescriptionLike")
private String taskDescriptionLike;
@JsonProperty("processBusinessKey")
private String processBusinessKey;
@JsonProperty("processBusinessKeyLike")
private String processBusinessKeyLike;
@JsonProperty("processDefinitionId")
private String processDefinitionId;
@JsonProperty("processDefinitionKey")
private String processDefinitionKey;
@JsonProperty("processDefinitionKeyLike")
private String processDefinitionKeyLike;
@JsonProperty("processDefinitionName")
private String processDefinitionName;
@JsonProperty("processDefinitionNameLike")
private String processDefinitionNameLike;
@JsonProperty("processFinished")
private Boolean processFinished;
@JsonProperty("processInstanceId")
private String processInstanceId;
@JsonProperty("includeProcessVariables")
private Boolean includeProcessVariables;
@JsonProperty("includeTaskLocalVariables")
private Boolean includeTaskLocalVariables;
@JsonProperty("taskVariables")
private List<QueryVariable> taskVariables;
@JsonProperty("processVariables")
private List<QueryVariable> processVariables;
@JsonProperty("size")
private Integer size;
@JsonProperty("sort")
private String sort;
@JsonProperty("order")
private String order;
@JsonProperty("start")
private Integer start;
@JsonProperty("tenantId")
private String tenantId;
@JsonProperty("tenantIdLike")
private String tenantIdLike;
@JsonProperty("withoutTenantId")
private Boolean withoutTenantId;
/**
* No args constructor for use in serialization
*/
public HistoricTaskQueryRepresentation() {
}
public String getTaskId() {
return taskId;
}
public void setTaskId(String taskId) {
this.taskId = taskId;
}
public HistoricTaskQueryRepresentation withTaskId(String taskId) {
this.taskId = taskId;
return this;
}
public String getParentTaskId() {
return parentTaskId;
}
public void setParentTaskId(String parentTaskId) {
this.parentTaskId = parentTaskId;
}
public HistoricTaskQueryRepresentation withParentTaskId(String parentTaskId) {
this.parentTaskId = parentTaskId;
return this;
}
public String getTaskName() {
return taskName;
}
public void setTaskName(String taskName) {
this.taskName = taskName;
}
public HistoricTaskQueryRepresentation withTaskName(String taskName) {
this.taskName = taskName;
return this;
}
public String getTaskNameLike() {
return taskNameLike;
}
public void setTaskNameLike(String taskNameLike) {
this.taskNameLike = taskNameLike;
}
public HistoricTaskQueryRepresentation withTaskNameLike(String taskNameLike) {
this.taskNameLike = taskNameLike;
return this;
}
public String getTaskDefinitionKey() {
return taskDefinitionKey;
}
public void setTaskDefinitionKey(String taskDefinitionKey) {
this.taskDefinitionKey = taskDefinitionKey;
}
public HistoricTaskQueryRepresentation withTaskDefinitionKey(String taskDefinitionKey) {
this.taskDefinitionKey = taskDefinitionKey;
return this;
}
public String getTaskDefinitionKeyLike() {
return taskDefinitionKeyLike;
}
public void setTaskDefinitionKeyLike(String taskDefinitionKeyLike) {
this.taskDefinitionKeyLike = taskDefinitionKeyLike;
}
public HistoricTaskQueryRepresentation withTaskDefinitionKeyLike(String taskDefinitionKeyLike) {
this.taskDefinitionKeyLike = taskDefinitionKeyLike;
return this;
}
public Boolean getFinished() {
return finished;
}
public void setFinished(Boolean finished) {
this.finished = finished;
}
public HistoricTaskQueryRepresentation withFinished(Boolean finished) {
this.finished = finished;
return this;
}
public Integer getTaskPriority() {
return taskPriority;
}
public void setTaskPriority(Integer taskPriority) {
this.taskPriority = taskPriority;
}
public HistoricTaskQueryRepresentation withTaskPriority(Integer taskPriority) {
this.taskPriority = taskPriority;
return this;
}
public Integer getTaskMinPriority() {
return taskMinPriority;
}
public void setTaskMinPriority(Integer taskMinPriority) {
this.taskMinPriority = taskMinPriority;
}
public HistoricTaskQueryRepresentation withTaskMinPriority(Integer taskMinPriority) {
this.taskMinPriority = taskMinPriority;
return this;
}
public Integer getTaskMaxPriority() {
return taskMaxPriority;
}
public void setTaskMaxPriority(Integer taskMaxPriority) {
this.taskMaxPriority = taskMaxPriority;
}
public HistoricTaskQueryRepresentation withTaskMaxPriority(Integer taskMaxPriority) {
this.taskMaxPriority = taskMaxPriority;
return this;
}
public String getTaskAssignee() {
return taskAssignee;
}
public void setTaskAssignee(String taskAssignee) {
this.taskAssignee = taskAssignee;
}
public HistoricTaskQueryRepresentation withTaskAssignee(String taskAssignee) {
this.taskAssignee = taskAssignee;
return this;
}
public String getTaskAssigneeLike() {
return taskAssigneeLike;
}
public void setTaskAssigneeLike(String taskAssigneeLike) {
this.taskAssigneeLike = taskAssigneeLike;
}
public HistoricTaskQueryRepresentation withTaskAssigneeLike(String taskAssigneeLike) {
this.taskAssigneeLike = taskAssigneeLike;
return this;
}
public String getTaskOwner() {
return taskOwner;
}
public void setTaskOwner(String taskOwner) {
this.taskOwner = taskOwner;
}
public HistoricTaskQueryRepresentation withTaskOwner(String taskOwner) {
this.taskOwner = taskOwner;
return this;
}
public String getTaskOwnerLike() {
return taskOwnerLike;
}
public void setTaskOwnerLike(String taskOwnerLike) {
this.taskOwnerLike = taskOwnerLike;
}
public HistoricTaskQueryRepresentation withTaskOwnerLike(String taskOwnerLike) {
this.taskOwnerLike = taskOwnerLike;
return this;
}
public String getTaskInvolvedUser() {
return taskInvolvedUser;
}
public void setTaskInvolvedUser(String taskInvolvedUser) {
this.taskInvolvedUser = taskInvolvedUser;
}
public HistoricTaskQueryRepresentation withTaskInvolvedUser(String taskInvolvedUser) {
this.taskInvolvedUser = taskInvolvedUser;
return this;
}
public String getTaskCandidateGroup() {
return taskCandidateGroup;
}
public void setTaskCandidateGroup(String taskCandidateGroup) {
this.taskCandidateGroup = taskCandidateGroup;
}
public HistoricTaskQueryRepresentation withTaskCandidateGroup(String taskCandidateGroup) {
this.taskCandidateGroup = taskCandidateGroup;
return this;
}
public OffsetDateTime getTaskCreated() {
return taskCreated;
}
public void setTaskCreated(OffsetDateTime taskCreated) {
this.taskCreated = taskCreated;
}
public HistoricTaskQueryRepresentation withTaskCreated(OffsetDateTime taskCreated) {
this.taskCreated = taskCreated;
return this;
}
public OffsetDateTime getTaskCreatedBefore() {
return taskCreatedBefore;
}
public void setTaskCreatedBefore(OffsetDateTime taskCreatedBefore) {
this.taskCreatedBefore = taskCreatedBefore;
}
public HistoricTaskQueryRepresentation withTaskCreatedBefore(OffsetDateTime taskCreatedBefore) {
this.taskCreatedBefore = taskCreatedBefore;
return this;
}
public OffsetDateTime getTaskCreatedAfter() {
return taskCreatedAfter;
}
public void setTaskCreatedAfter(OffsetDateTime taskCreatedAfter) {
this.taskCreatedAfter = taskCreatedAfter;
}
public HistoricTaskQueryRepresentation withTaskCreatedAfter(OffsetDateTime taskCreatedAfter) {
this.taskCreatedAfter = taskCreatedAfter;
return this;
}
public OffsetDateTime getDueDate() {
return dueDate;
}
public void setDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
}
public HistoricTaskQueryRepresentation withDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
return this;
}
public OffsetDateTime getDueDateBefore() {
return dueDateBefore;
}
public void setDueDateBefore(OffsetDateTime dueDateBefore) {
this.dueDateBefore = dueDateBefore;
}
public HistoricTaskQueryRepresentation withDueDateBefore(OffsetDateTime dueDateBefore) {
this.dueDateBefore = dueDateBefore;
return this;
}
public OffsetDateTime getDueDateAfter() {
return dueDateAfter;
}
public void setDueDateAfter(OffsetDateTime dueDateAfter) {
this.dueDateAfter = dueDateAfter;
}
public HistoricTaskQueryRepresentation withDueDateAfter(OffsetDateTime dueDateAfter) {
this.dueDateAfter = dueDateAfter;
return this;
}
public Boolean getWithoutDueDate() {
return withoutDueDate;
}
public void setWithoutDueDate(Boolean withoutDueDate) {
this.withoutDueDate = withoutDueDate;
}
public HistoricTaskQueryRepresentation withWithoutDueDate(Boolean withoutDueDate) {
this.withoutDueDate = withoutDueDate;
return this;
}
public OffsetDateTime getTaskCompleted() {
return taskCompleted;
}
public void setTaskCompleted(OffsetDateTime taskCompleted) {
this.taskCompleted = taskCompleted;
}
public HistoricTaskQueryRepresentation withTaskCompleted(OffsetDateTime taskCompleted) {
this.taskCompleted = taskCompleted;
return this;
}
public OffsetDateTime getTaskCompletedBefore() {
return taskCompletedBefore;
}
public void setTaskCompletedBefore(OffsetDateTime taskCompletedBefore) {
this.taskCompletedBefore = taskCompletedBefore;
}
public HistoricTaskQueryRepresentation withTaskCompletedBefore(OffsetDateTime taskCompletedBefore) {
this.taskCompletedBefore = taskCompletedBefore;
return this;
}
public OffsetDateTime getTaskCompletedAfter() {
return taskCompletedAfter;
}
public void setTaskCompletedAfter(OffsetDateTime taskCompletedAfter) {
this.taskCompletedAfter = taskCompletedAfter;
}
public HistoricTaskQueryRepresentation withTaskCompletedAfter(OffsetDateTime taskCompletedAfter) {
this.taskCompletedAfter = taskCompletedAfter;
return this;
}
public String getTaskDeleteReason() {
return taskDeleteReason;
}
public void setTaskDeleteReason(String taskDeleteReason) {
this.taskDeleteReason = taskDeleteReason;
}
public HistoricTaskQueryRepresentation withTaskDeleteReason(String taskDeleteReason) {
this.taskDeleteReason = taskDeleteReason;
return this;
}
public String getTaskDeleteReasonLike() {
return taskDeleteReasonLike;
}
public void setTaskDeleteReasonLike(String taskDeleteReasonLike) {
this.taskDeleteReasonLike = taskDeleteReasonLike;
}
public HistoricTaskQueryRepresentation withTaskDeleteReasonLike(String taskDeleteReasonLike) {
this.taskDeleteReasonLike = taskDeleteReasonLike;
return this;
}
public String getTaskDescription() {
return taskDescription;
}
public void setTaskDescription(String taskDescription) {
this.taskDescription = taskDescription;
}
public HistoricTaskQueryRepresentation withTaskDescription(String taskDescription) {
this.taskDescription = taskDescription;
return this;
}
public String getTaskDescriptionLike() {
return taskDescriptionLike;
}
public void setTaskDescriptionLike(String taskDescriptionLike) {
this.taskDescriptionLike = taskDescriptionLike;
}
public HistoricTaskQueryRepresentation withTaskDescriptionLike(String taskDescriptionLike) {
this.taskDescriptionLike = taskDescriptionLike;
return this;
}
public String getProcessBusinessKey() {
return processBusinessKey;
}
public void setProcessBusinessKey(String processBusinessKey) {
this.processBusinessKey = processBusinessKey;
}
public HistoricTaskQueryRepresentation withProcessBusinessKey(String processBusinessKey) {
this.processBusinessKey = processBusinessKey;
return this;
}
public String getProcessBusinessKeyLike() {
return processBusinessKeyLike;
}
public void setProcessBusinessKeyLike(String processBusinessKeyLike) {
this.processBusinessKeyLike = processBusinessKeyLike;
}
public HistoricTaskQueryRepresentation withProcessBusinessKeyLike(String processBusinessKeyLike) {
this.processBusinessKeyLike = processBusinessKeyLike;
return this;
}
public String getProcessDefinitionId() {
return processDefinitionId;
}
public void setProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
}
public HistoricTaskQueryRepresentation withProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
return this;
}
public String getProcessDefinitionKey() {
return processDefinitionKey;
}
public void setProcessDefinitionKey(String processDefinitionKey) {
this.processDefinitionKey = processDefinitionKey;
}
public HistoricTaskQueryRepresentation withProcessDefinitionKey(String processDefinitionKey) {
this.processDefinitionKey = processDefinitionKey;
return this;
}
public String getProcessDefinitionKeyLike() {
return processDefinitionKeyLike;
}
public void setProcessDefinitionKeyLike(String processDefinitionKeyLike) {
this.processDefinitionKeyLike = processDefinitionKeyLike;
}
public HistoricTaskQueryRepresentation withProcessDefinitionKeyLike(String processDefinitionKeyLike) {
this.processDefinitionKeyLike = processDefinitionKeyLike;
return this;
}
public String getProcessDefinitionName() {
return processDefinitionName;
}
public void setProcessDefinitionName(String processDefinitionName) {
this.processDefinitionName = processDefinitionName;
}
public HistoricTaskQueryRepresentation withProcessDefinitionName(String processDefinitionName) {
this.processDefinitionName = processDefinitionName;
return this;
}
public String getProcessDefinitionNameLike() {
return processDefinitionNameLike;
}
public void setProcessDefinitionNameLike(String processDefinitionNameLike) {
this.processDefinitionNameLike = processDefinitionNameLike;
}
public HistoricTaskQueryRepresentation withProcessDefinitionNameLike(String processDefinitionNameLike) {
this.processDefinitionNameLike = processDefinitionNameLike;
return this;
}
public Boolean getProcessFinished() {
return processFinished;
}
public void setProcessFinished(Boolean processFinished) {
this.processFinished = processFinished;
}
public HistoricTaskQueryRepresentation withProcessFinished(Boolean processFinished) {
this.processFinished = processFinished;
return this;
}
public String getProcessInstanceId() {
return processInstanceId;
}
public void setProcessInstanceId(String processInstanceId) {
this.processInstanceId = processInstanceId;
}
public HistoricTaskQueryRepresentation withProcessInstanceId(String processInstanceId) {
this.processInstanceId = processInstanceId;
return this;
}
public Boolean getIncludeProcessVariables() {
return includeProcessVariables;
}
public void setIncludeProcessVariables(Boolean includeProcessVariables) {
this.includeProcessVariables = includeProcessVariables;
}
public HistoricTaskQueryRepresentation withIncludeProcessVariables(Boolean includeProcessVariables) {
this.includeProcessVariables = includeProcessVariables;
return this;
}
public Boolean getIncludeTaskLocalVariables() {
return includeTaskLocalVariables;
}
public void setIncludeTaskLocalVariables(Boolean includeTaskLocalVariables) {
this.includeTaskLocalVariables = includeTaskLocalVariables;
}
public HistoricTaskQueryRepresentation withIncludeTaskLocalVariables(Boolean includeTaskLocalVariables) {
this.includeTaskLocalVariables = includeTaskLocalVariables;
return this;
}
public List<QueryVariable> getTaskVariables() {
return taskVariables;
}
public void setTaskVariables(List<QueryVariable> taskVariables) {
this.taskVariables = taskVariables;
}
public HistoricTaskQueryRepresentation withTaskVariables(List<QueryVariable> taskVariables) {
this.taskVariables = taskVariables;
return this;
}
public List<QueryVariable> getProcessVariables() {
return processVariables;
}
public void setProcessVariables(List<QueryVariable> processVariables) {
this.processVariables = processVariables;
}
public HistoricTaskQueryRepresentation withProcessVariables(List<QueryVariable> processVariables) {
this.processVariables = processVariables;
return this;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public HistoricTaskQueryRepresentation withSize(Integer size) {
this.size = size;
return this;
}
public String getSort() {
return sort;
}
public void setSort(String sort) {
this.sort = sort;
}
public HistoricTaskQueryRepresentation withSort(String sort) {
this.sort = sort;
return this;
}
public String getOrder() {
return order;
}
public void setOrder(String order) {
this.order = order;
}
public HistoricTaskQueryRepresentation withOrder(String order) {
this.order = order;
return this;
}
public Integer getStart() {
return start;
}
public void setStart(Integer start) {
this.start = start;
}
public HistoricTaskQueryRepresentation withStart(Integer start) {
this.start = start;
return this;
}
public String getTenantId() {
return tenantId;
}
public void setTenantId(String tenantId) {
this.tenantId = tenantId;
}
public HistoricTaskQueryRepresentation withTenantId(String tenantId) {
this.tenantId = tenantId;
return this;
}
public String getTenantIdLike() {
return tenantIdLike;
}
public void setTenantIdLike(String tenantIdLike) {
this.tenantIdLike = tenantIdLike;
}
public HistoricTaskQueryRepresentation withTenantIdLike(String tenantIdLike) {
this.tenantIdLike = tenantIdLike;
return this;
}
public Boolean getWithoutTenantId() {
return withoutTenantId;
}
public void setWithoutTenantId(Boolean withoutTenantId) {
this.withoutTenantId = withoutTenantId;
}
public HistoricTaskQueryRepresentation withWithoutTenantId(Boolean withoutTenantId) {
this.withoutTenantId = withoutTenantId;
return this;
}
}

View File

@ -0,0 +1,166 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.inteligr8.activiti.model.Datum;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"id",
"key",
"name",
"description",
"hasStartForm",
"deploymentId",
"version",
"category",
"tenantId"
})
public class ProcessDefinition extends Datum {
@JsonProperty("category")
private String category;
@JsonProperty("deploymentId")
private String deploymentId;
@JsonProperty("description")
private String description;
@JsonProperty("hasStartForm")
private boolean hasStartForm;
@JsonProperty("id")
private String id;
@JsonProperty("key")
private String key;
@JsonProperty("name")
private String name;
@JsonProperty("tenantId")
private String tenantId;
@JsonProperty("version")
private Integer version;
/**
* No args constructor for use in serialization
*/
public ProcessDefinition() {
}
public String getCategory() {
return category;
}
public void setCategory(String category) {
this.category = category;
}
public ProcessDefinition withCategory(String category) {
this.category = category;
return this;
}
public String getDeploymentId() {
return deploymentId;
}
public void setDeploymentId(String deploymentId) {
this.deploymentId = deploymentId;
}
public ProcessDefinition withDeploymentId(String deploymentId) {
this.deploymentId = deploymentId;
return this;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public ProcessDefinition withDescription(String description) {
this.description = description;
return this;
}
public boolean isHasStartForm() {
return hasStartForm;
}
public void setHasStartForm(boolean hasStartForm) {
this.hasStartForm = hasStartForm;
}
public ProcessDefinition withHasStartForm(boolean hasStartForm) {
this.hasStartForm = hasStartForm;
return this;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public ProcessDefinition withId(String id) {
this.id = id;
return this;
}
public String getKey() {
return key;
}
public void setKey(String key) {
this.key = key;
}
public ProcessDefinition withKey(String key) {
this.key = key;
return this;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ProcessDefinition withName(String name) {
this.name = name;
return this;
}
public String getTenantId() {
return tenantId;
}
public void setTenantId(String tenantId) {
this.tenantId = tenantId;
}
public ProcessDefinition withTenantId(String tenantId) {
this.tenantId = tenantId;
return this;
}
public Integer getVersion() {
return version;
}
public void setVersion(Integer version) {
this.version = version;
}
public ProcessDefinition withVersion(Integer version) {
this.version = version;
return this;
}
}

View File

@ -2,12 +2,16 @@
package com.inteligr8.alfresco.activiti.model;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import com.inteligr8.activiti.model.Datum;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
@ -35,7 +39,8 @@ public class ProcessInstance extends Datum {
@JsonProperty("businessKey")
private String businessKey;
@JsonProperty("ended")
private String ended;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime ended;
@JsonProperty("graphicalNotationDefined")
private Boolean graphicalNotationDefined;
@JsonProperty("id")
@ -59,7 +64,8 @@ public class ProcessInstance extends Datum {
@JsonProperty("startFormDefined")
private Boolean startFormDefined;
@JsonProperty("started")
private String started;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime started;
@JsonProperty("startedBy")
private UserLight startedBy;
@JsonProperty("suspended")
@ -88,15 +94,15 @@ public class ProcessInstance extends Datum {
return this;
}
public String getEnded() {
public OffsetDateTime getEnded() {
return ended;
}
public void setEnded(String ended) {
public void setEnded(OffsetDateTime ended) {
this.ended = ended;
}
public ProcessInstance withEnded(String ended) {
public ProcessInstance withEnded(OffsetDateTime ended) {
this.ended = ended;
return this;
}
@ -244,15 +250,15 @@ public class ProcessInstance extends Datum {
return this;
}
public String getStarted() {
public OffsetDateTime getStarted() {
return started;
}
public void setStarted(String started) {
public void setStarted(OffsetDateTime started) {
this.started = started;
}
public ProcessInstance withStarted(String started) {
public ProcessInstance withStarted(OffsetDateTime started) {
this.started = started;
return this;
}

View File

@ -0,0 +1,127 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.inteligr8.activiti.model.Datum;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"name",
"processDefinitionId",
"processDefinitionKey",
"sort",
"asc",
"state"
})
public class ProcessInstanceFilter extends Datum {
public enum State {
@JsonProperty("all")
All,
@JsonProperty("completed")
Completed,
@JsonProperty("running")
Running
}
@JsonProperty("name")
private String name;
@JsonProperty("processDefinitionId")
private String processDefinitionId;
@JsonProperty("processDefinitionKey")
private String processDefinitionKey;
@JsonProperty("sort")
private String sort;
@JsonProperty("asc")
private Boolean asc;
@JsonProperty("state")
private State state;
/**
* No args constructor for use in serialization
*/
public ProcessInstanceFilter() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ProcessInstanceFilter withName(String name) {
this.name = name;
return this;
}
public String getProcessDefinitionId() {
return processDefinitionId;
}
public void setProcessDefinitionId(String id) {
this.processDefinitionId = id;
}
public ProcessInstanceFilter withProcessDefinitionId(String id) {
this.processDefinitionId = id;
return this;
}
public String getProcessDefinitionKey() {
return processDefinitionKey;
}
public void setProcessDefinitionKey(String key) {
this.processDefinitionKey = key;
}
public ProcessInstanceFilter withProcessDefinitionKey(String key) {
this.processDefinitionKey = key;
return this;
}
public String getSort() {
return sort;
}
public void setSort(String sort) {
this.sort = sort;
}
public ProcessInstanceFilter withSort(String sort) {
this.sort = sort;
return this;
}
public Boolean isAsc() {
return asc;
}
public void setAsc(Boolean asc) {
this.asc = asc;
}
public ProcessInstanceFilter withAsc(Boolean asc) {
this.asc = asc;
return this;
}
public State getState() {
return state;
}
public void setState(State state) {
this.state = state;
}
public ProcessInstanceFilter withState(State state) {
this.state = state;
return this;
}
}

View File

@ -0,0 +1,101 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"filterId",
"filter",
"appDefinitionId",
"page",
"size"
})
public class ProcessInstanceFilterRepresentation {
@JsonProperty("filterId")
private Long filterId;
@JsonProperty("filter")
private ProcessInstanceFilter filter;
@JsonProperty("appDefinitionId")
private Long appDefinitionId;
@JsonProperty("page")
private Integer page;
@JsonProperty("size")
private Integer size;
/**
* No args constructor for use in serialization
*/
public ProcessInstanceFilterRepresentation() {
}
public Long getFilterId() {
return filterId;
}
public void setFilterId(Long filterId) {
this.filterId = filterId;
}
public ProcessInstanceFilterRepresentation withFilterId(Long filterId) {
this.filterId = filterId;
return this;
}
public ProcessInstanceFilter getFilter() {
return filter;
}
public void setFilter(ProcessInstanceFilter filter) {
this.filter = filter;
}
public ProcessInstanceFilterRepresentation withFilter(ProcessInstanceFilter filter) {
this.filter = filter;
return this;
}
public Long getAppDefinitionId() {
return appDefinitionId;
}
public void setAppDefinitionId(Long appDefinitionId) {
this.appDefinitionId = appDefinitionId;
}
public ProcessInstanceFilterRepresentation withAppDefinitionId(Long appDefinitionId) {
this.appDefinitionId = appDefinitionId;
return this;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public ProcessInstanceFilterRepresentation withPage(Integer page) {
this.page = page;
return this;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public ProcessInstanceFilterRepresentation withSize(Integer size) {
this.size = size;
return this;
}
}

View File

@ -45,6 +45,8 @@ public class ProcessInstanceQueryRepresentation {
private String processDefinitionId;
@JsonProperty("processInstanceId")
private String processInstanceId;
@JsonProperty("page")
private Integer page;
@JsonProperty("size")
private Integer size;
@JsonProperty("sort")
@ -98,6 +100,19 @@ public class ProcessInstanceQueryRepresentation {
this.processInstanceId = processInstanceId;
return this;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public ProcessInstanceQueryRepresentation withPage(Integer page) {
this.page = page;
return this;
}
public Integer getSize() {
return size;

View File

@ -0,0 +1,73 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"id",
"type",
"value"
})
public class ProcessInstanceVariable {
@JsonProperty("id")
private String id;
@JsonProperty("type")
private String type;
@JsonProperty("value")
private Object value;
/**
* No args constructor for use in serialization
*/
public ProcessInstanceVariable() {
}
public ProcessInstanceVariable(String id, String type, Object value) {
this.id = id;
this.type = type;
this.value = value;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public ProcessInstanceVariable withId(String id) {
this.id = id;
return this;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public ProcessInstanceVariable withType(String type) {
this.type = type;
return this;
}
public Object getValue() {
return value;
}
public void setValue(Object value) {
this.value = value;
}
public ProcessInstanceVariable withValue(Object value) {
this.value = value;
return this;
}
}

View File

@ -2,15 +2,12 @@
package com.inteligr8.alfresco.activiti.model;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
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;
import com.inteligr8.activiti.model.Datum;
/**
@ -26,7 +23,7 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder;
"start",
"total"
})
public class ResultListDataRepresentation<T extends Datum> {
public class ResultListDataRepresentation<T extends Datum> extends Datum {
@JsonProperty("data")
private List<T> data = new ArrayList<>();
@ -36,8 +33,6 @@ public class ResultListDataRepresentation<T extends Datum> {
private Integer start;
@JsonProperty("total")
private Integer total;
@JsonIgnore
private Map<String, Object> additionalProperties = new HashMap<String, Object>();
@JsonProperty("data")
public List<T> getData() {
@ -99,19 +94,4 @@ public class ResultListDataRepresentation<T extends Datum> {
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 ResultListDataRepresentation<T> withAdditionalProperty(String name, Object value) {
this.additionalProperties.put(name, value);
return this;
}
}

View File

@ -1,12 +1,16 @@
package com.inteligr8.alfresco.activiti.model;
import java.time.OffsetDateTime;
import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import com.inteligr8.activiti.model.Datum;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
@ -43,7 +47,7 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder;
"taskDefinitionKey",
"variables"
})
public class Task {
public class Task extends Datum {
@JsonProperty("adhocTaskCanBeReassigned")
private Boolean adhocTaskCanBeReassigned;
@ -52,15 +56,18 @@ public class Task {
@JsonProperty("category")
private String category;
@JsonProperty("created")
private String created;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime created;
@JsonProperty("description")
private String description;
@JsonProperty("dueDate")
private String dueDate;
private OffsetDateTime dueDate;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
@JsonProperty("duration")
private Long duration;
@JsonProperty("endDate")
private String endDate;
private OffsetDateTime endDate;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
@JsonProperty("executionId")
private String executionId;
@JsonProperty("formKey")
@ -155,15 +162,15 @@ public class Task {
return this;
}
public String getCreated() {
public OffsetDateTime getCreated() {
return created;
}
public void setCreated(String created) {
public void setCreated(OffsetDateTime created) {
this.created = created;
}
public Task withCreated(String created) {
public Task withCreated(OffsetDateTime created) {
this.created = created;
return this;
}
@ -181,15 +188,15 @@ public class Task {
return this;
}
public String getDueDate() {
public OffsetDateTime getDueDate() {
return dueDate;
}
public void setDueDate(String dueDate) {
public void setDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
}
public Task withDueDate(String dueDate) {
public Task withDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
return this;
}
@ -207,15 +214,15 @@ public class Task {
return this;
}
public String getEndDate() {
public OffsetDateTime getEndDate() {
return endDate;
}
public void setEndDate(String endDate) {
public void setEndDate(OffsetDateTime endDate) {
this.endDate = endDate;
}
public Task withEndDate(String endDate) {
public Task withEndDate(OffsetDateTime endDate) {
this.endDate = endDate;
return this;
}

View File

@ -0,0 +1,181 @@
package com.inteligr8.alfresco.activiti.model;
import java.time.OffsetDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
import com.inteligr8.activiti.model.Datum;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"name",
"assignment",
"dueAfter",
"dueBefore",
"processDefinitionId",
"processDefinitionKey",
"sort",
"asc",
"state"
})
public class TaskFilter extends Datum {
public enum State {
@JsonProperty("all")
All,
@JsonProperty("completed")
Completed,
@JsonProperty("running")
Running
}
@JsonProperty("name")
private String name;
@JsonProperty("assignment")
private String assignment;
@JsonProperty("dueBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueBefore;
@JsonProperty("dueAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueAfter;
@JsonProperty("processDefinitionId")
private String processDefinitionId;
@JsonProperty("processDefinitionKey")
private String processDefinitionKey;
@JsonProperty("sort")
private String sort;
@JsonProperty("asc")
private Boolean asc;
@JsonProperty("state")
private State state;
/**
* No args constructor for use in serialization
*/
public TaskFilter() {
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public TaskFilter withName(String name) {
this.name = name;
return this;
}
public String getAssignment() {
return assignment;
}
public void setAssignment(String assignment) {
this.assignment = assignment;
}
public TaskFilter withAssignment(String assignment) {
this.assignment = assignment;
return this;
}
public OffsetDateTime getDueAfter() {
return dueAfter;
}
public void setDueAfter(OffsetDateTime dueAfter) {
this.dueAfter = dueAfter;
}
public TaskFilter withDueAfter(OffsetDateTime dueAfter) {
this.dueAfter = dueAfter;
return this;
}
public OffsetDateTime getDueBefore() {
return dueBefore;
}
public void setDueBefore(OffsetDateTime dueBefore) {
this.dueBefore = dueBefore;
}
public TaskFilter withDueBefore(OffsetDateTime dueBefore) {
this.dueBefore = dueBefore;
return this;
}
public String getProcessDefinitionId() {
return processDefinitionId;
}
public void setProcessDefinitionId(String id) {
this.processDefinitionId = id;
}
public TaskFilter withProcessDefinitionId(String id) {
this.processDefinitionId = id;
return this;
}
public String getProcessDefinitionKey() {
return processDefinitionKey;
}
public void setProcessDefinitionKey(String key) {
this.processDefinitionKey = key;
}
public TaskFilter withProcessDefinitionKey(String key) {
this.processDefinitionKey = key;
return this;
}
public String getSort() {
return sort;
}
public void setSort(String sort) {
this.sort = sort;
}
public TaskFilter withSort(String sort) {
this.sort = sort;
return this;
}
public Boolean isAsc() {
return asc;
}
public void setAsc(Boolean asc) {
this.asc = asc;
}
public TaskFilter withAsc(Boolean asc) {
this.asc = asc;
return this;
}
public State getState() {
return state;
}
public void setState(State state) {
this.state = state;
}
public TaskFilter withState(State state) {
this.state = state;
return this;
}
}

View File

@ -0,0 +1,101 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"filterId",
"filter",
"appDefinitionId",
"page",
"size"
})
public class TaskFilterRepresentation {
@JsonProperty("filterId")
private Long filterId;
@JsonProperty("filter")
private TaskFilter filter;
@JsonProperty("appDefinitionId")
private Long appDefinitionId;
@JsonProperty("page")
private Integer page;
@JsonProperty("size")
private Integer size;
/**
* No args constructor for use in serialization
*/
public TaskFilterRepresentation() {
}
public Long getFilterId() {
return filterId;
}
public void setFilterId(Long filterId) {
this.filterId = filterId;
}
public TaskFilterRepresentation withFilterId(Long filterId) {
this.filterId = filterId;
return this;
}
public TaskFilter getFilter() {
return filter;
}
public void setFilter(TaskFilter filter) {
this.filter = filter;
}
public TaskFilterRepresentation withFilter(TaskFilter filter) {
this.filter = filter;
return this;
}
public Long getAppDefinitionId() {
return appDefinitionId;
}
public void setAppDefinitionId(Long appDefinitionId) {
this.appDefinitionId = appDefinitionId;
}
public TaskFilterRepresentation withAppDefinitionId(Long appDefinitionId) {
this.appDefinitionId = appDefinitionId;
return this;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public TaskFilterRepresentation withPage(Integer page) {
this.page = page;
return this;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public TaskFilterRepresentation withSize(Integer size) {
this.size = size;
return this;
}
}

View File

@ -0,0 +1,243 @@
package com.inteligr8.alfresco.activiti.model;
import java.time.OffsetDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"text",
"assignment",
"taskId",
"dueAfter",
"dueBefore",
"processInstanceId",
"processDefinitionId",
"appDefinitionId",
"includeProcessInstance",
"includeProcessVariables",
"includeTaskLocalVariables",
"page",
"size",
"sort",
"start",
"state"
})
public class TaskQueryRepresentation {
public enum Sort {
@JsonProperty("created-asc")
CreatedAsc,
@JsonProperty("created-desc")
CreatedDesc,
@JsonProperty("due-asc")
DueAsc,
@JsonProperty("due-desc")
DueDesc,
}
public enum State {
@JsonProperty("all")
All,
@JsonProperty("completed")
Completed,
@JsonProperty("active")
Active
}
@JsonProperty("text")
private String text;
@JsonProperty("dueBefore")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueBefore;
@JsonProperty("dueAfter")
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueAfter;
@JsonProperty("taskId")
private String taskId;
@JsonProperty("processInstanceId")
private String processInstanceId;
@JsonProperty("processDefinitionId")
private String processDefinitionId;
@JsonProperty("appDefinitionId")
private Long appDefinitionId;
@JsonProperty("page")
private Integer page;
@JsonProperty("size")
private Integer size;
@JsonProperty("sort")
private Sort sort;
@JsonProperty("start")
private Integer start;
@JsonProperty("state")
private State state;
/**
* No args constructor for use in serialization
*/
public TaskQueryRepresentation() {
}
public String getText() {
return text;
}
public void setText(String text) {
this.text = text;
}
public TaskQueryRepresentation withText(String text) {
this.text = text;
return this;
}
public OffsetDateTime getDueAfter() {
return dueAfter;
}
public void setDueAfter(OffsetDateTime dueAfter) {
this.dueAfter = dueAfter;
}
public TaskQueryRepresentation withDueAfter(OffsetDateTime dueAfter) {
this.dueAfter = dueAfter;
return this;
}
public OffsetDateTime getDueBefore() {
return dueBefore;
}
public void setDueBefore(OffsetDateTime dueBefore) {
this.dueBefore = dueBefore;
}
public TaskQueryRepresentation withDueBefore(OffsetDateTime dueBefore) {
this.dueBefore = dueBefore;
return this;
}
public String getTaskId() {
return taskId;
}
public void setTaskId(String taskId) {
this.taskId = taskId;
}
public TaskQueryRepresentation withTaskId(String taskId) {
this.taskId = taskId;
return this;
}
public Long getAppDefinitionId() {
return appDefinitionId;
}
public void setAppDefinitionId(Long appDefinitionId) {
this.appDefinitionId = appDefinitionId;
}
public TaskQueryRepresentation withAppDefinitionId(Long appDefinitionId) {
this.appDefinitionId = appDefinitionId;
return this;
}
public String getProcessDefinitionId() {
return processDefinitionId;
}
public void setProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
}
public TaskQueryRepresentation withProcessDefinitionId(String processDefinitionId) {
this.processDefinitionId = processDefinitionId;
return this;
}
public String getProcessInstanceId() {
return processInstanceId;
}
public void setProcessInstanceId(String processInstanceId) {
this.processInstanceId = processInstanceId;
}
public TaskQueryRepresentation withProcessInstanceId(String processInstanceId) {
this.processInstanceId = processInstanceId;
return this;
}
public Integer getPage() {
return page;
}
public void setPage(Integer page) {
this.page = page;
}
public TaskQueryRepresentation withPage(Integer page) {
this.page = page;
return this;
}
public Integer getSize() {
return size;
}
public void setSize(Integer size) {
this.size = size;
}
public TaskQueryRepresentation withSize(Integer size) {
this.size = size;
return this;
}
public Sort getSort() {
return sort;
}
public void setSort(Sort sort) {
this.sort = sort;
}
public TaskQueryRepresentation withSort(Sort sort) {
this.sort = sort;
return this;
}
public Integer getStart() {
return start;
}
public void setStart(Integer start) {
this.start = start;
}
public TaskQueryRepresentation withStart(Integer start) {
this.start = start;
return this;
}
public State getState() {
return state;
}
public void setState(State state) {
this.state = state;
}
public TaskQueryRepresentation withState(State state) {
this.state = state;
return this;
}
}

View File

@ -1,9 +1,13 @@
package com.inteligr8.alfresco.activiti.model;
import java.time.OffsetDateTime;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import com.fasterxml.jackson.annotation.JsonFormat.Shape;
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
@ -33,7 +37,8 @@ public class TaskUpdate {
@JsonProperty("descriptionSet")
private Boolean descriptionSet;
@JsonProperty("dueDate")
private String dueDate;
@JsonFormat(shape = Shape.STRING, pattern = "yyyy-MM-dd'T'HH:mm:ssXXX")
private OffsetDateTime dueDate;
@JsonProperty("dueDateSet")
private Boolean dueDateSet;
@JsonProperty("formKey")
@ -111,15 +116,15 @@ public class TaskUpdate {
return this;
}
public String getDueDate() {
public OffsetDateTime getDueDate() {
return dueDate;
}
public void setDueDate(String dueDate) {
public void setDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
}
public TaskUpdate withDueDate(String dueDate) {
public TaskUpdate withDueDate(OffsetDateTime dueDate) {
this.dueDate = dueDate;
return this;
}

View File

@ -0,0 +1,42 @@
package com.inteligr8.alfresco.activiti.model;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
@JsonIgnoreProperties(ignoreUnknown = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
public class UserIdentifier {
@JsonProperty
private String userId;
@JsonProperty
private String email;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public UserIdentifier withUserId(String userId) {
this.userId = userId;
return this;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public UserIdentifier withEmail(String email) {
this.email = email;
return this;
}
}