Package org.flowable.rest.service.api
Class RestResponseFactory
- java.lang.Object
-
- org.flowable.rest.service.api.RestResponseFactory
-
public class RestResponseFactory extends Object
Default implementation of aRestResponseFactory. Added a new "createProcessInstanceResponse" method (with a different signature) to conditionally return the process variables that exist within the process instance when the first wait state is encountered (or when the process instance completes). Also added the population of a "completed" flag - within both the original "createProcessInstanceResponse" method and the new one with the different signature - to let the caller know whether the process instance has completed or not.- Author:
- Frederik Heremans, Ryan Johnston (@rjfsu)
-
-
Field Summary
Fields Modifier and Type Field Description static StringBYTE_ARRAY_VARIABLE_TYPEprotected com.fasterxml.jackson.databind.ObjectMapperobjectMapperstatic StringSERIALIZABLE_VARIABLE_TYPEstatic intVARIABLE_EXECUTIONstatic intVARIABLE_HISTORY_DETAILstatic intVARIABLE_HISTORY_PROCESSstatic intVARIABLE_HISTORY_TASKstatic intVARIABLE_HISTORY_VARINSTANCEstatic intVARIABLE_PROCESSstatic intVARIABLE_TASKstatic intVARIABLE_VARINSTANCEprotected List<RestVariableConverter>variableConverters
-
Constructor Summary
Constructors Constructor Description RestResponseFactory(com.fasterxml.jackson.databind.ObjectMapper objectMapper)
-
Method Summary
-
-
-
Field Detail
-
VARIABLE_TASK
public static final int VARIABLE_TASK
- See Also:
- Constant Field Values
-
VARIABLE_EXECUTION
public static final int VARIABLE_EXECUTION
- See Also:
- Constant Field Values
-
VARIABLE_PROCESS
public static final int VARIABLE_PROCESS
- See Also:
- Constant Field Values
-
VARIABLE_VARINSTANCE
public static final int VARIABLE_VARINSTANCE
- See Also:
- Constant Field Values
-
VARIABLE_HISTORY_TASK
public static final int VARIABLE_HISTORY_TASK
- See Also:
- Constant Field Values
-
VARIABLE_HISTORY_PROCESS
public static final int VARIABLE_HISTORY_PROCESS
- See Also:
- Constant Field Values
-
VARIABLE_HISTORY_VARINSTANCE
public static final int VARIABLE_HISTORY_VARINSTANCE
- See Also:
- Constant Field Values
-
VARIABLE_HISTORY_DETAIL
public static final int VARIABLE_HISTORY_DETAIL
- See Also:
- Constant Field Values
-
BYTE_ARRAY_VARIABLE_TYPE
public static final String BYTE_ARRAY_VARIABLE_TYPE
- See Also:
- Constant Field Values
-
SERIALIZABLE_VARIABLE_TYPE
public static final String SERIALIZABLE_VARIABLE_TYPE
- See Also:
- Constant Field Values
-
objectMapper
protected com.fasterxml.jackson.databind.ObjectMapper objectMapper
-
variableConverters
protected List<RestVariableConverter> variableConverters
-
-
Method Detail
-
createTaskResponseList
public List<TaskResponse> createTaskResponseList(List<org.flowable.task.api.Task> tasks)
-
createTaskResponse
public TaskResponse createTaskResponse(org.flowable.task.api.Task task)
-
createTaskResponse
public TaskResponse createTaskResponse(org.flowable.task.api.Task task, RestUrlBuilder urlBuilder)
-
createDeploymentResponseList
public List<DeploymentResponse> createDeploymentResponseList(List<Deployment> deployments)
-
createDeploymentResponse
public DeploymentResponse createDeploymentResponse(Deployment deployment)
-
createDeploymentResponse
public DeploymentResponse createDeploymentResponse(Deployment deployment, RestUrlBuilder urlBuilder)
-
createDeploymentResourceResponseList
public List<DeploymentResourceResponse> createDeploymentResourceResponseList(String deploymentId, List<String> resourceList, ContentTypeResolver contentTypeResolver)
-
createDeploymentResourceResponse
public DeploymentResourceResponse createDeploymentResourceResponse(String deploymentId, String resourceId, String contentType)
-
createDeploymentResourceResponse
public DeploymentResourceResponse createDeploymentResourceResponse(String deploymentId, String resourceId, String contentType, RestUrlBuilder urlBuilder)
-
createProcessDefinitionResponseList
public List<ProcessDefinitionResponse> createProcessDefinitionResponseList(List<ProcessDefinition> processDefinitions)
-
createProcessDefinitionResponse
public ProcessDefinitionResponse createProcessDefinitionResponse(ProcessDefinition processDefinition)
-
createProcessDefinitionResponse
public ProcessDefinitionResponse createProcessDefinitionResponse(ProcessDefinition processDefinition, RestUrlBuilder urlBuilder)
-
getFormModelString
public String getFormModelString(FormModelResponse formModelResponse)
-
createRestVariables
public List<RestVariable> createRestVariables(Map<String,Object> variables, String id, int variableType, RestVariable.RestVariableScope scope)
-
createRestVariable
public RestVariable createRestVariable(String name, Object value, RestVariable.RestVariableScope scope, String id, int variableType, boolean includeBinaryValue)
-
createRestVariable
public RestVariable createRestVariable(String name, Object value, RestVariable.RestVariableScope scope, String id, int variableType, boolean includeBinaryValue, RestUrlBuilder urlBuilder)
-
createBinaryRestVariable
public RestVariable createBinaryRestVariable(String name, RestVariable.RestVariableScope scope, String type, String taskId, String executionId, String processInstanceId)
-
getVariableValue
public Object getVariableValue(RestVariable restVariable)
-
getVariableValue
public Object getVariableValue(QueryVariable restVariable)
-
createRestIdentityLinks
public List<RestIdentityLink> createRestIdentityLinks(List<org.flowable.identitylink.api.IdentityLink> links)
-
createRestIdentityLink
public RestIdentityLink createRestIdentityLink(org.flowable.identitylink.api.IdentityLink link)
-
createRestIdentityLink
public RestIdentityLink createRestIdentityLink(org.flowable.identitylink.api.IdentityLink link, RestUrlBuilder urlBuilder)
-
createRestIdentityLink
public RestIdentityLink createRestIdentityLink(String type, String userId, String groupId, String taskId, String processDefinitionId, String processInstanceId)
-
createRestIdentityLink
public RestIdentityLink createRestIdentityLink(String type, String userId, String groupId, String taskId, String processDefinitionId, String processInstanceId, RestUrlBuilder urlBuilder)
-
createRestCommentList
public List<CommentResponse> createRestCommentList(List<Comment> comments)
-
createRestComment
public CommentResponse createRestComment(Comment comment)
-
createRestComment
public CommentResponse createRestComment(Comment comment, RestUrlBuilder urlBuilder)
-
createEventResponseList
public List<EventResponse> createEventResponseList(List<Event> events)
-
createEventResponse
public EventResponse createEventResponse(Event event)
-
createEventResponse
public EventResponse createEventResponse(Event event, RestUrlBuilder urlBuilder)
-
createAttachmentResponse
public AttachmentResponse createAttachmentResponse(Attachment attachment)
-
createAttachmentResponse
public AttachmentResponse createAttachmentResponse(Attachment attachment, RestUrlBuilder urlBuilder)
-
createProcessInstanceResponseList
public List<ProcessInstanceResponse> createProcessInstanceResponseList(List<ProcessInstance> processInstances)
-
createProcessInstanceResponse
public ProcessInstanceResponse createProcessInstanceResponse(ProcessInstance processInstance)
-
createProcessInstanceResponse
public ProcessInstanceResponse createProcessInstanceResponse(ProcessInstance processInstance, RestUrlBuilder urlBuilder)
-
createProcessInstanceResponse
public ProcessInstanceResponse createProcessInstanceResponse(ProcessInstance processInstance, boolean returnVariables, Map<String,Object> runtimeVariableMap, List<org.flowable.variable.api.history.HistoricVariableInstance> historicVariableList)
-
internalCreateProcessInstanceResponse
protected ProcessInstanceResponse internalCreateProcessInstanceResponse(ProcessInstance processInstance, RestUrlBuilder urlBuilder)
-
createExecutionResponseList
public List<ExecutionResponse> createExecutionResponseList(List<Execution> executions)
-
createExecutionResponse
public ExecutionResponse createExecutionResponse(Execution execution)
-
createExecutionResponse
public ExecutionResponse createExecutionResponse(Execution execution, RestUrlBuilder urlBuilder)
-
createActivityInstanceResponseList
public List<ActivityInstanceResponse> createActivityInstanceResponseList(List<ActivityInstance> activityInstances)
-
createActivityInstanceResponse
public ActivityInstanceResponse createActivityInstanceResponse(ActivityInstance activityInstance)
-
createActivityInstanceResponse
public ActivityInstanceResponse createActivityInstanceResponse(ActivityInstance activityInstance, RestUrlBuilder urlBuilder)
-
createVariableInstanceResponseList
public List<VariableInstanceResponse> createVariableInstanceResponseList(List<org.flowable.variable.api.persistence.entity.VariableInstance> variableInstances)
-
createVariableInstanceResponse
public VariableInstanceResponse createVariableInstanceResponse(org.flowable.variable.api.persistence.entity.VariableInstance variableInstance)
-
createVariableInstanceResponse
public VariableInstanceResponse createVariableInstanceResponse(org.flowable.variable.api.persistence.entity.VariableInstance variableInstance, RestUrlBuilder urlBuilder)
-
createFormDataResponse
public FormDataResponse createFormDataResponse(FormData formData)
-
createHistoricProcessInstanceResponseList
public List<HistoricProcessInstanceResponse> createHistoricProcessInstanceResponseList(List<HistoricProcessInstance> processInstances)
-
createHistoricProcessInstanceResponse
public HistoricProcessInstanceResponse createHistoricProcessInstanceResponse(HistoricProcessInstance processInstance)
-
createHistoricProcessInstanceResponse
public HistoricProcessInstanceResponse createHistoricProcessInstanceResponse(HistoricProcessInstance processInstance, RestUrlBuilder urlBuilder)
-
createHistoricTaskInstanceResponseList
public List<HistoricTaskInstanceResponse> createHistoricTaskInstanceResponseList(List<org.flowable.task.api.history.HistoricTaskInstance> taskInstances)
-
createHistoricTaskInstanceResponse
public HistoricTaskInstanceResponse createHistoricTaskInstanceResponse(org.flowable.task.api.history.HistoricTaskInstance taskInstance)
-
createHistoricTaskInstanceResponse
public HistoricTaskInstanceResponse createHistoricTaskInstanceResponse(org.flowable.task.api.history.HistoricTaskInstance taskInstance, RestUrlBuilder urlBuilder)
-
createHistoricTaskLogEntryResponseList
public List<HistoricTaskLogEntryResponse> createHistoricTaskLogEntryResponseList(List<org.flowable.task.api.history.HistoricTaskLogEntry> logEntries)
-
createHistoricTaskLogEntryResponse
public HistoricTaskLogEntryResponse createHistoricTaskLogEntryResponse(org.flowable.task.api.history.HistoricTaskLogEntry logEntry, RestUrlBuilder urlBuilder)
-
createHistoricActivityInstanceResponseList
public List<HistoricActivityInstanceResponse> createHistoricActivityInstanceResponseList(List<HistoricActivityInstance> activityInstances)
-
createHistoricActivityInstanceResponse
public HistoricActivityInstanceResponse createHistoricActivityInstanceResponse(HistoricActivityInstance activityInstance)
-
createHistoricActivityInstanceResponse
public HistoricActivityInstanceResponse createHistoricActivityInstanceResponse(HistoricActivityInstance activityInstance, RestUrlBuilder urlBuilder)
-
createHistoricVariableInstanceResponseList
public List<HistoricVariableInstanceResponse> createHistoricVariableInstanceResponseList(List<org.flowable.variable.api.history.HistoricVariableInstance> variableInstances)
-
createHistoricVariableInstanceResponse
public HistoricVariableInstanceResponse createHistoricVariableInstanceResponse(org.flowable.variable.api.history.HistoricVariableInstance variableInstance)
-
createHistoricVariableInstanceResponse
public HistoricVariableInstanceResponse createHistoricVariableInstanceResponse(org.flowable.variable.api.history.HistoricVariableInstance variableInstance, RestUrlBuilder urlBuilder)
-
createHistoricDetailResponse
public List<HistoricDetailResponse> createHistoricDetailResponse(List<HistoricDetail> detailList)
-
createHistoricDetailResponse
public HistoricDetailResponse createHistoricDetailResponse(HistoricDetail detail)
-
createHistoricDetailResponse
public HistoricDetailResponse createHistoricDetailResponse(HistoricDetail detail, RestUrlBuilder urlBuilder)
-
createHistoricIdentityLinkResponseList
public List<HistoricIdentityLinkResponse> createHistoricIdentityLinkResponseList(List<org.flowable.identitylink.api.history.HistoricIdentityLink> identityLinks)
-
createHistoricIdentityLinkResponse
public HistoricIdentityLinkResponse createHistoricIdentityLinkResponse(org.flowable.identitylink.api.history.HistoricIdentityLink identityLink)
-
createHistoricIdentityLinkResponse
public HistoricIdentityLinkResponse createHistoricIdentityLinkResponse(org.flowable.identitylink.api.history.HistoricIdentityLink identityLink, RestUrlBuilder urlBuilder)
-
createTableResponseList
public List<TableResponse> createTableResponseList(Map<String,Long> tableCounts)
-
createTableResponse
public TableResponse createTableResponse(String name, Long count)
-
createTableResponse
public TableResponse createTableResponse(String name, Long count, RestUrlBuilder urlBuilder)
-
createJobResponseList
public List<JobResponse> createJobResponseList(List<org.flowable.job.api.Job> jobs)
-
createTimerJobResponseList
public List<JobResponse> createTimerJobResponseList(List<org.flowable.job.api.Job> jobs)
-
createSuspendedJobResponseList
public List<JobResponse> createSuspendedJobResponseList(List<org.flowable.job.api.Job> jobs)
-
createDeadLetterJobResponseList
public List<JobResponse> createDeadLetterJobResponseList(List<org.flowable.job.api.Job> jobs)
-
createJobResponseList
protected List<JobResponse> createJobResponseList(List<org.flowable.job.api.Job> jobs, String[] urlJobSegments)
-
createJobResponse
public JobResponse createJobResponse(org.flowable.job.api.Job job)
-
createTimerJobResponse
public JobResponse createTimerJobResponse(org.flowable.job.api.Job job)
-
createSuspendedJobResponse
public JobResponse createSuspendedJobResponse(org.flowable.job.api.Job job)
-
createDeadLetterJobResponse
public JobResponse createDeadLetterJobResponse(org.flowable.job.api.Job job)
-
createJobResponse
public JobResponse createJobResponse(org.flowable.job.api.Job job, RestUrlBuilder urlBuilder)
-
createJobResponse
protected JobResponse createJobResponse(org.flowable.job.api.Job job, RestUrlBuilder urlBuilder, String[] urlJobSegments)
-
createHistoryJobResponseList
public List<HistoryJobResponse> createHistoryJobResponseList(List<org.flowable.job.api.HistoryJob> jobs)
-
createHistoryJobResponse
public HistoryJobResponse createHistoryJobResponse(org.flowable.job.api.HistoryJob job)
-
createHistoryJobResponse
public HistoryJobResponse createHistoryJobResponse(org.flowable.job.api.HistoryJob job, RestUrlBuilder urlBuilder)
-
createBatchResponse
public List<BatchResponse> createBatchResponse(List<org.flowable.batch.api.Batch> batches)
-
createBatchResponse
public BatchResponse createBatchResponse(org.flowable.batch.api.Batch batch)
-
createBatchResponse
public BatchResponse createBatchResponse(org.flowable.batch.api.Batch batch, RestUrlBuilder urlBuilder)
-
createBatchPartResponse
public List<BatchPartResponse> createBatchPartResponse(List<org.flowable.batch.api.BatchPart> batchParts)
-
createBatchPartResponse
public BatchPartResponse createBatchPartResponse(org.flowable.batch.api.BatchPart batchPart)
-
createBatchPartResponse
public BatchPartResponse createBatchPartResponse(org.flowable.batch.api.BatchPart batchPart, RestUrlBuilder urlBuilder)
-
createEventSubscriptionResponseList
public List<EventSubscriptionResponse> createEventSubscriptionResponseList(List<org.flowable.eventsubscription.api.EventSubscription> eventSubscriptions)
-
createEventSubscriptionResponse
public EventSubscriptionResponse createEventSubscriptionResponse(org.flowable.eventsubscription.api.EventSubscription eventSubscription)
-
createEventSubscriptionResponse
public EventSubscriptionResponse createEventSubscriptionResponse(org.flowable.eventsubscription.api.EventSubscription eventSubscription, RestUrlBuilder urlBuilder)
-
createUserResponseList
public List<UserResponse> createUserResponseList(List<org.flowable.idm.api.User> users)
-
createUserResponseList
public List<UserResponse> createUserResponseList(List<org.flowable.idm.api.User> users, boolean includePassword)
-
createUserResponse
public UserResponse createUserResponse(org.flowable.idm.api.User user, boolean includePassword)
-
createUserResponse
public UserResponse createUserResponse(org.flowable.idm.api.User user, boolean incudePassword, RestUrlBuilder urlBuilder)
-
createUserInfoKeysResponse
public List<UserInfoResponse> createUserInfoKeysResponse(List<String> keys, String userId)
-
createUserInfoResponse
public UserInfoResponse createUserInfoResponse(String key, String value, String userId)
-
createUserInfoResponse
public UserInfoResponse createUserInfoResponse(String key, String value, String userId, RestUrlBuilder urlBuilder)
-
createGroupResponseList
public List<GroupResponse> createGroupResponseList(List<org.flowable.idm.api.Group> groups)
-
createGroupResponse
public GroupResponse createGroupResponse(org.flowable.idm.api.Group group)
-
createGroupResponse
public GroupResponse createGroupResponse(org.flowable.idm.api.Group group, RestUrlBuilder urlBuilder)
-
createMembershipResponse
public MembershipResponse createMembershipResponse(String userId, String groupId)
-
createMembershipResponse
public MembershipResponse createMembershipResponse(String userId, String groupId, RestUrlBuilder urlBuilder)
-
createModelResponseList
public List<ModelResponse> createModelResponseList(List<Model> models)
-
createModelResponse
public ModelResponse createModelResponse(Model model)
-
createModelResponse
public ModelResponse createModelResponse(Model model, RestUrlBuilder urlBuilder)
-
createDecisionResponseList
public List<DecisionResponse> createDecisionResponseList(List<org.flowable.dmn.api.DmnDecision> decisions, String processDefinitionId)
-
createDecisionResponse
public DecisionResponse createDecisionResponse(org.flowable.dmn.api.DmnDecision decision, String processDefinitionId)
-
createDecisionResponse
public DecisionResponse createDecisionResponse(org.flowable.dmn.api.DmnDecision decision, String processDefinitionId, RestUrlBuilder urlBuilder)
-
createFormDefinitionResponseList
public List<FormDefinitionResponse> createFormDefinitionResponseList(List<org.flowable.form.api.FormDefinition> formDefinitions, String processDefinitionId)
-
createFormDefintionResponse
public FormDefinitionResponse createFormDefintionResponse(org.flowable.form.api.FormDefinition formDefinition, String processDefinitionId)
-
createFormDefinitionResponse
public FormDefinitionResponse createFormDefinitionResponse(org.flowable.form.api.FormDefinition formDefinition, String processDefinitionId, RestUrlBuilder urlBuilder)
-
getVariableConverters
public List<RestVariableConverter> getVariableConverters()
- Returns:
- list of
RestVariableConverterwhich are used by this factory. Additional converters can be added and existing ones replaced ore removed.
-
initializeVariableConverters
protected void initializeVariableConverters()
Called once when the converters need to be initialized. Override of custom conversion needs to be done between java and rest.
-
formatUrl
protected String formatUrl(String serverRootUrl, String[] fragments, Object... arguments)
-
createUrlBuilder
protected RestUrlBuilder createUrlBuilder()
-
-