private void addClaimActionButton(Element parent) { String actionButtonId = "action-button-claim"; Element buttonNode = parent.ownerDocument().createElement("button") .attr("class", "btn btn-warning") .attr("disabled", "true") .attr("id", actionButtonId); parent.appendChild(buttonNode); Element cancelButtonIcon = parent.ownerDocument().createElement("span") .attr("class", "glyphicon glyphicon-download"); parent.appendChild(buttonNode); buttonNode.appendChild(cancelButtonIcon); buttonNode.appendText(i18Source.getMessage("button.claim")); Long processStateConfigurationId = task.getCurrentProcessStateConfiguration().getId(); scriptBuilder.append("$('#").append(actionButtonId) .append("').click(function() { claimTaskFromQueue('#action-button-claim','null', '") .append(processStateConfigurationId).append("','") .append(task.getInternalTaskId()) .append("'); });") .append("$('#").append(actionButtonId) .append("').tooltip({placement: 'bottom', title: '").append(i18Source.getMessage("button.claim.descrition")).append("'});"); }
@Override public void withContext(ProcessToolContext ctx) { long t0 = System.currentTimeMillis(); StartProcessResult result = context.getBpmSession().startProcess(bpmDefinitionId, null, "portlet"); ProcessInstance instance = result.getProcessInstance(); long t1 = System.currentTimeMillis(); for (String key : simpleAttributes.keySet()) { if (key.equals(ProcessInstance.EXTERNAL_KEY_PROPERTY)) instance.setExternalKey(simpleAttributes.get(key)); else instance.setSimpleAttribute(key, simpleAttributes.get(key)); } long t2 = System.currentTimeMillis(); List<BpmTask> tasks = result.getTasksAssignedToCreator(); if (!tasks.isEmpty()) { BpmTask task = tasks.get(0); newProcessInstanceBO.setTaskId(task.getInternalTaskId()); newProcessInstanceBO.setProcessStateConfigurationId(task.getCurrentProcessStateConfiguration().getId().toString()); } long t3 = System.currentTimeMillis(); performanceLogger.log(Level.FINEST, "startNewProcess.withContext total: " + (t3 - t0) + "ms, " + "[1]: " + (t1 - t0) + "ms, " + "[2]: " + (t2 - t1) + "ms, " + "[3]: " + (t3 - t2) + "ms, " ); } }, ExecutionType.TRANSACTION);
ProcessStateConfiguration config = task.getCurrentProcessStateConfiguration(); String processDescription = context.getMessageSource().getMessage(config.getDefinition().getDescription()); String processVersion = String.valueOf(config.getDefinition().getBpmDefinitionVersion());