public Signal getSignal(String id) { for (Signal signal : signals) { if (id.equals(signal.getId())) { return signal; } } return null; }
public Signal getSignal(String id) { for (Signal signal : signals) { if (id.equals(signal.getId())) { return signal; } } return null; }
public static void convertSignalDefinitionsToJson(BpmnModel bpmnModel, ObjectNode propertiesNode) { if (bpmnModel.getSignals() != null) { ArrayNode signalDefinitions = objectMapper.createArrayNode(); for (Signal signal : bpmnModel.getSignals()) { ObjectNode signalNode = signalDefinitions.addObject(); signalNode.put(PROPERTY_SIGNAL_DEFINITION_ID, signal.getId()); signalNode.put(PROPERTY_SIGNAL_DEFINITION_NAME, signal.getName()); signalNode.put(PROPERTY_SIGNAL_DEFINITION_SCOPE, signal.getScope()); } propertiesNode.set(PROPERTY_SIGNAL_DEFINITIONS, signalDefinitions); } }
@Override public void validate(BpmnModel bpmnModel, List<ValidationError> errors) { Collection<Signal> signals = bpmnModel.getSignals(); if (signals != null && !signals.isEmpty()) { for (Signal signal : signals) { if (StringUtils.isEmpty(signal.getId())) { addError(errors, Problems.SIGNAL_MISSING_ID, signal, "Signal must have an id"); } if (StringUtils.isEmpty(signal.getName())) { addError(errors, Problems.SIGNAL_MISSING_NAME, signal, "Signal must have a name"); } if (!StringUtils.isEmpty(signal.getName()) && duplicateName(signals, signal.getId(), signal.getName())) { addError(errors, Problems.SIGNAL_DUPLICATE_NAME, signal, "Duplicate signal name found"); } if (signal.getScope() != null && !signal.getScope().equals(Signal.SCOPE_GLOBAL) && !signal.getScope().equals(Signal.SCOPE_PROCESS_INSTANCE)) { addError(errors, Problems.SIGNAL_INVALID_SCOPE, signal, "Invalid value for 'scope'. Only values 'global' and 'processInstance' are supported"); } } } }
xtw.writeAttribute(ATTRIBUTE_ID, signal.getId()); xtw.writeAttribute(ATTRIBUTE_NAME, signal.getName()); if (signal.getScope() != null) {