signalEventSubscriptionEntity.eventReceived(payload, false);
@Override public Void execute(CommandContext commandContext) { List<SignalEventSubscriptionEntity> signalEvents = null; if (executionId == null) { signalEvents = commandContext.getEventSubscriptionEntityManager().findSignalEventSubscriptionsByEventName(eventName, tenantId); } else { ExecutionEntity execution = commandContext.getExecutionEntityManager().findExecutionById(executionId); if (execution == null) { throw new ActivitiObjectNotFoundException("Cannot find execution with id '" + executionId + "'", Execution.class); } if (execution.isSuspended()) { throw new ActivitiException("Cannot throw signal event '" + eventName + "' because execution '" + executionId + "' is suspended"); } signalEvents = commandContext.getEventSubscriptionEntityManager().findSignalEventSubscriptionsByNameAndExecution(eventName, executionId); if (signalEvents.isEmpty()) { throw new ActivitiException("Execution '" + executionId + "' has not subscribed to a signal event with name '" + eventName + "'."); } } for (SignalEventSubscriptionEntity signalEventSubscriptionEntity : signalEvents) { // We only throw the event to globally scoped signals. // Process instance scoped signals must be thrown within the process itself if (signalEventSubscriptionEntity.isGlobalScoped()) { signalEventSubscriptionEntity.eventReceived(payload, async); } } return null; }
public void execute(ActivityExecution execution) throws Exception { CommandContext commandContext = Context.getCommandContext(); List<SignalEventSubscriptionEntity> subscriptionEntities = null; if (processInstanceScope) { subscriptionEntities = commandContext .getEventSubscriptionEntityManager() .findSignalEventSubscriptionsByProcessInstanceAndEventName(execution.getProcessInstanceId(), signalDefinition.getEventName()); } else { subscriptionEntities = commandContext .getEventSubscriptionEntityManager() .findSignalEventSubscriptionsByEventName(signalDefinition.getEventName()); } for (SignalEventSubscriptionEntity signalEventSubscriptionEntity : subscriptionEntities) { signalEventSubscriptionEntity.eventReceived(null, signalDefinition.isAsync()); } leave(execution); }
@Override public void onEvent(FlowableEvent event) { if (isValidEvent(event) && event instanceof FlowableEngineEvent) { FlowableEngineEvent engineEvent = (FlowableEngineEvent) event; if (engineEvent.getProcessInstanceId() == null && processInstanceScope) { throw new ActivitiIllegalArgumentException( "Cannot throw process-instance scoped signal, since the dispatched event is not part of an ongoing process instance"); } CommandContext commandContext = Context.getCommandContext(); List<SignalEventSubscriptionEntity> subscriptionEntities = null; if (processInstanceScope) { subscriptionEntities = commandContext.getEventSubscriptionEntityManager() .findSignalEventSubscriptionsByProcessInstanceAndEventName(engineEvent.getProcessInstanceId(), signalName); } else { String tenantId = null; if (engineEvent.getProcessDefinitionId() != null) { ProcessDefinition processDefinition = commandContext.getProcessEngineConfiguration() .getDeploymentManager().findDeployedProcessDefinitionById(engineEvent.getProcessDefinitionId()); tenantId = processDefinition.getTenantId(); } subscriptionEntities = commandContext.getEventSubscriptionEntityManager() .findSignalEventSubscriptionsByEventName(signalName, tenantId); } for (SignalEventSubscriptionEntity signalEventSubscriptionEntity : subscriptionEntities) { signalEventSubscriptionEntity.eventReceived(null, false); } } }
@Override public Void execute(CommandContext commandContext) { org.activiti.engine.impl.persistence.entity.SignalEventSubscriptionEntity activiti5SignalEvent = new org.activiti.engine.impl.persistence.entity.SignalEventSubscriptionEntity(); activiti5SignalEvent.setId(signalEventSubscriptionEntity.getId()); activiti5SignalEvent.setExecutionId(signalEventSubscriptionEntity.getExecutionId()); activiti5SignalEvent.setActivityId(signalEventSubscriptionEntity.getActivityId()); activiti5SignalEvent.setEventName(signalEventSubscriptionEntity.getEventName()); activiti5SignalEvent.setEventType(signalEventSubscriptionEntity.getEventType()); activiti5SignalEvent.setConfiguration(signalEventSubscriptionEntity.getConfiguration()); activiti5SignalEvent.setProcessDefinitionId(signalEventSubscriptionEntity.getProcessDefinitionId()); activiti5SignalEvent.setProcessInstanceId(signalEventSubscriptionEntity.getProcessInstanceId()); activiti5SignalEvent.setTenantId(signalEventSubscriptionEntity.getTenantId()); activiti5SignalEvent.setRevision(signalEventSubscriptionEntity.getRevision()); activiti5SignalEvent.eventReceived(payload, async); return null; } });
ProcessDefinition processDefinition = ProcessDefinitionUtil.getProcessDefinition(signalEventSubscriptionEntity.getProcessDefinitionId()); if (Flowable5Util.isVersion5Tag(processDefinition.getEngineVersion())) { signalEventSubscriptionEntity.eventReceived(null, signalDefinition.isAsync());