eventDefinitionJSON.put("eventType", eventDefinition.getEventType()); eventDefinitionJSON.put("isAsync", eventDefinition.isAsync()); eventDefinitionJSON.put("isStartEvent", eventDefinition.isStartEvent());
@SuppressWarnings("unchecked") protected void addEventSubscriptionDeclaration(BpmnParse bpmnParse, EventSubscriptionDeclaration subscription, EventDefinition parsedEventDefinition, ScopeImpl scope) { List<EventSubscriptionDeclaration> eventDefinitions = (List<EventSubscriptionDeclaration>) scope.getProperty(PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION); if (eventDefinitions == null) { eventDefinitions = new ArrayList<>(); scope.setProperty(PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION, eventDefinitions); } else { // if this is a message event, validate that it is the only one with the provided name for this scope if (subscription.getEventType().equals("message")) { for (EventSubscriptionDeclaration eventDefinition : eventDefinitions) { if (eventDefinition.getEventType().equals("message") && eventDefinition.getEventName().equals(subscription.getEventName()) && eventDefinition.isStartEvent() == subscription.isStartEvent()) { LOGGER.warn("Cannot have more than one message event subscription with name '{}' for scope '{}'", subscription.getEventName(), scope.getId()); } } } } eventDefinitions.add(subscription); }
@SuppressWarnings("unchecked") protected void addEventSubscriptionDeclaration(BpmnParse bpmnParse, EventSubscriptionDeclaration subscription, EventDefinition parsedEventDefinition, ScopeImpl scope) { List<EventSubscriptionDeclaration> eventDefinitions = (List<EventSubscriptionDeclaration>) scope.getProperty(PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION); if(eventDefinitions == null) { eventDefinitions = new ArrayList<EventSubscriptionDeclaration>(); scope.setProperty(PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION, eventDefinitions); } else { // if this is a message event, validate that it is the only one with the provided name for this scope if(subscription.getEventType().equals("message")) { for (EventSubscriptionDeclaration eventDefinition : eventDefinitions) { if(eventDefinition.getEventType().equals("message") && eventDefinition.getEventName().equals(subscription.getEventName()) && eventDefinition.isStartEvent() == subscription.isStartEvent()) { bpmnParse.getBpmnModel().addProblem("Cannot have more than one message event subscription with name '" + subscription.getEventName() + "' for scope '"+scope.getId()+"'", parsedEventDefinition); } } } } eventDefinitions.add(subscription); }
eventDefinitionJSON.put("eventType", eventDefinition.getEventType()); eventDefinitionJSON.put("isAsync", eventDefinition.isAsync()); eventDefinitionJSON.put("isStartEvent", eventDefinition.isStartEvent());
eventDefinitionJSON.put("eventType", eventDefinition.getEventType()); eventDefinitionJSON.put("isAsync", eventDefinition.isAsync()); eventDefinitionJSON.put("isStartEvent", eventDefinition.isStartEvent());
eventDefinitionJSON.put("eventType", eventDefinition.getEventType()); eventDefinitionJSON.put("isAsync", eventDefinition.isAsync()); eventDefinitionJSON.put("isStartEvent", eventDefinition.isStartEvent());
@SuppressWarnings("unchecked") protected void addSignalEventSubscriptions(ProcessDefinitionEntity processDefinition) { List<EventSubscriptionDeclaration> eventDefinitions = (List<EventSubscriptionDeclaration>) processDefinition.getProperty(BpmnParse.PROPERTYNAME_EVENT_SUBSCRIPTION_DECLARATION); if (eventDefinitions != null) { for (EventSubscriptionDeclaration eventDefinition : eventDefinitions) { if (eventDefinition.getEventType().equals("signal") && eventDefinition.isStartEvent()) { SignalEventSubscriptionEntity subscriptionEntity = new SignalEventSubscriptionEntity(); subscriptionEntity.setEventName(eventDefinition.getEventName()); subscriptionEntity.setActivityId(eventDefinition.getActivityId()); subscriptionEntity.setProcessDefinitionId(processDefinition.getId()); if (processDefinition.getTenantId() != null) { subscriptionEntity.setTenantId(processDefinition.getTenantId()); } subscriptionEntity.insert(); } } } }
if (eventDefinition.getEventType().equals("message") && eventDefinition.isStartEvent()) {
if (signalEventDefinitions != null) { for (EventSubscriptionDeclaration eventDefinition : signalEventDefinitions) { if (eventDefinition.getEventType().equals("signal") && eventDefinition.isStartEvent()) { subscriptionEntity.insert(); } else if (eventDefinition.getEventType().equals("message") && eventDefinition.isStartEvent()) { MessageEventSubscriptionEntity newSubscription = new MessageEventSubscriptionEntity(); newSubscription.setEventName(eventDefinition.getEventName());