public STransitionDefinitionImpl(final TransitionDefinition transition) { this(transition.getName(), transition.getSource(), transition.getTarget()); setId(transition.getId()); if (transition.getCondition() != null) { condition = ServerModelConvertor.convertExpression(transition.getCondition()); } }
private void validateBoundaryOutgoingTransitions(final BoundaryEventDefinition boundaryEvent) { for (final TransitionDefinition transition : boundaryEvent.getOutgoingTransitions()) { if (transition.getCondition() != null) { designErrors.add("A boundary event must have no conditional transitions: " + transition.getSource() + "->" + transition.getTarget()); } } }
@Override public void find(TransitionDefinition transition, long expressionDefinitionId) { findExpressionFromNotNullContainer(transition.getCondition(), expressionDefinitionId); }
private List<STransitionDefinition> buildIncomingTransitions(final FlowNodeDefinition nodeDefinition, final Map<String, STransitionDefinition> sTransitionsMap) { final List<TransitionDefinition> incomingTransitions = nodeDefinition.getIncomingTransitions(); final List<STransitionDefinition> incomings = new ArrayList<>(); final Iterator<TransitionDefinition> iterator = incomingTransitions.iterator(); while (iterator.hasNext()) { final TransitionDefinition sTransition = iterator.next(); final STransitionDefinition incoming = sTransitionsMap.get(String.valueOf(sTransition.getId())); incomings.add(incoming); } return incomings; }
private void validateBoundaryOutgoingTransitions(final BoundaryEventDefinition boundaryEvent) { for (final TransitionDefinition transition : boundaryEvent.getOutgoingTransitions()) { if (transition.getCondition() != null) { designErrors.add("A boundary event must have no conditional transitions: " + transition.getSource() + "->" + transition.getTarget()); } } }
@Override public void find(TransitionDefinition transition, long expressionDefinitionId) { findExpressionFromNotNullContainer(transition.getCondition(), expressionDefinitionId); }
private List<STransitionDefinition> buildIncomingTransitions(final FlowNodeDefinition nodeDefinition, final Map<String, STransitionDefinition> sTransitionsMap) { final List<TransitionDefinition> incomingTransitions = nodeDefinition.getIncomingTransitions(); final List<STransitionDefinition> incomings = new ArrayList<>(); final Iterator<TransitionDefinition> iterator = incomingTransitions.iterator(); while (iterator.hasNext()) { final TransitionDefinition sTransition = iterator.next(); final STransitionDefinition incoming = sTransitionsMap.get(String.valueOf(sTransition.getId())); incomings.add(incoming); } return incomings; }
public STransitionDefinitionImpl(final TransitionDefinition transition) { this(transition.getName(), transition.getSource(), transition.getTarget()); setId(transition.getId()); if (transition.getCondition() != null) { condition = ServerModelConvertor.convertExpression(transition.getCondition()); } }
private void validateGateways(final FlowElementContainerDefinition processContainer) { for (final GatewayDefinition gateway : processContainer.getGatewaysList()) { for (final TransitionDefinition transition : gateway.getOutgoingTransitions()) { switch (gateway.getGatewayType()) { case PARALLEL: if (transition.getCondition() != null) { designErrors.add("The parallel gateway can't have conditional outgoing transitions : " + gateway); } break; default: break; } } } }
private List<STransitionDefinition> buildOutGoingTransitions(final FlowNodeDefinition nodeDefinition, final Map<String, STransitionDefinition> sTransitionsMap) { Iterator<TransitionDefinition> iterator; final List<TransitionDefinition> outgoingTransitions = nodeDefinition.getOutgoingTransitions(); final List<STransitionDefinition> outgoings = new ArrayList<>(); iterator = outgoingTransitions.iterator(); while (iterator.hasNext()) { final TransitionDefinition sTransition = iterator.next(); final STransitionDefinition outgoing = sTransitionsMap.get(String.valueOf(sTransition.getId())); outgoings.add(outgoing); } return outgoings; }
private void validateGateways(final FlowElementContainerDefinition processContainer) { for (final GatewayDefinition gateway : processContainer.getGatewaysList()) { for (final TransitionDefinition transition : gateway.getOutgoingTransitions()) { switch (gateway.getGatewayType()) { case PARALLEL: if (transition.getCondition() != null) { designErrors.add("The parallel gateway can't have conditional outgoing transitions : " + gateway); } break; default: break; } } } }
private List<STransitionDefinition> buildOutGoingTransitions(final FlowNodeDefinition nodeDefinition, final Map<String, STransitionDefinition> sTransitionsMap) { Iterator<TransitionDefinition> iterator; final List<TransitionDefinition> outgoingTransitions = nodeDefinition.getOutgoingTransitions(); final List<STransitionDefinition> outgoings = new ArrayList<>(); iterator = outgoingTransitions.iterator(); while (iterator.hasNext()) { final TransitionDefinition sTransition = iterator.next(); final STransitionDefinition outgoing = sTransitionsMap.get(String.valueOf(sTransition.getId())); outgoings.add(outgoing); } return outgoings; }
assertEquals(process.getFlowElementContainer().getTransitions().size(), result.getFlowElementContainer().getTransitions().size()); assertThat(result.getProcessContainer().getFlowNode("start1").getOutgoingTransitions().get(0).getCondition().getContent()) .as("the condition on the transition was not kept").isEqualTo("true");
public SFlowNodeDefinitionImpl(final FlowNodeDefinition flowNodeDefinition, final Map<String, STransitionDefinition> sTransitionsMap) { super(flowNodeDefinition.getName()); incomings = buildIncomingTransitions(flowNodeDefinition, sTransitionsMap); outgoings = buildOutGoingTransitions(flowNodeDefinition, sTransitionsMap); if (flowNodeDefinition.getDefaultTransition() != null) { defaultTransition = sTransitionsMap.get(String.valueOf(flowNodeDefinition.getDefaultTransition().getId())); } final List<ConnectorDefinition> connectors2 = flowNodeDefinition.getConnectors(); final ArrayList<SConnectorDefinition> mConnectors = new ArrayList<>(connectors2.size()); connectorsMap = new HashMap<>(2); connectorsMap.put(ConnectorEvent.ON_ENTER, new ArrayList<SConnectorDefinition>()); connectorsMap.put(ConnectorEvent.ON_FINISH, new ArrayList<SConnectorDefinition>()); allConnectorsMap = new HashMap<>(2); for (final ConnectorDefinition connector : connectors2) { final SConnectorDefinitionImpl e = new SConnectorDefinitionImpl(connector); mConnectors.add(e); connectorsMap.get(e.getActivationEvent()).add(e); allConnectorsMap.put(e.getName(), e); } connectors = Collections.unmodifiableList(mConnectors); description = flowNodeDefinition.getDescription(); displayDescription = ServerModelConvertor.convertExpression(flowNodeDefinition.getDisplayDescription()); displayDescriptionAfterCompletion = ServerModelConvertor.convertExpression(flowNodeDefinition.getDisplayDescriptionAfterCompletion()); displayName = ServerModelConvertor.convertExpression(flowNodeDefinition.getDisplayName()); setId(flowNodeDefinition.getId()); }
public SFlowNodeDefinitionImpl(final FlowNodeDefinition flowNodeDefinition, final Map<String, STransitionDefinition> sTransitionsMap) { super(flowNodeDefinition.getName()); incomings = buildIncomingTransitions(flowNodeDefinition, sTransitionsMap); outgoings = buildOutGoingTransitions(flowNodeDefinition, sTransitionsMap); if (flowNodeDefinition.getDefaultTransition() != null) { defaultTransition = sTransitionsMap.get(String.valueOf(flowNodeDefinition.getDefaultTransition().getId())); } final List<ConnectorDefinition> connectors2 = flowNodeDefinition.getConnectors(); final ArrayList<SConnectorDefinition> mConnectors = new ArrayList<>(connectors2.size()); connectorsMap = new HashMap<>(2); connectorsMap.put(ConnectorEvent.ON_ENTER, new ArrayList<SConnectorDefinition>()); connectorsMap.put(ConnectorEvent.ON_FINISH, new ArrayList<SConnectorDefinition>()); allConnectorsMap = new HashMap<>(2); for (final ConnectorDefinition connector : connectors2) { final SConnectorDefinitionImpl e = new SConnectorDefinitionImpl(connector); mConnectors.add(e); connectorsMap.get(e.getActivationEvent()).add(e); allConnectorsMap.put(e.getName(), e); } connectors = Collections.unmodifiableList(mConnectors); description = flowNodeDefinition.getDescription(); displayDescription = ServerModelConvertor.convertExpression(flowNodeDefinition.getDisplayDescription()); displayDescriptionAfterCompletion = ServerModelConvertor.convertExpression(flowNodeDefinition.getDisplayDescriptionAfterCompletion()); displayName = ServerModelConvertor.convertExpression(flowNodeDefinition.getDisplayName()); setId(flowNodeDefinition.getId()); }