public VariableInstanceList getVariablesCurrentState(long processInstanceId) { logger.debug("About to search for variables within process instance '{}'", processInstanceId); Collection<VariableDesc> variableDescs = runtimeDataService.getVariablesCurrentState(processInstanceId); logger.debug("Found {} variables within process instance '{}'", variableDescs.size(), processInstanceId); VariableInstanceList variableInstanceList = convertToVariablesList(variableDescs); logger.debug("Returning result of variables search: {}", variableInstanceList); return variableInstanceList; }
@Override public Collection<ProcessVariableSummary> getVariablesCurrentState(long processInstanceId, String processId) { ProcessInstanceDesc piDesc = dataService.getProcessInstanceById(processInstanceId); Map<String, String> properties = new HashMap<String, String>(bpmn2Service.getProcessVariables(piDesc.getDeploymentId(), processId)); return VariableHelper.adaptCollection(dataService.getVariablesCurrentState(processInstanceId), properties, processInstanceId); }
public org.kie.server.api.model.instance.ProcessInstance getProcessInstanceById(long processInstanceId, boolean withVars) { ProcessInstanceDesc processInstanceDesc = runtimeDataService.getProcessInstanceById(processInstanceId); if (processInstanceDesc == null) { throw new ProcessInstanceNotFoundException("Could not find process instance with id " + processInstanceId); } org.kie.server.api.model.instance.ProcessInstance processInstance = convertToProcessInstance(processInstanceDesc); if (Boolean.TRUE.equals(withVars)) { Collection<VariableDesc> variableDescs = runtimeDataService.getVariablesCurrentState(processInstanceId); Map<String, Object> vars = new HashMap<String, Object>(); for (VariableDesc var : variableDescs) { vars.put(var.getVariableId(), var.getNewValue()); } processInstance.setVariables(vars); } return processInstance; }
private List<ProcessVariableSummary> getProcessVariables(QueryFilter filter) { Long processInstanceId = null; String processId = ""; String deploymentId = ""; if (filter.getParams() != null) { processInstanceId = Long.valueOf((String) filter.getParams().get("processInstanceId")); processId = (String) filter.getParams().get("processDefId"); deploymentId = (String) filter.getParams().get("deploymentId"); } // append 1 to the count to check if there are further pages org.kie.internal.query.QueryFilter qf = new org.kie.internal.query.QueryFilter(filter.getOffset(), filter.getCount() + 1, filter.getOrderBy(), filter.isAscending()); Map<String, String> properties = new HashMap<String, String>(bpmn2Service.getProcessVariables(deploymentId, processId)); Collection<ProcessVariableSummary> processVariables = VariableHelper.adaptCollection(dataService.getVariablesCurrentState(processInstanceId), properties, processInstanceId); List<ProcessVariableSummary> processVariablesSums = new ArrayList<ProcessVariableSummary>(processVariables.size()); for (ProcessVariableSummary pv : processVariables) { if (filter.getParams().get("textSearch") == null || ((String) filter.getParams().get("textSearch")).isEmpty()) { processVariablesSums.add(pv); } else if (pv.getVariableId().toLowerCase().contains((String) filter.getParams().get("textSearch"))) { processVariablesSums.add(pv); } } return processVariablesSums; }
filter.getOrderBy(), filter.isAscending()); Map<String, String> properties = new HashMap<String, String>(bpmn2Service.getProcessVariables(deploymentId, processId)); Collection<ProcessVariableSummary> processVariables = VariableHelper.adaptCollection(dataService.getVariablesCurrentState(processInstanceId), properties, processInstanceId); SimpleDateFormat sdf = new SimpleDateFormat( Document.DOCUMENT_DATE_PATTERN );