@Override @EventListener public void sendSignal(SignalPayload signalPayload) { runtimeService.signalEventReceived(signalPayload.getName(), signalPayload.getVariables()); }
@Override public void signalEventReceived(String signalName, String executionId, Map<String, Object> processVariables, boolean async, String tenantId) { try { if (tenantId != null) { if (async) { getProcessEngine().getRuntimeService().signalEventReceivedAsyncWithTenantId(signalName, tenantId); } else { getProcessEngine().getRuntimeService().signalEventReceivedWithTenantId(signalName, processVariables, tenantId); } } else { if (async) { getProcessEngine().getRuntimeService().signalEventReceivedAsync(signalName, executionId); } else { getProcessEngine().getRuntimeService().signalEventReceived(signalName, executionId, processVariables); } } } catch (org.activiti.engine.ActivitiException e) { handleActivitiException(e); } }
runtimeService.signalEventReceivedWithTenantId(signalRequest.getSignalName(), signalVariables, signalRequest.getTenantId()); } else { runtimeService.signalEventReceived(signalRequest.getSignalName(), signalVariables);
@Override @EventListener public void sendSignal(SignalPayload signalPayload) { runtimeService.signalEventReceived(signalPayload.getName(), signalPayload.getVariables()); }
@Override public void signal(SignalPayload signalPayload) { //@TODO: define security policies for signalling runtimeService.signalEventReceived(signalPayload.getName(), signalPayload.getVariables()); }
@Override public void signal(SignalPayload signalPayload) { //@TODO: define security policies for signalling runtimeService.signalEventReceived(signalPayload.getName(), signalPayload.getVariables()); }
@ApiOperation(value = "Signal event received", tags = {"Executions"}) @ApiResponses(value = { @ApiResponse(code = 200, message = "Indicates request was successful and the executions are returned"), @ApiResponse(code = 404, message = "Indicates a parameter was passed in the wrong format . The status-message contains additional information.") }) @RequestMapping(value = "/runtime/executions", method = RequestMethod.PUT) public void executeExecutionAction(@RequestBody ExecutionActionRequest actionRequest, HttpServletResponse response) { if (!ExecutionActionRequest.ACTION_SIGNAL_EVENT_RECEIVED.equals(actionRequest.getAction())) { throw new ActivitiIllegalArgumentException("Illegal action: '" + actionRequest.getAction() + "'."); } if (actionRequest.getSignalName() == null) { throw new ActivitiIllegalArgumentException("Signal name is required."); } if (actionRequest.getVariables() != null) { runtimeService.signalEventReceived(actionRequest.getSignalName(), getVariablesToSet(actionRequest.getVariables())); } else { runtimeService.signalEventReceived(actionRequest.getSignalName()); } response.setStatus(HttpStatus.NO_CONTENT.value()); } }
/** * Trigger a signal event on all executions for a specific business key. * * @see <a href="http://www.activiti.org/userguide/index.html#bpmnSignalEventDefinition" /> * @see CoreSignals */ protected void triggerSignalEvent(ProcessEngine processEngine, String businessKey, String signalName) { RuntimeService runtimeService = processEngine.getRuntimeService(); ProcessInstance processInstance = runtimeService.createProcessInstanceQuery() .processInstanceBusinessKey(businessKey).singleResult(); List<Execution> executions = runtimeService.createExecutionQuery() .processInstanceId(processInstance.getProcessInstanceId()) .signalEventSubscriptionName(signalName).list(); if (executions.isEmpty()) { throw new NoSuchElementException(String.format("No executions found waiting " + "for signal '%s' on process %s", signalName, businessKey)); } for (Execution execution : executions) { LOG.info("Sending '{}' signal to execution {} for process {}", new Object[]{signalName, execution.getId(), businessKey}); runtimeService.signalEventReceived(signalName, execution.getId()); } }
runtimeService.signalEventReceived(actionRequest.getSignalName(), execution.getId(), getVariablesToSet(actionRequest.getVariables())); } else { runtimeService.signalEventReceived(actionRequest.getSignalName(), execution.getId());