nus-yam/ex-repair huggingface dataset:
Program: 129955
Project: 129955
Buggy source:
/** 
 * create Dimensionned NewGrid (width Columns) in a Composite.
 * @param Composite parent
 * @param int numColumns
 * @param boolean sameWidth
 * @param int styleHoryzontal
 * @param int styleVertical
 * @return Composite
 */
public static Composite startNewDimensionnedGridLayout(Composite parent,int numColumns,int minimumWidth,int minimumHeight){
  Composite composite=new Composite(parent,SWT.NULL);
  composite.setLayout(new GridLayout(numColumns,false));
  GridData gridData=new GridData(GridData.FILL_BOTH);
  gridData.minimumWidth=minimumWidth;
  gridData.minimumHeight=minimumHeight;
  gridData.widthHint=minimumWidth;
  gridData.heightHint=minimumHeight;
  composite.setLayoutData(gridData);
  return composite;
}

Fixed version (ground truth):
/** 
 * create Dimensionned NewGrid (width Columns) in a Composite.
 * @param Composite parent
 * @param int numColumns
 * @param boolean sameWidth
 * @param int styleHoryzontal
 * @param int styleVertical
 * @param boolean isFillBoth
 * @return Composite
 */
public static Composite startNewDimensionnedGridLayout(Composite parent,int numColumns,int minimumWidth,int minimumHeight,boolean isFillBoth){
  Composite composite=new Composite(parent,SWT.NULL);
  composite.setLayout(new GridLayout(numColumns,false));
  GridData gridData=isFillBoth ? new GridData(GridData.FILL_BOTH) : new GridData();
  gridData.minimumWidth=minimumWidth;
  gridData.minimumHeight=minimumHeight;
  gridData.widthHint=minimumWidth;
  gridData.heightHint=minimumHeight;
  composite.setLayoutData(gridData);
  return composite;
}
Program: 129956
Project: 129956
Buggy source:
/** 
 * create Button width image less FillLayout.
 * @param Composite parent
 * @param Image image
 * @param String string
 */
public UtilsButton(Composite parent,Image image,String string){
  button=new Button(parent,SWT.PUSH);
  button.setImage(image);
  button.setToolTipText(string);
}

Fixed version (ground truth):
/** 
 * create Button with related layoutData.
 * @param parent
 * @param string
 * @param layoutData
 */
public UtilsButton(Composite parent,String string,Object layoutData){
  button=new Button(parent,SWT.PUSH);
  button.setText(string);
  button.setLayoutData(layoutData);
}
Program: 129957
Project: 129957
Buggy source:
public static boolean isDeleteOrReselectMap(ConnectionItem connItem,List<IMetadataTable> newTables,List<IMetadataTable> oldTables,Map<String,EUpdateResult> deletedOrReselectTables){
  for (  IMetadataTable oldTable : oldTables) {
    String prefix;
    boolean isDeleted=true;
    String oldtableName=oldTable.getTableName();
    String oldtableId=oldTable.getId();
    for (    IMetadataTable newTable : newTables) {
      String tableLabel=newTable.getLabel();
      String tableId=newTable.getId();
      if (tableLabel.equals(oldtableName)) {
        isDeleted=false;
        if (!tableId.equals(oldtableId)) {
          prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
          deletedOrReselectTables.put(prefix + tableLabel,EUpdateResult.RELOAD);
        }
      }
    }
    if (isDeleted) {
      prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
      deletedOrReselectTables.put(prefix + oldtableName,EUpdateResult.DELETE);
    }
  }
  return !deletedOrReselectTables.isEmpty();
}

Fixed version (ground truth):
public static boolean isDeleteOrReselectMap(ConnectionItem connItem,List<IMetadataTable> newTables,List<IMetadataTable> oldTables,Map<String,EUpdateResult> deletedOrReselectTables){
  for (  IMetadataTable oldTable : oldTables) {
    String prefix;
    boolean isDeleted=true;
    String oldtableLabel=oldTable.getLabel();
    String oldtableId=oldTable.getId();
    for (    IMetadataTable newTable : newTables) {
      String tableLabel=newTable.getLabel();
      String tableId=newTable.getId();
      if (tableLabel.equals(oldtableLabel)) {
        isDeleted=false;
        if (!tableId.equals(oldtableId)) {
          prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
          deletedOrReselectTables.put(prefix + tableLabel,EUpdateResult.RELOAD);
        }
      }
    }
    if (isDeleted) {
      prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
      deletedOrReselectTables.put(prefix + oldtableLabel,EUpdateResult.DELETE);
    }
  }
  return !deletedOrReselectTables.isEmpty();
}
Program: 129958
Project: 129958
Buggy source:
public void create(Project project,Item item,IPath path,boolean... isImportItem) throws PersistenceException {
  boolean isOherProcess=false;
  for (  IRepositoryContentHandler handler : RepositoryContentManager.getHandlers()) {
    isOherProcess=handler.isProcess(item);
    if (isOherProcess) {
      break;
    }
  }
  if (isOherProcess || item instanceof ProcessItem) {
    try {
      coreService.checkJob(item.getProperty().getLabel());
    }
 catch (    BusinessException e) {
      throw new PersistenceException(e);
    }
catch (    RuntimeException e) {
    }
  }
  checkFileNameAndPath(project,item,RepositoryConstants.getPattern(ERepositoryObjectType.getItemType(item)),path,false,isImportItem);
  this.repositoryFactoryFromProvider.create(project,item,path,isImportItem);
  if ((item instanceof ProcessItem || item instanceof JobletProcessItem) && (isImportItem.length == 0)) {
    fireRepositoryPropertyChange(ERepositoryActionName.JOB_CREATE.getName(),null,item);
  }
}

Fixed version (ground truth):
public void create(Project project,Item item,IPath path,boolean... isImportItem) throws PersistenceException {
  boolean isOherProcess=false;
  for (  IRepositoryContentHandler handler : RepositoryContentManager.getHandlers()) {
    isOherProcess=handler.isProcess(item);
    if (isOherProcess) {
      break;
    }
  }
  if (isOherProcess || item instanceof ProcessItem) {
    try {
      coreService.checkJob(item.getProperty().getLabel());
    }
 catch (    BusinessException e) {
      throw new PersistenceException(e);
    }
catch (    RuntimeException e) {
    }
  }
  checkFileNameAndPath(project,item,RepositoryConstants.getPattern(ERepositoryObjectType.getItemType(item)),path,false,isImportItem);
  this.repositoryFactoryFromProvider.create(project,item,path,isImportItem);
  if ((item instanceof ProcessItem || item instanceof JobletProcessItem) && (isImportItem.length == 0)) {
    fireRepositoryPropertyChange(ERepositoryActionName.JOB_CREATE.getName(),null,item);
  }
  if (isImportItem.length == 1) {
    this.repositoryFactoryFromProvider.unloadResources(item.getProperty());
  }
}
Program: 129959
Project: 129959
Buggy source:
public RepositoryEditorInput(IFile file,Item item){
  super(file);
  this.item=item;
  this.id=item.getProperty().getId();
  this.version=item.getProperty().getVersion();
}

Fixed version (ground truth):
public RepositoryEditorInput(IFile file,Item item){
  super(file);
  this.item=item;
  this.id=item.getProperty().getId();
  this.version=item.getProperty().getVersion();
  this.name=getItem().getProperty().getLabel();
}
Program: 129960
Project: 129960
Buggy source:
@Override public String getName(){
  return "String_Node_Str" + item.getProperty().getLabel();
}

Fixed version (ground truth):
@Override public String getName(){
  return name;
}
Program: 129961
Project: 129961
Buggy source:
/** 
 * create Dimensionned NewGrid (width Columns) in a Composite.
 * @param Composite parent
 * @param int numColumns
 * @param boolean sameWidth
 * @param int styleHoryzontal
 * @param int styleVertical
 * @return Composite
 */
public static Composite startNewDimensionnedGridLayout(Composite parent,int numColumns,int minimumWidth,int minimumHeight){
  Composite composite=new Composite(parent,SWT.NULL);
  composite.setLayout(new GridLayout(numColumns,false));
  GridData gridData=new GridData(GridData.FILL_BOTH);
  gridData.minimumWidth=minimumWidth;
  gridData.minimumHeight=minimumHeight;
  gridData.widthHint=minimumWidth;
  gridData.heightHint=minimumHeight;
  composite.setLayoutData(gridData);
  return composite;
}

Fixed version (ground truth):
/** 
 * create Dimensionned NewGrid (width Columns) in a Composite.
 * @param Composite parent
 * @param int numColumns
 * @param boolean sameWidth
 * @param int styleHoryzontal
 * @param int styleVertical
 * @param boolean isFillBoth
 * @return Composite
 */
public static Composite startNewDimensionnedGridLayout(Composite parent,int numColumns,int minimumWidth,int minimumHeight,boolean isFillBoth){
  Composite composite=new Composite(parent,SWT.NULL);
  composite.setLayout(new GridLayout(numColumns,false));
  GridData gridData=isFillBoth ? new GridData(GridData.FILL_BOTH) : new GridData();
  gridData.minimumWidth=minimumWidth;
  gridData.minimumHeight=minimumHeight;
  gridData.widthHint=minimumWidth;
  gridData.heightHint=minimumHeight;
  composite.setLayoutData(gridData);
  return composite;
}
Program: 129962
Project: 129962
Buggy source:
/** 
 * create Button width image less FillLayout.
 * @param Composite parent
 * @param Image image
 * @param String string
 */
public UtilsButton(Composite parent,Image image,String string){
  button=new Button(parent,SWT.PUSH);
  button.setImage(image);
  button.setToolTipText(string);
}

Fixed version (ground truth):
/** 
 * create Button with related layoutData.
 * @param parent
 * @param string
 * @param layoutData
 */
public UtilsButton(Composite parent,String string,Object layoutData){
  button=new Button(parent,SWT.PUSH);
  button.setText(string);
  button.setLayoutData(layoutData);
}
Program: 129963
Project: 129963
Buggy source:
public static boolean isDeleteOrReselectMap(ConnectionItem connItem,List<IMetadataTable> newTables,List<IMetadataTable> oldTables,Map<String,EUpdateResult> deletedOrReselectTables){
  for (  IMetadataTable oldTable : oldTables) {
    String prefix;
    boolean isDeleted=true;
    String oldtableName=oldTable.getTableName();
    String oldtableId=oldTable.getId();
    for (    IMetadataTable newTable : newTables) {
      String tableLabel=newTable.getLabel();
      String tableId=newTable.getId();
      if (tableLabel.equals(oldtableName)) {
        isDeleted=false;
        if (!tableId.equals(oldtableId)) {
          prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
          deletedOrReselectTables.put(prefix + tableLabel,EUpdateResult.RELOAD);
        }
      }
    }
    if (isDeleted) {
      prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
      deletedOrReselectTables.put(prefix + oldtableName,EUpdateResult.DELETE);
    }
  }
  return !deletedOrReselectTables.isEmpty();
}

Fixed version (ground truth):
public static boolean isDeleteOrReselectMap(ConnectionItem connItem,List<IMetadataTable> newTables,List<IMetadataTable> oldTables,Map<String,EUpdateResult> deletedOrReselectTables){
  for (  IMetadataTable oldTable : oldTables) {
    String prefix;
    boolean isDeleted=true;
    String oldtableLabel=oldTable.getLabel();
    String oldtableId=oldTable.getId();
    for (    IMetadataTable newTable : newTables) {
      String tableLabel=newTable.getLabel();
      String tableId=newTable.getId();
      if (tableLabel.equals(oldtableLabel)) {
        isDeleted=false;
        if (!tableId.equals(oldtableId)) {
          prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
          deletedOrReselectTables.put(prefix + tableLabel,EUpdateResult.RELOAD);
        }
      }
    }
    if (isDeleted) {
      prefix=connItem.getProperty().getId() + UpdatesConstants.SEGMENT_LINE;
      deletedOrReselectTables.put(prefix + oldtableLabel,EUpdateResult.DELETE);
    }
  }
  return !deletedOrReselectTables.isEmpty();
}
Program: 129965
Project: 129965
Buggy source:
public List<Problem> getProblems(INode node,IElement element){
  List<Problem> toReturn=new ArrayList<Problem>();
  List<ModuleNeeded> list=node.getComponent().getModulesNeeded();
  List<ModuleNeeded> modulesNeeded=ModulesNeededProvider.getModulesNeeded();
  for (  ModuleNeeded module : modulesNeeded) {
    for (    ModuleNeeded current : list) {
      if (current.getContext().equals(module.getContext()) && current.getModuleName().equals(module.getModuleName())) {
        if (module.getStatus() == ELibraryInstallStatus.NOT_INSTALLED && current.isRequired()) {
          Problem problem=new Problem(element,"String_Node_Str" + current.getModuleName() + "String_Node_Str",ProblemStatus.ERROR);
          problem.setKey("String_Node_Str" + current.getModuleName());
          toReturn.add(problem);
        }
      }
    }
  }
  return toReturn;
}

Fixed version (ground truth):
public List<Problem> getProblems(INode node,IElement element){
  List<Problem> toReturn=new ArrayList<Problem>();
  List<ModuleNeeded> list=node.getComponent().getModulesNeeded();
  List<ModuleNeeded> modulesNeeded=ModulesNeededProvider.getModulesNeeded();
  boolean flag=false;
  for (  ModuleNeeded current : list) {
    if (current.getRequiredIf() != null && !current.getRequiredIf().equals("String_Node_Str")) {
      flag=true;
    }
  }
  if (flag) {
    for (    ModuleNeeded module : modulesNeeded) {
      for (      ModuleNeeded current : list) {
        if (current.getContext().equals(module.getContext()) && current.getModuleName().equals(module.getModuleName())) {
          if (module.getStatus() == ELibraryInstallStatus.NOT_INSTALLED && (current.getRequiredIf() != null && !current.getRequiredIf().equals("String_Node_Str"))) {
            Problem problem=new Problem(element,"String_Node_Str" + current.getModuleName() + "String_Node_Str",ProblemStatus.ERROR);
            problem.setKey("String_Node_Str" + current.getModuleName());
            toReturn.add(problem);
          }
        }
      }
    }
  }
 else {
    for (    ModuleNeeded module : modulesNeeded) {
      for (      ModuleNeeded current : list) {
        if (current.getContext().equals(module.getContext()) && current.getModuleName().equals(module.getModuleName())) {
          if (module.getStatus() == ELibraryInstallStatus.NOT_INSTALLED && current.isRequired()) {
            Problem problem=new Problem(element,"String_Node_Str" + current.getModuleName() + "String_Node_Str",ProblemStatus.ERROR);
            problem.setKey("String_Node_Str" + current.getModuleName());
            toReturn.add(problem);
          }
        }
      }
    }
  }
  return toReturn;
}
Program: 129966
Project: 129966
Buggy source:
/** 
 * delete namespace prefix in the xpath
 * @param xpath the source xpath
 * @return
 */
public static String deletePrefixForXpath(String xpath){
  if (xpath == null) {
    return null;
  }
  char[] block=null;
  StringBuffer sb=new StringBuffer();
  int size=xpath.length();
  int start=-1;
  int offset=0;
  char next=' ';
  for (int i=0; i < size; i++) {
    if (':' == next) {
      next=' ';
      continue;
    }
    int end=-1;
    char c=xpath.charAt(i);
    if ('/' == c || '@' == c) {
      start=i;
    }
    if (':' == c) {
      if (i < size - 1) {
        next=xpath.charAt(i + 1);
      }
      if (':' != next) {
        end=i;
      }
    }
    if (end != -1) {
      if (block == null) {
        block=xpath.toCharArray();
      }
      sb.append(block,offset,start + 1 - offset);
      offset=end + 1;
    }
  }
  if (offset == 0) {
    return xpath;
  }
  if (offset < size) {
    if (block == null) {
      block=xpath.toCharArray();
    }
    sb.append(block,offset,size - offset);
  }
  return sb.toString();
}

Fixed version (ground truth):
/** 
 * delete namespace prefix in the xpath
 * @param xpath the source xpath
 * @return example ./ns:aa/ns:b ==> ./aa/b ../ns:aa/ns:b ==> ../aa/b ../aa/ns:b ==> ../aa/b ../aa/ns:b/../ns:a/a ==> ../aa/b/../a/a /aa/b/c ==> /aa/b/c /aa/b/c/@e ==> /aa/b/c/@e /aa/b/c/@ns:e ==> /aa/b/c/@e aa ==> aa ns:aa ==> aa child::book ==> child::book attribute::attr ==> attribute::attr to[@a:attri="xxx:yyy"]/ns:a ==> to[@attri="xxx:yyy"]/a to[.="to:yyy"]/ns:a ==> to[.="to:yyy"]/a substring('12:3"4:5',2,3) ==> substring('12:3"4:5',2,3) substring("12:3'4:5",2,3) ==> substring("12:3'4:5",2,3) //name[@ns:attri="xxx:yyyy"] ==> //name[@attri="xxx:yyyy"] //name[@ns:attri="xxx:yyyy"]/ns:b/@ns:a ==> //name[@attri="xxx:yyyy"]/b/@a body[ns:age/ns:name/@ns:b="12:3"]/age ==> body[age/name/@b="12:3"]/age
 */
public static String deletePrefixForXpath(String xpath){
  if (xpath == null) {
    return null;
  }
  char[] block=null;
  StringBuffer sb=new StringBuffer();
  int size=xpath.length();
  int start=-1;
  int offset=0;
  char next=' ';
  boolean literal=false;
  char textEnclosure=' ';
  for (int i=0; i < size; i++) {
    if (':' == next) {
      next=' ';
      continue;
    }
    int end=-1;
    char c=xpath.charAt(i);
    if (c == '\'' || c == '"') {
      if (!literal) {
        literal=true;
        textEnclosure=c;
      }
 else       if (textEnclosure == c) {
        literal=false;
        textEnclosure=' ';
      }
    }
    if (literal) {
      continue;
    }
    if ('/' == c || '@' == c || '[' == c) {
      start=i;
    }
    if (':' == c) {
      if (i < size - 1) {
        next=xpath.charAt(i + 1);
      }
      if (':' != next) {
        end=i;
      }
    }
    if (end != -1) {
      if (block == null) {
        block=xpath.toCharArray();
      }
      sb.append(block,offset,start + 1 - offset);
      offset=end + 1;
    }
  }
  if (offset == 0) {
    return xpath;
  }
  if (offset < size) {
    if (block == null) {
      block=xpath.toCharArray();
    }
    sb.append(block,offset,size - offset);
  }
  return sb.toString();
}
Program: 129967
Project: 129967
Buggy source:
public List<Problem> getProblems(INode node,IElement element){
  List<Problem> toReturn=new ArrayList<Problem>();
  List<ModuleNeeded> list=node.getComponent().getModulesNeeded();
  List<ModuleNeeded> modulesNeeded=ModulesNeededProvider.getModulesNeeded();
  for (  ModuleNeeded module : modulesNeeded) {
    for (    ModuleNeeded current : list) {
      if (current.getContext().equals(module.getContext()) && current.getModuleName().equals(module.getModuleName())) {
        if (module.getStatus() == ELibraryInstallStatus.NOT_INSTALLED && current.isRequired()) {
          Problem problem=new Problem(element,"String_Node_Str" + current.getModuleName() + "String_Node_Str",ProblemStatus.ERROR);
          problem.setKey("String_Node_Str" + current.getModuleName());
          toReturn.add(problem);
        }
      }
    }
  }
  return toReturn;
}

Fixed version (ground truth):
public List<Problem> getProblems(INode node,IElement element){
  List<Problem> toReturn=new ArrayList<Problem>();
  List<ModuleNeeded> list=node.getComponent().getModulesNeeded();
  List<ModuleNeeded> modulesNeeded=ModulesNeededProvider.getModulesNeeded();
  boolean flag=false;
  for (  ModuleNeeded current : list) {
    if (current.getRequiredIf() != null && !current.getRequiredIf().equals("String_Node_Str")) {
      flag=true;
    }
  }
  if (flag) {
    for (    ModuleNeeded module : modulesNeeded) {
      for (      ModuleNeeded current : list) {
        if (current.getContext().equals(module.getContext()) && current.getModuleName().equals(module.getModuleName())) {
          if (module.getStatus() == ELibraryInstallStatus.NOT_INSTALLED && (current.getRequiredIf() != null && !current.getRequiredIf().equals("String_Node_Str"))) {
            Problem problem=new Problem(element,"String_Node_Str" + current.getModuleName() + "String_Node_Str",ProblemStatus.ERROR);
            problem.setKey("String_Node_Str" + current.getModuleName());
            toReturn.add(problem);
          }
        }
      }
    }
  }
 else {
    for (    ModuleNeeded module : modulesNeeded) {
      for (      ModuleNeeded current : list) {
        if (current.getContext().equals(module.getContext()) && current.getModuleName().equals(module.getModuleName())) {
          if (module.getStatus() == ELibraryInstallStatus.NOT_INSTALLED && current.isRequired()) {
            Problem problem=new Problem(element,"String_Node_Str" + current.getModuleName() + "String_Node_Str",ProblemStatus.ERROR);
            problem.setKey("String_Node_Str" + current.getModuleName());
            toReturn.add(problem);
          }
        }
      }
    }
  }
  return toReturn;
}
Program: 129969
Project: 129969
Buggy source:
/** 
 * delete namespace prefix in the xpath
 * @param xpath the source xpath
 * @return
 */
public static String deletePrefixForXpath(String xpath){
  if (xpath == null) {
    return null;
  }
  char[] block=null;
  StringBuffer sb=new StringBuffer();
  int size=xpath.length();
  int start=-1;
  int offset=0;
  char next=' ';
  for (int i=0; i < size; i++) {
    if (':' == next) {
      next=' ';
      continue;
    }
    int end=-1;
    char c=xpath.charAt(i);
    if ('/' == c || '@' == c) {
      start=i;
    }
    if (':' == c) {
      if (i < size - 1) {
        next=xpath.charAt(i + 1);
      }
      if (':' != next) {
        end=i;
      }
    }
    if (end != -1) {
      if (block == null) {
        block=xpath.toCharArray();
      }
      sb.append(block,offset,start + 1 - offset);
      offset=end + 1;
    }
  }
  if (offset == 0) {
    return xpath;
  }
  if (offset < size) {
    if (block == null) {
      block=xpath.toCharArray();
    }
    sb.append(block,offset,size - offset);
  }
  return sb.toString();
}

Fixed version (ground truth):
/** 
 * delete namespace prefix in the xpath
 * @param xpath the source xpath
 * @return example ./ns:aa/ns:b ==> ./aa/b ../ns:aa/ns:b ==> ../aa/b ../aa/ns:b ==> ../aa/b ../aa/ns:b/../ns:a/a ==> ../aa/b/../a/a /aa/b/c ==> /aa/b/c /aa/b/c/@e ==> /aa/b/c/@e /aa/b/c/@ns:e ==> /aa/b/c/@e aa ==> aa ns:aa ==> aa child::book ==> child::book attribute::attr ==> attribute::attr to[@a:attri="xxx:yyy"]/ns:a ==> to[@attri="xxx:yyy"]/a to[.="to:yyy"]/ns:a ==> to[.="to:yyy"]/a substring('12:3"4:5',2,3) ==> substring('12:3"4:5',2,3) substring("12:3'4:5",2,3) ==> substring("12:3'4:5",2,3) //name[@ns:attri="xxx:yyyy"] ==> //name[@attri="xxx:yyyy"] //name[@ns:attri="xxx:yyyy"]/ns:b/@ns:a ==> //name[@attri="xxx:yyyy"]/b/@a body[ns:age/ns:name/@ns:b="12:3"]/age ==> body[age/name/@b="12:3"]/age
 */
public static String deletePrefixForXpath(String xpath){
  if (xpath == null) {
    return null;
  }
  char[] block=null;
  StringBuffer sb=new StringBuffer();
  int size=xpath.length();
  int start=-1;
  int offset=0;
  char next=' ';
  boolean literal=false;
  char textEnclosure=' ';
  for (int i=0; i < size; i++) {
    if (':' == next) {
      next=' ';
      continue;
    }
    int end=-1;
    char c=xpath.charAt(i);
    if (c == '\'' || c == '"') {
      if (!literal) {
        literal=true;
        textEnclosure=c;
      }
 else       if (textEnclosure == c) {
        literal=false;
        textEnclosure=' ';
      }
    }
    if (literal) {
      continue;
    }
    if ('/' == c || '@' == c || '[' == c) {
      start=i;
    }
    if (':' == c) {
      if (i < size - 1) {
        next=xpath.charAt(i + 1);
      }
      if (':' != next) {
        end=i;
      }
    }
    if (end != -1) {
      if (block == null) {
        block=xpath.toCharArray();
      }
      sb.append(block,offset,start + 1 - offset);
      offset=end + 1;
    }
  }
  if (offset == 0) {
    return xpath;
  }
  if (offset < size) {
    if (block == null) {
      block=xpath.toCharArray();
    }
    sb.append(block,offset,size - offset);
  }
  return sb.toString();
}
Program: 129970
Project: 129970
Buggy source:
private static String getImports(){
  String imports="String_Node_Str";
  IProxyRepositoryFactory repositoryFactory=CorePlugin.getDefault().getRepositoryService().getProxyRepositoryFactory();
  Project project=ProjectManager.getInstance().getProject(null);
  try {
    List<IRepositoryViewObject> routines=repositoryFactory.getAll(ERepositoryObjectType.ROUTINES);
    for (    IRepositoryViewObject routine : routines) {
      if (routine.getProperty().getItem() instanceof RoutineItem && ((RoutineItem)routine.getProperty().getItem()).isBuiltIn()) {
        imports+="String_Node_Str" + routine.getLabel() + "String_Node_Str";
      }
 else {
        imports+="String_Node_Str" + routine.getLabel() + "String_Node_Str";
      }
    }
  }
 catch (  PersistenceException e) {
    ExceptionHandler.process(e);
    return "String_Node_Str";
  }
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  return imports;
}

Fixed version (ground truth):
private static String getImports(){
  String imports="String_Node_Str";
  IProxyRepositoryFactory repositoryFactory=CorePlugin.getDefault().getRepositoryService().getProxyRepositoryFactory();
  Project project=ProjectManager.getInstance().getProject(null);
  try {
    List<IRepositoryViewObject> routines=repositoryFactory.getAll(ERepositoryObjectType.ROUTINES);
    for (    IRepositoryViewObject routine : routines) {
      if (routine.getProperty().getItem() instanceof RoutineItem && ((RoutineItem)routine.getProperty().getItem()).isBuiltIn()) {
        imports+="String_Node_Str" + routine.getLabel() + "String_Node_Str";
      }
 else {
        imports+="String_Node_Str" + routine.getLabel() + "String_Node_Str";
      }
    }
  }
 catch (  PersistenceException e) {
    ExceptionHandler.process(e);
    return "String_Node_Str";
  }
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  imports+="String_Node_Str";
  return imports;
}
Program: 129971
Project: 129971
Buggy source:
public ModuleNeeded(String context,String moduleName,String informationMsg,boolean required,List<String> installURL){
  super();
  this.context=context;
  this.moduleName=moduleName;
  this.informationMsg=informationMsg;
  this.required=required;
  this.installURL=installURL;
}

Fixed version (ground truth):
public ModuleNeeded(String context,String moduleName,String informationMsg,boolean required,List<String> installURL,String requiredIf){
  super();
  this.context=context;
  this.moduleName=moduleName;
  this.informationMsg=informationMsg;
  this.required=required;
  this.installURL=installURL;
  this.requiredIf=requiredIf;
}
Program: 129972
Project: 129972
Buggy source:
public RepositoryUpdateManager(Object parameter,List<RelationshipItemBuilder.Relation> relations){
  super();
  this.parameter=parameter;
  this.relations=relations;
}

Fixed version (ground truth):
public RepositoryUpdateManager(Object parameter,List<RelationshipItemBuilder.Relation> relations,boolean isDetectAndUpdate){
  super();
  this.parameter=parameter;
  this.relations=relations;
  this.isDetectAndUpdate=isDetectAndUpdate;
}
Program: 129975
Project: 129975
Buggy source:
public ModuleNeeded(String context,String moduleName,String informationMsg,boolean required,List<String> installURL){
  super();
  this.context=context;
  this.moduleName=moduleName;
  this.informationMsg=informationMsg;
  this.required=required;
  this.installURL=installURL;
}

Fixed version (ground truth):
public ModuleNeeded(String context,String moduleName,String informationMsg,boolean required,List<String> installURL,String requiredIf){
  super();
  this.context=context;
  this.moduleName=moduleName;
  this.informationMsg=informationMsg;
  this.required=required;
  this.installURL=installURL;
  this.requiredIf=requiredIf;
}
Program: 129976
Project: 129976
Buggy source:
private static boolean updateQueryObject(Object parameter,boolean show,boolean onlySimpleShow,RepositoryNode node){
  Item item=node.getObject().getProperty().getItem();
  IProxyRepositoryFactory factory=CoreRuntimePlugin.getInstance().getProxyRepositoryFactory();
  List<IRepositoryViewObject> updateList=new ArrayList<IRepositoryViewObject>();
  List<RelationshipItemBuilder.Relation> relations=null;
  if (parameter instanceof Query) {
    String id=item.getProperty().getId() + "String_Node_Str" + ((Query)parameter).getLabel();
    relations=RelationshipItemBuilder.getInstance().getItemsRelatedTo(id,RelationshipItemBuilder.LATEST_VERSION,RelationshipItemBuilder.QUERY_RELATION);
  }
  RepositoryUpdateManager repositoryUpdateManager=new RepositoryUpdateManager(parameter,relations){
    @Override public Set<EUpdateItemType> getTypes(){
      Set<EUpdateItemType> types=new HashSet<EUpdateItemType>();
      types.add(EUpdateItemType.NODE_QUERY);
      return types;
    }
  }
;
  return repositoryUpdateManager.doWork(show,onlySimpleShow);
}

Fixed version (ground truth):
private static boolean updateQueryObject(Object parameter,boolean show,boolean onlySimpleShow,RepositoryNode node){
  Item item=node.getObject().getProperty().getItem();
  IProxyRepositoryFactory factory=CoreRuntimePlugin.getInstance().getProxyRepositoryFactory();
  List<IRepositoryViewObject> updateList=new ArrayList<IRepositoryViewObject>();
  List<RelationshipItemBuilder.Relation> relations=null;
  if (parameter instanceof Query) {
    String id=item.getProperty().getId() + "String_Node_Str" + ((Query)parameter).getLabel();
    relations=RelationshipItemBuilder.getInstance().getItemsRelatedTo(id,RelationshipItemBuilder.LATEST_VERSION,RelationshipItemBuilder.QUERY_RELATION);
  }
  RepositoryUpdateManager repositoryUpdateManager=new RepositoryUpdateManager(parameter,relations,true){
    @Override public Set<EUpdateItemType> getTypes(){
      Set<EUpdateItemType> types=new HashSet<EUpdateItemType>();
      types.add(EUpdateItemType.NODE_QUERY);
      return types;
    }
  }
;
  return repositoryUpdateManager.doWork(show,onlySimpleShow);
}
Program: 129977
Project: 129977
Buggy source:
public RepositoryUpdateManager(Object parameter,List<RelationshipItemBuilder.Relation> relations){
  super();
  this.parameter=parameter;
  this.relations=relations;
}

Fixed version (ground truth):
public RepositoryUpdateManager(Object parameter,List<RelationshipItemBuilder.Relation> relations,boolean isDetectAndUpdate){
  super();
  this.parameter=parameter;
  this.relations=relations;
  this.isDetectAndUpdate=isDetectAndUpdate;
}
Program: 129978
Project: 129978
Buggy source:
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  try {
    ProxyRepositoryFactory.getInstance().initialize();
  }
 catch (  PersistenceException e) {
    e.printStackTrace();
  }
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}

Fixed version (ground truth):
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  try {
    ProxyRepositoryFactory.getInstance().initialize();
  }
 catch (  PersistenceException e) {
    ExceptionHandler.process(e);
  }
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}
Program: 129981
Project: 129981
Buggy source:
public DocumentLookupCache(String matchingMode){
  if ("String_Node_Str".equals(matchingMode)) {
    cache=new UniqueLookupCache();
  }
 else   if ("String_Node_Str".equals(matchingMode)) {
    cache=new FirstLookupCache();
  }
 else   if ("String_Node_Str".equals(matchingMode)) {
    cache=new AllMatchLookupCache();
  }
}

Fixed version (ground truth):
public DocumentLookupCache(String matchingMode){
  if ("String_Node_Str".equals(matchingMode)) {
    cache=new UniqueLookupCache();
  }
 else   if ("String_Node_Str".equals(matchingMode)) {
    cache=new FirstLookupCache();
  }
 else   if ("String_Node_Str".equals(matchingMode) || "String_Node_Str".equals(matchingMode)) {
    cache=new AllMatchLookupCache();
  }
}
Program: 129984
Project: 129984
Buggy source:
public void initControlData(boolean flag){
  checkConnection(flag);
  if (tableNodeList != null && tableNodeList.size() > 0) {
    threadExecutor=new CustomThreadPoolExecutor(5,new ThreadPoolExecutor.CallerRunsPolicy());
  }
}

Fixed version (ground truth):
public void initControlData(boolean flag){
  checkConnection(flag);
  checkTreeRoot();
  if (tableNodeList != null && tableNodeList.size() > 0) {
    threadExecutor=new CustomThreadPoolExecutor(5,new ThreadPoolExecutor.CallerRunsPolicy());
  }
}
Program: 129985
Project: 129985
Buggy source:
public void initControlData(boolean flag){
  checkConnection(flag);
  if (tableNodeList != null && tableNodeList.size() > 0) {
    threadExecutor=new CustomThreadPoolExecutor(5,new ThreadPoolExecutor.CallerRunsPolicy());
  }
}

Fixed version (ground truth):
public void initControlData(boolean flag){
  checkConnection(flag);
  checkTreeRoot();
  if (tableNodeList != null && tableNodeList.size() > 0) {
    threadExecutor=new CustomThreadPoolExecutor(5,new ThreadPoolExecutor.CallerRunsPolicy());
  }
}
Program: 129986
Project: 129986
Buggy source:
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  try {
    ProxyRepositoryFactory.getInstance().initialize();
  }
 catch (  PersistenceException e) {
    e.printStackTrace();
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}

Fixed version (ground truth):
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  try {
    ProxyRepositoryFactory.getInstance().initialize();
  }
 catch (  PersistenceException e) {
    ExceptionHandler.process(e);
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}
Program: 129992
Project: 129992
Buggy source:
/** 
 * DOC chuang Comment method "checkColumnNames".
 */
public String checkColumnNames(){
  List<SchemaTarget> list=getModel().getBeansList();
  Set<String> conflictNames=new HashSet<String>();
  Set<String> names=new HashSet<String>();
  Map<String,String> con=new HashMap<String,String>();
  int lstSize=list.size();
  for (int i=0; i < lstSize; i++) {
    String name=list.get(i).getTagName();
    String path=list.get(i).getRelativeXPathQuery();
    if (path == null) {
      path="String_Node_Str";
    }
    if (name == null)     name="String_Node_Str";
    if (!path.contains("String_Node_Str") && names.contains(name)) {
      if (con.get(name) != null && !con.get(name).contains("String_Node_Str"))       conflictNames.add(name);
    }
 else {
      names.add(name);
      con.put(name,path);
    }
  }
  setRowBackground(list,conflictNames);
  if (conflictNames.isEmpty()) {
    return null;
  }
 else {
    StringBuffer buf=new StringBuffer();
    buf.append(Messages.getString("String_Node_Str"));
    for (    String name : conflictNames) {
      buf.append(name);
      buf.append("String_Node_Str");
    }
    buf.deleteCharAt(buf.length() - 1);
    buf.append(Messages.getString("String_Node_Str"));
    return buf.toString();
  }
}

Fixed version (ground truth):
/** 
 * DOC chuang Comment method "checkColumnNames".
 */
public String checkColumnNames(){
  List<SchemaTarget> list=getModel().getBeansList();
  Set<String> conflictNames=new HashSet<String>();
  Set<String> names=new HashSet<String>();
  int lstSize=list.size();
  for (int i=0; i < lstSize; i++) {
    String name=list.get(i).getTagName();
    String path=list.get(i).getRelativeXPathQuery();
    if (path == null) {
      path="String_Node_Str";
    }
    if (name == null)     name="String_Node_Str";
    if (names.contains(name)) {
      conflictNames.add(name);
    }
 else {
      names.add(name);
    }
  }
  setRowBackground(list,conflictNames);
  if (conflictNames.isEmpty()) {
    return null;
  }
 else {
    StringBuffer buf=new StringBuffer();
    buf.append(Messages.getString("String_Node_Str"));
    for (    String name : conflictNames) {
      buf.append(name);
      buf.append("String_Node_Str");
    }
    buf.deleteCharAt(buf.length() - 1);
    buf.append(Messages.getString("String_Node_Str"));
    return buf.toString();
  }
}
Program: 129995
Project: 129995
Buggy source:
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}

Fixed version (ground truth):
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  try {
    ProxyRepositoryFactory.getInstance().initialize();
  }
 catch (  PersistenceException e) {
    e.printStackTrace();
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}
Program: 129996
Project: 129996
Buggy source:
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}

Fixed version (ground truth):
public boolean isLock(RepositoryNode sourceNode){
  boolean isLock=false;
  try {
    ProxyRepositoryFactory.getInstance().initialize();
  }
 catch (  PersistenceException e) {
    e.printStackTrace();
  }
  IRepositoryViewObject objectToCopy=sourceNode.getObject();
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_USER) {
    isLock=true;
  }
  if (ProxyRepositoryFactory.getInstance().getStatus(objectToCopy) == ERepositoryStatus.LOCK_BY_OTHER) {
    isLock=true;
  }
  return isLock;
}
Program: 129998
Project: 129998
Buggy source:
@Override public void postStartup(){
  super.postStartup();
  if (!ArrayUtils.contains(Platform.getApplicationArgs(),"String_Node_Str")) {
    RegisterManagement.getInstance().validateRegistration();
  }
  if (!CommonsPlugin.isHeadless()) {
    CorePlugin.getDefault().getCodeGeneratorService().initializeTemplates();
  }
  PerspectiveReviewUtil.setPerspectiveTabs();
}

Fixed version (ground truth):
@Override public void postStartup(){
  super.postStartup();
  if (!ArrayUtils.contains(Platform.getApplicationArgs(),EclipseCommandLine.TALEND_DISABLE_LOGINDIALOG_COMMAND)) {
    RegisterManagement.getInstance().validateRegistration();
  }
  if (!CommonsPlugin.isHeadless()) {
    CorePlugin.getDefault().getCodeGeneratorService().initializeTemplates();
  }
  PerspectiveReviewUtil.setPerspectiveTabs();
}
Program: 130000
Project: 130000
Buggy source:
@Override public void postStartup(){
  super.postStartup();
  if (!ArrayUtils.contains(Platform.getApplicationArgs(),"String_Node_Str")) {
    RegisterManagement.getInstance().validateRegistration();
  }
  if (!CommonsPlugin.isHeadless()) {
    CorePlugin.getDefault().getCodeGeneratorService().initializeTemplates();
  }
  PerspectiveReviewUtil.setPerspectiveTabs();
}

Fixed version (ground truth):
@Override public void postStartup(){
  super.postStartup();
  if (!ArrayUtils.contains(Platform.getApplicationArgs(),EclipseCommandLine.TALEND_DISABLE_LOGINDIALOG_COMMAND)) {
    RegisterManagement.getInstance().validateRegistration();
  }
  if (!CommonsPlugin.isHeadless()) {
    CorePlugin.getDefault().getCodeGeneratorService().initializeTemplates();
  }
  PerspectiveReviewUtil.setPerspectiveTabs();
}
Program: 130001
Project: 130001
Buggy source:
/** 
 * DOC chuang Comment method "checkColumnNames".
 */
public String checkColumnNames(){
  List<SchemaTarget> list=getModel().getBeansList();
  Set<String> conflictNames=new HashSet<String>();
  Set<String> names=new HashSet<String>();
  Map<String,String> con=new HashMap<String,String>();
  int lstSize=list.size();
  for (int i=0; i < lstSize; i++) {
    String name=list.get(i).getTagName();
    String path=list.get(i).getRelativeXPathQuery();
    if (path == null) {
      path="String_Node_Str";
    }
    if (name == null)     name="String_Node_Str";
    if (!path.contains("String_Node_Str") && names.contains(name)) {
      if (con.get(name) != null && !con.get(name).contains("String_Node_Str"))       conflictNames.add(name);
    }
 else {
      names.add(name);
      con.put(name,path);
    }
  }
  setRowBackground(list,conflictNames);
  if (conflictNames.isEmpty()) {
    return null;
  }
 else {
    StringBuffer buf=new StringBuffer();
    buf.append(Messages.getString("String_Node_Str"));
    for (    String name : conflictNames) {
      buf.append(name);
      buf.append("String_Node_Str");
    }
    buf.deleteCharAt(buf.length() - 1);
    buf.append(Messages.getString("String_Node_Str"));
    return buf.toString();
  }
}

Fixed version (ground truth):
/** 
 * DOC chuang Comment method "checkColumnNames".
 */
public String checkColumnNames(){
  List<SchemaTarget> list=getModel().getBeansList();
  Set<String> conflictNames=new HashSet<String>();
  Set<String> names=new HashSet<String>();
  int lstSize=list.size();
  for (int i=0; i < lstSize; i++) {
    String name=list.get(i).getTagName();
    String path=list.get(i).getRelativeXPathQuery();
    if (path == null) {
      path="String_Node_Str";
    }
    if (name == null)     name="String_Node_Str";
    if (names.contains(name)) {
      conflictNames.add(name);
    }
 else {
      names.add(name);
    }
  }
  setRowBackground(list,conflictNames);
  if (conflictNames.isEmpty()) {
    return null;
  }
 else {
    StringBuffer buf=new StringBuffer();
    buf.append(Messages.getString("String_Node_Str"));
    for (    String name : conflictNames) {
      buf.append(name);
      buf.append("String_Node_Str");
    }
    buf.deleteCharAt(buf.length() - 1);
    buf.append(Messages.getString("String_Node_Str"));
    return buf.toString();
  }
}
Program: 130005
Project: 130005
Buggy source:
private TableNode transferTableToTableNode(MetadataTable tableItem,TableNode parentNode){
  TableNode existTableNode=null;
  if (tableItem instanceof TdTable) {
    TdTable td=(TdTable)tableItem;
    existTableNode=new TableNode();
    existTableNode.setType(TableNode.TABLE);
    existTableNode.setValue(td.getLabel());
    existTableNode.setItemType(td.getTableType());
    existTableNode.setTable(td);
    existTableNode.setParent(parentNode);
    parentNode.addChild(existTableNode);
  }
 else   if (tableItem instanceof TdView) {
    TdView tv=(TdView)tableItem;
    existTableNode=new TableNode();
    existTableNode.setType(TableNode.TABLE);
    existTableNode.setValue(tv.getLabel());
    existTableNode.setItemType(tv.getTableType());
    existTableNode.setView(tv);
    existTableNode.setParent(parentNode);
    parentNode.addChild(existTableNode);
  }
  return existTableNode;
}

Fixed version (ground truth):
private TableNode transferTableToTableNode(MetadataTable tableItem,TableNode parentNode){
  TableNode existTableNode=null;
  if (tableItem instanceof TdTable) {
    TdTable td=(TdTable)tableItem;
    existTableNode=new TableNode();
    existTableNode.setType(TableNode.TABLE);
    existTableNode.setValue(td.getLabel());
    existTableNode.setItemType(td.getTableType());
    existTableNode.setTable(td);
    if (parentNode != null) {
      existTableNode.setParent(parentNode);
      parentNode.addChild(existTableNode);
    }
  }
 else   if (tableItem instanceof TdView) {
    TdView tv=(TdView)tableItem;
    existTableNode=new TableNode();
    existTableNode.setType(TableNode.TABLE);
    existTableNode.setValue(tv.getLabel());
    existTableNode.setItemType(tv.getTableType());
    existTableNode.setView(tv);
    if (parentNode != null) {
      existTableNode.setParent(parentNode);
      parentNode.addChild(existTableNode);
    }
  }
  return existTableNode;
}
Program: 130007
Project: 130007
Buggy source:
protected void deleteTable(TableNode tableItem){
  Collection<MetadataTable> tables=new ArrayList<MetadataTable>();
  Iterator<MetadataTable> iterate=ConnectionHelper.getTables(getConnection()).iterator();
  while (iterate.hasNext()) {
    MetadataTable metadata=iterate.next();
    if (metadata != null && metadata.getLabel().equals(tableItem.getValue())) {
      tables.add(metadata);
    }
  }
  TableNode parent=tableItem.getParent();
  String catalog="String_Node_Str";
  String schema="String_Node_Str";
  if (parent != null) {
    if (parent.getType() == TableNode.CATALOG) {
      catalog=parent.getValue();
    }
 else     if (parent.getType() == TableNode.SCHEMA) {
      schema=parent.getValue();
      TableNode catalogNode=parent.getParent();
      if (catalogNode != null) {
        catalog=catalogNode.getValue();
      }
    }
  }
  ProjectNodeHelper.removeTablesFromCurrentCatalogOrSchema(catalog,schema,getConnection(),tables);
}

Fixed version (ground truth):
protected void deleteTable(TableNode tableItem){
  Collection<MetadataTable> tables=new ArrayList<MetadataTable>();
  Iterator<MetadataTable> iterate=ConnectionHelper.getTables(getConnection()).iterator();
  while (iterate.hasNext()) {
    MetadataTable metadata=iterate.next();
    if (metadata != null && metadata.getLabel().equals(tableItem.getValue())) {
      tables.add(metadata);
    }
  }
  TableNode parent=tableItem.getParent();
  String catalog="String_Node_Str";
  String schema="String_Node_Str";
  if (parent != null) {
    if (parent.getType() == TableNode.CATALOG) {
      catalog=parent.getValue();
    }
 else     if (parent.getType() == TableNode.SCHEMA) {
      schema=parent.getValue();
      TableNode catalogNode=parent.getParent();
      if (catalogNode != null) {
        catalog=catalogNode.getValue();
      }
    }
  }
  boolean isAccess=EDatabaseTypeName.ACCESS.getDisplayName().equals(metadataconnection.getDbType());
  if (isAccess) {
    ProjectNodeHelper.removeTablesFromCurrentCatalogOrSchema(catalog,getConnection().getName(),getConnection(),tables);
  }
 else {
    ProjectNodeHelper.removeTablesFromCurrentCatalogOrSchema(catalog,schema,getConnection(),tables);
  }
}
Program: 130009
Project: 130009
Buggy source:
@Override protected String getBeanString(org.talend.core.model.metadata.builder.connection.MetadataColumn bean){
  return bean.getName();
}

Fixed version (ground truth):
@Override protected String getBeanString(org.talend.core.model.metadata.builder.connection.MetadataColumn bean){
  return bean.getLabel();
}