Program: 118732
Project: 118732
Buggy source:
@Override public List<NodeConnector> createConnectors(INode parentNode){
  List<NodeConnector> listConnector=new ArrayList<NodeConnector>();
  for (  Connector connector : componentDefinition.getConnectors()) {
    if (ComponentUtils.isAValidConnector(connector,getName())) {
      listConnector.add(ComponentUtils.generateNodeConnectorFromConnector(connector,parentNode));
    }
  }
  for (  Trigger trigger : componentDefinition.getTriggers()) {
    if (ComponentUtils.isAValidTrigger(trigger,getName())) {
      listConnector.add(ComponentUtils.generateNodeConnectorFromTrigger(trigger,parentNode));
    }
  }
  for (int i=0; i < EConnectionType.values().length; i++) {
    EConnectionType currentType=EConnectionType.values()[i];
    if ((currentType == EConnectionType.FLOW_REF) || (currentType == EConnectionType.FLOW_MERGE)) {
      continue;
    }
    boolean exists=false;
    for (    INodeConnector curNodeConn : listConnector) {
      if (curNodeConn.getDefaultConnectionType().equals(currentType)) {
        exists=true;
      }
    }
    if (!exists) {
      NodeConnector nodeConnector=new NodeConnector(parentNode);
      nodeConnector.setDefaultConnectionType(currentType);
      nodeConnector.setName(currentType.getName());
      nodeConnector.setBaseSchema(currentType.getName());
      nodeConnector.addConnectionProperty(currentType,currentType.getRGB(),currentType.getDefaultLineStyle());
      nodeConnector.setLinkName(currentType.getDefaultLinkName());
      nodeConnector.setMenuName(currentType.getDefaultMenuName());
      if ((currentType == EConnectionType.PARALLELIZE) || (currentType == EConnectionType.SYNCHRONIZE)) {
        nodeConnector.setMaxLinkInput(1);
      }
 else {
        nodeConnector.setMaxLinkInput(0);
      }
      nodeConnector.setMaxLinkOutput(0);
      nodeConnector.setMinLinkInput(0);
      nodeConnector.setMinLinkOutput(0);
      if (currentType == EConnectionType.FLOW_MAIN) {
        nodeConnector.addConnectionProperty(EConnectionType.FLOW_REF,EConnectionType.FLOW_REF.getRGB(),EConnectionType.FLOW_REF.getDefaultLineStyle());
        nodeConnector.addConnectionProperty(EConnectionType.FLOW_MERGE,EConnectionType.FLOW_MERGE.getRGB(),EConnectionType.FLOW_MERGE.getDefaultLineStyle());
      }
      listConnector.add(nodeConnector);
    }
  }
  return listConnector;
}

Fixed version (ground truth):
@Override public List<NodeConnector> createConnectors(INode parentNode){
  List<NodeConnector> listConnector=new ArrayList<NodeConnector>();
  for (  Connector connector : componentDefinition.getConnectors()) {
    if (ComponentsUtils.isAValidConnector(connector,getName())) {
      listConnector.add(ComponentsUtils.generateNodeConnectorFromConnector(connector,parentNode));
    }
  }
  for (  Trigger trigger : componentDefinition.getTriggers()) {
    if (ComponentsUtils.isAValidTrigger(trigger,getName())) {
      listConnector.add(ComponentsUtils.generateNodeConnectorFromTrigger(trigger,parentNode));
    }
  }
  for (int i=0; i < EConnectionType.values().length; i++) {
    EConnectionType currentType=EConnectionType.values()[i];
    if ((currentType == EConnectionType.FLOW_REF) || (currentType == EConnectionType.FLOW_MERGE)) {
      continue;
    }
    boolean exists=false;
    for (    INodeConnector curNodeConn : listConnector) {
      if (curNodeConn.getDefaultConnectionType().equals(currentType)) {
        exists=true;
      }
    }
    if (!exists) {
      NodeConnector nodeConnector=new NodeConnector(parentNode);
      nodeConnector.setDefaultConnectionType(currentType);
      nodeConnector.setName(currentType.getName());
      nodeConnector.setBaseSchema(currentType.getName());
      nodeConnector.addConnectionProperty(currentType,currentType.getRGB(),currentType.getDefaultLineStyle());
      nodeConnector.setLinkName(currentType.getDefaultLinkName());
      nodeConnector.setMenuName(currentType.getDefaultMenuName());
      if ((currentType == EConnectionType.PARALLELIZE) || (currentType == EConnectionType.SYNCHRONIZE)) {
        nodeConnector.setMaxLinkInput(1);
      }
 else {
        nodeConnector.setMaxLinkInput(0);
      }
      nodeConnector.setMaxLinkOutput(0);
      nodeConnector.setMinLinkInput(0);
      nodeConnector.setMinLinkOutput(0);
      if (currentType == EConnectionType.FLOW_MAIN) {
        nodeConnector.addConnectionProperty(EConnectionType.FLOW_REF,EConnectionType.FLOW_REF.getRGB(),EConnectionType.FLOW_REF.getDefaultLineStyle());
        nodeConnector.addConnectionProperty(EConnectionType.FLOW_MERGE,EConnectionType.FLOW_MERGE.getRGB(),EConnectionType.FLOW_MERGE.getDefaultLineStyle());
      }
      listConnector.add(nodeConnector);
    }
  }
  return listConnector;
}