final ActivityDefinitionImpl activity = (ActivityDefinitionImpl) obj; if (activity.isTimer()) { if (!Event.onTimer.equals(event)) { problems.add(new Problem("A timer task accepts only a connector with an " + Event.onTimer + " event" + " ", Problem.SEVERITY_ERROR)); if (!(Event.automaticOnEnter.equals(event) || Event.automaticOnExit.equals(event))) { problems.add(new Problem("An automatic activity accepts only a connector with an " + Event.automaticOnEnter + " or an " + Event.automaticOnExit + " event" + " ", Problem.SEVERITY_ERROR)); if (!(Event.automaticOnEnter.equals(event) || Event.automaticOnExit.equals(event))) { problems.add(new Problem("A sub process accepts only a connector with an " + Event.automaticOnEnter + " or an " + Event.automaticOnExit + " event" + " ", Problem.SEVERITY_ERROR));
for (HookDefinition hookDefinition : hooks) { final HookDefinition.Event event = hookDefinition.getEvent(); if (!HookDefinition.Event.automaticOnEnter.equals(event)) { parse.addProblem("Unsupported HookEventName: " + event + " for automatic activity with id: " + id + ". Hook class = " + hookDefinition.getClassName()
final ActivityDefinitionImpl activity = (ActivityDefinitionImpl) obj; if (activity.isTimer()) { if (!Event.onTimer.equals(event)) { problems.add(new Problem("A timer task accepts only a connector with an " + Event.onTimer + " event" + " ", Problem.SEVERITY_ERROR)); if (!(Event.automaticOnEnter.equals(event) || Event.automaticOnExit.equals(event))) { problems.add(new Problem("An automatic activity accepts only a connector with an " + Event.automaticOnEnter + " or an " + Event.automaticOnExit + " event" + " ", Problem.SEVERITY_ERROR)); if (!(Event.automaticOnEnter.equals(event) || Event.automaticOnExit.equals(event))) { problems.add(new Problem("A sub process accepts only a connector with an " + Event.automaticOnEnter + " or an " + Event.automaticOnExit + " event" + " ", Problem.SEVERITY_ERROR));
public static void executeConnectors(final ActivityDefinition activityDef, final Execution execution, final Event event, final Map<String, Object> parameters) { final List<HookDefinition> hooks = activityDef.getConnectors(); if (hooks != null) { for (final HookDefinition hook : hooks) { if (hook.getEvent() != null && hook.getEvent().equals(event)) { if (!ActivityState.ABORTED.equals(execution.getActivityInstance().getState())) { executeConnector(execution, activityDef.getName(), hook, parameters); } } } } }
public static void executeConnectors(final Execution execution, final Event event) { final InternalProcessInstance instance = execution.getInstance(); final ProcessDefinitionUUID processUUID = instance.getProcessDefinitionUUID(); final ProcessDefinition definition = EnvTool.getJournalQueriers().getProcess(processUUID); final List<HookDefinition> connectors = definition.getConnectors(); if (connectors != null) { for (final HookDefinition connector : connectors) { if (connector.getEvent() != null && event.equals(connector.getEvent())) { executeConnector(execution, null, connector); } } } }
private boolean hasConnectorsAutomaticOnEnter(final InternalActivityDefinition activityDefinition) { final List<HookDefinition> connectors = activityDefinition.getConnectors(); final Iterator<HookDefinition> iterator = connectors.iterator(); boolean hasConnectorsOnEnter = false; while (!hasConnectorsOnEnter && iterator.hasNext()) { final HookDefinition connector = iterator.next(); if (Event.automaticOnEnter.equals(connector.getEvent())) { hasConnectorsOnEnter = true; } } return hasConnectorsOnEnter; }