}
@Override
protected IFigure createFigure() {
Transition transition = getModel();
final TransitionFigure figure = transition.getTypeDefinition().createFigure(getModel().getProcessDefinition());
figure.setRoutingConstraint(constructFigureBendpointList());
if (transition.getSource() instanceof Decision) {
figure.setLabelText(transition.getName());
}
if (transition.getSource() instanceof ITimed && transition.getName().equals(PluginConstants.TIMER_TRANSITION_NAME)) {
ITimed state = (ITimed) transition.getSource();
figure.setLabelText(state.getDuration().toString());
}
boolean exclusive = getModel().getSource().isExclusive() && getModel().getSource().getLeavingTransitions().size() > 1;
figure.setExclusive(exclusive);
if (getModel().getSource() instanceof Decision) {
Decision decision = (Decision) getModel().getSource();
IDecisionProvider provider = CustomizationRegistry.getProvider(decision);
if (transition.getName().equals(provider.getDefaultTransitionName(decision))) {
figure.setDefaultFlow(true);
}
}
figure.addRoutingListener(new RoutingListener() {
public void invalidate(Connection connection) {
}
public void postRoute(Connection connection) {
if (!getModel().getProcessDefinition().isShowActions()) {
return;