nus-yam/ex-repair huggingface dataset:
Program: 125433
Project: 125433
Buggy source:
public Set<InstalledUnit> installPatchFile(File updatesiteZip,boolean keepChangeConfigIni) throws Exception {
  if (updatesiteZip != null && updatesiteZip.exists() && updatesiteZip.isFile()) {
    final File tmpFolder=org.talend.utils.files.FileUtils.createTmpFolder("String_Node_Str","String_Node_Str");
    try {
      FilesUtils.unzip(updatesiteZip.getAbsolutePath(),tmpFolder.getAbsolutePath());
      final File[] updateFiles=UpdatesHelper.findUpdateFiles(tmpFolder);
      Set<InstalledUnit> installed=new HashSet<InstalledUnit>();
      if (updateFiles != null && updateFiles.length > 1) {
        for (        File f : updateFiles) {
          installed.addAll(installPatchFolder(f,keepChangeConfigIni));
        }
      }
      return installed;
    }
  finally {
      FilesUtils.deleteFolder(tmpFolder,true);
    }
  }
  return Collections.emptySet();
}

Fixed version (ground truth):
public Set<InstalledUnit> installPatchFile(File updatesiteZip,boolean keepChangeConfigIni) throws Exception {
  if (updatesiteZip != null && updatesiteZip.exists() && updatesiteZip.isFile() && updatesiteZip.getName().endsWith(FileExtensions.ZIP_FILE_SUFFIX)) {
    final File tmpFolder=org.talend.utils.files.FileUtils.createTmpFolder("String_Node_Str","String_Node_Str");
    try {
      FilesUtils.unzip(updatesiteZip.getAbsolutePath(),tmpFolder.getAbsolutePath());
      final File[] updateFiles=UpdatesHelper.findUpdateFiles(tmpFolder);
      Set<InstalledUnit> installed=new HashSet<InstalledUnit>();
      if (updateFiles != null && updateFiles.length > 0) {
        for (        File f : updateFiles) {
          if (f.isDirectory()) {
            installed.addAll(installPatchFolder(f,keepChangeConfigIni));
          }
        }
      }
      return installed;
    }
  finally {
      FilesUtils.deleteFolder(tmpFolder,true);
    }
  }
  return Collections.emptySet();
}
Program: 125434
Project: 125434
Buggy source:
@Override public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
  Timer timer=Timer.getTimer("String_Node_Str");
  timer.start();
  if (needInitialize) {
    monitorWrap=new EventLoopProgressMonitor(monitor);
    try {
      final ProxyRepositoryFactory factory=ProxyRepositoryFactory.getInstance();
      factory.initialize();
    }
 catch (    Exception e) {
      throw new InvocationTargetException(e);
    }
  }
  try {
    ResourcesPlugin.getWorkspace().getRoot().refreshLocal(IResource.DEPTH_INFINITE,monitor);
  }
 catch (  CoreException e) {
    throw new InvocationTargetException(e);
  }
  viewer.refresh();
  viewer.setSelection(new TreeSelection());
  expandTreeRootIfOnlyOneRoot();
  if (PluginChecker.isJobLetPluginLoaded()) {
    IJobletProviderService jobletService=(IJobletProviderService)GlobalServiceRegister.getDefault().getService(IJobletProviderService.class);
    if (jobletService != null) {
      jobletService.loadComponentsFromProviders();
    }
  }
  timer.stop();
}

Fixed version (ground truth):
@Override public void run(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
  Timer timer=Timer.getTimer("String_Node_Str");
  timer.start();
  if (needInitialize) {
    monitorWrap=new EventLoopProgressMonitor(monitor);
    try {
      final ProxyRepositoryFactory factory=ProxyRepositoryFactory.getInstance();
      factory.initialize();
    }
 catch (    Exception e) {
      throw new InvocationTargetException(e);
    }
  }
  try {
    ResourcesPlugin.getWorkspace().getRoot().refreshLocal(IResource.DEPTH_INFINITE,monitor);
  }
 catch (  CoreException e) {
    throw new InvocationTargetException(e);
  }
  viewer.setSelection(new TreeSelection());
  viewer.refresh();
  expandTreeRootIfOnlyOneRoot();
  if (PluginChecker.isJobLetPluginLoaded()) {
    IJobletProviderService jobletService=(IJobletProviderService)GlobalServiceRegister.getDefault().getService(IJobletProviderService.class);
    if (jobletService != null) {
      jobletService.loadComponentsFromProviders();
    }
  }
  timer.stop();
}
Program: 125435
Project: 125435
Buggy source:
/** 
 * DOC nrousseau Comment method "findItemNode".
 * @param id
 * @return
 */
private IRepositoryNode findItemNode(String id,List<IRepositoryNode> nodes){
  for (  IRepositoryNode node : nodes) {
    if (id.equals(node.getId())) {
      return node;
    }
    List<IRepositoryNode> childrens=new ArrayList<>();
    Widget repWidget=this.findItem(node);
    if (repWidget != null) {
      Item[] childrenItem=this.getChildren(repWidget);
      if (childrenItem != null) {
        for (        Item childItem : childrenItem) {
          RepositoryNode repNode=this.getRepositoryNode(childItem);
          if (repNode != null) {
            childrens.add(repNode);
          }
        }
      }
    }
 else {
      ITreeContentProvider contentProvider=(ITreeContentProvider)getContentProvider();
      Object[] childrensObject=contentProvider.getElements(node);
      for (      Object o : childrensObject) {
        if (o instanceof IRepositoryNode) {
          childrens.add((IRepositoryNode)o);
        }
      }
    }
    IRepositoryNode childNode=findItemNode(id,childrens);
    if (childNode != null) {
      return childNode;
    }
  }
  return null;
}

Fixed version (ground truth):
/** 
 * DOC nrousseau Comment method "findItemNode".
 * @param id
 * @return
 */
private IRepositoryNode findItemNode(String id,List<IRepositoryNode> nodes){
  for (  IRepositoryNode node : nodes) {
    if (id.equals(node.getId())) {
      return node;
    }
    List<IRepositoryNode> childrens=new ArrayList<>();
    Widget repWidget=this.findItem(node);
    if (repWidget != null && !repWidget.isDisposed()) {
      Item[] childrenItem=this.getChildren(repWidget);
      if (childrenItem != null) {
        for (        Item childItem : childrenItem) {
          RepositoryNode repNode=this.getRepositoryNode(childItem);
          if (repNode != null) {
            childrens.add(repNode);
          }
        }
      }
    }
 else {
      ITreeContentProvider contentProvider=(ITreeContentProvider)getContentProvider();
      Object[] childrensObject=contentProvider.getElements(node);
      for (      Object o : childrensObject) {
        if (o instanceof IRepositoryNode) {
          childrens.add((IRepositoryNode)o);
        }
      }
    }
    IRepositoryNode childNode=findItemNode(id,childrens);
    if (childNode != null) {
      return childNode;
    }
  }
  return null;
}
Program: 125438
Project: 125438
Buggy source:
protected String getCorrectVariableName(ContextItem contextItem,String originalVariableName,EHadoopParamName noSqlParam){
  Set<String> contextVarNames=ContextUtils.getContextVarNames(contextItem);
  if (contextVarNames != null && !contextVarNames.contains(originalVariableName)) {
    for (    String varName : contextVarNames) {
      if (varName.endsWith(noSqlParam.name())) {
        return varName;
      }
    }
  }
  return originalVariableName;
}

Fixed version (ground truth):
protected String getCorrectVariableName(ContextItem contextItem,String originalVariableName,String noSqlParam){
  Set<String> contextVarNames=ContextUtils.getContextVarNames(contextItem);
  if (contextVarNames != null && !contextVarNames.contains(originalVariableName)) {
    for (    String varName : contextVarNames) {
      if (varName.endsWith(noSqlParam)) {
        return varName;
      }
    }
  }
  return originalVariableName;
}
Program: 125442
Project: 125442
Buggy source:
/** 
 * Sets the isSingle.
 * @param isSingle the isSingle to set
 */
public void setSingleAndStruct(boolean isSingle){
  this.isSingleAndStruct=isSingle;
}

Fixed version (ground truth):
public static void setSingleAndStruct(boolean isSingle){
  isSingleAndStruct=isSingle;
}
Program: 125443
Project: 125443
Buggy source:
public void setProperty(String key,String value,String comment){
  this.commentMap.put(key,comment);
  keys.add(key);
  this.setProperty(key,value);
}

Fixed version (ground truth):
@Override public synchronized Object setProperty(String key,String value){
  this.commentMap.put(key,"String_Node_Str");
  keys.add(key);
  return super.setProperty(key,value);
}
Program: 125444
Project: 125444
Buggy source:
@SuppressWarnings("String_Node_Str") public String toSerialized() throws JSONException {
  JSONObject functionObj=new JSONObject();
  functionObj.put(NAME,getName());
  JSONArray parametersArr=new JSONArray();
  List<Parameter> params=getParameters();
  for (  Parameter param : params) {
    JSONObject parameterObj=new JSONObject();
    parameterObj.put(PARAMETER_NAME,param.getName());
    parameterObj.put(PARAMETER_VALUE,param.getValue());
    parametersArr.put(parameterObj);
  }
  functionObj.put(PARAMETERS,parametersArr);
  return functionObj.toString();
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") public String toSerialized() throws JSONException {
  JSONObject functionObj=new JSONObject();
  functionObj.put(PARAMETER_CLASS_NAME,getClassName() == null ? "String_Node_Str" : getClassName());
  functionObj.put(NAME,getName());
  JSONArray parametersArr=new JSONArray();
  List<Parameter> params=getParameters();
  for (  Parameter param : params) {
    JSONObject parameterObj=new JSONObject();
    parameterObj.put(PARAMETER_NAME,param.getName());
    parameterObj.put(PARAMETER_VALUE,param.getValue());
    parametersArr.put(parameterObj);
  }
  functionObj.put(PARAMETERS,parametersArr);
  return functionObj.toString();
}
Program: 125445
Project: 125445
Buggy source:
private void deleteAllRoutinesAndBeans(){
  if (GlobalServiceRegister.getDefault().isServiceRegistered(IRunProcessService.class)) {
    IRunProcessService runProcessService=(IRunProcessService)GlobalServiceRegister.getDefault().getService(IRunProcessService.class);
    ITalendProcessJavaProject project=runProcessService.getTalendProcessJavaProject();
    IFolder src=project.getSrcFolder();
    try {
      IResource[] childrenResources=src.members();
      for (      IResource child : childrenResources) {
        Object folderName=child.getName();
        if ("String_Node_Str".equals(folderName) || "String_Node_Str".equals(folderName) || "String_Node_Str".equals(folderName)) {
          child.delete(true,null);
        }
      }
    }
 catch (    CoreException e) {
      ExceptionHandler.process(e);
    }
  }
}

Fixed version (ground truth):
private void deleteAllRoutinesAndBeans(){
  if (GlobalServiceRegister.getDefault().isServiceRegistered(IRunProcessService.class)) {
    IRunProcessService runProcessService=(IRunProcessService)GlobalServiceRegister.getDefault().getService(IRunProcessService.class);
    ITalendProcessJavaProject project=runProcessService.getTalendProcessJavaProject();
    if (project != null) {
      IFolder src=project.getSrcFolder();
      try {
        IResource[] childrenResources=src.members();
        for (        IResource child : childrenResources) {
          Object folderName=child.getName();
          if ("String_Node_Str".equals(folderName) || "String_Node_Str".equals(folderName) || "String_Node_Str".equals(folderName)) {
            child.delete(true,null);
          }
        }
      }
 catch (      CoreException e) {
        ExceptionHandler.process(e);
      }
    }
  }
}
Program: 125446
Project: 125446
Buggy source:
private IImportItemsHandler findValidImportHandler(ImportItem importItem,boolean enableProductChecking,boolean checkBuiltIn){
  for (  IImportItemsHandler handler : getImportHandlers()) {
    handler.setEnableProductChecking(enableProductChecking);
    boolean isValid=handler.valid(importItem);
    if (!isValid && !checkBuiltIn) {
      isValid=handler.isValidSystemItem(importItem);
      if (isValid) {
        importItem.setSystemItem(true);
      }
    }
    if (isValid) {
      importItem.setImportHandler(handler);
      return handler;
    }
  }
  return null;
}

Fixed version (ground truth):
private IImportItemsHandler findValidImportHandler(ResourcesManager resManager,IPath path,ImportItem importItem,boolean enableProductChecking,boolean checkBuiltIn){
  for (  IImportItemsHandler handler : getImportHandlers()) {
    handler.setEnableProductChecking(enableProductChecking);
    boolean isValid=handler.valid(importItem) && handler.valid(resManager,path);
    if (!isValid && !checkBuiltIn) {
      isValid=handler.isValidSystemItem(importItem);
      if (isValid) {
        importItem.setSystemItem(true);
      }
    }
    if (isValid) {
      importItem.setImportHandler(handler);
      return handler;
    }
  }
  return null;
}
Program: 125448
Project: 125448
Buggy source:
/** 
 * When MapDB is used some different indicator maybe used same data file.then indicator need to implements it then we can know what data is for it
 * @param inputData
 * @return
 */
boolean isValid(Object inputData);

Fixed version (ground truth):
/** 
 * When MapDB is used some different indicator maybe used same data file.then the indicator need to implements it let me know what data is for it
 * @param inputData
 * @return
 */
boolean isValid(Object inputData);
Program: 125451
Project: 125451
Buggy source:
@Override public ResultSet getPrimaryKeys(String catalog,String schema,String table) throws SQLException {
  String sql="String_Node_Str" + schema + "String_Node_Str"+ table+ "String_Node_Str";
  ResultSet rs=null;
  Statement stmt=null;
  List<String[]> list=new ArrayList<String[]>();
  try {
    stmt=connection.createStatement();
    rs=stmt.executeQuery(sql);
    while (rs.next()) {
      String columnName=rs.getString("String_Node_Str").trim();
      String pk=rs.getString("String_Node_Str");
      String[] r=new String[]{columnName,pk};
      list.add(r);
    }
  }
 catch (  SQLException e) {
    throw new RuntimeException(e);
  }
 finally {
    try {
      rs.close();
      stmt.close();
    }
 catch (    Exception e) {
    }
  }
  TeradataResultSet tableResultSet=new TeradataResultSet();
  tableResultSet.setMetadata(PK_META);
  tableResultSet.setData(list);
  return tableResultSet;
}

Fixed version (ground truth):
@Override public ResultSet getPrimaryKeys(String catalog,String schema,String table) throws SQLException {
  int dbMajorVersion=connection.getMetaData().getDatabaseMajorVersion();
  String sql="String_Node_Str" + schema + "String_Node_Str"+ table+ "String_Node_Str";
  ResultSet rs=null;
  Statement stmt=null;
  String columnName=null;
  List<String[]> list=new ArrayList<String[]>();
  try {
    if (dbMajorVersion > 12) {
      sql="String_Node_Str" + schema + "String_Node_Str"+ table+ "String_Node_Str";
      rs=getResultSet(catalog,schema,table,sql);
      while (rs.next()) {
        columnName=rs.getString("String_Node_Str").trim();
        String indexType=rs.getString("String_Node_Str");
        String[] r=new String[]{columnName,indexType};
        list.add(r);
      }
    }
 else {
      stmt=connection.createStatement();
      rs=stmt.executeQuery(sql);
      while (rs.next()) {
        columnName=rs.getString("String_Node_Str").trim();
        String pk=rs.getString("String_Node_Str");
        String[] r=new String[]{columnName,pk};
        list.add(r);
      }
    }
  }
 catch (  SQLException e) {
    throw new RuntimeException(e);
  }
 finally {
    try {
      rs.close();
      stmt.close();
    }
 catch (    Exception e) {
    }
  }
  TeradataResultSet tableResultSet=new TeradataResultSet();
  tableResultSet.setMetadata(PK_META);
  tableResultSet.setData(list);
  return tableResultSet;
}
Program: 125456
Project: 125456
Buggy source:
private void duplicateTestCases(Item newItem,final CopyObjectAction copyObjectAction){
  if (!copyObjectAction.isAllowedToCopyTestCase(newItem,sourceNode) || !isAllowDuplicateTest) {
    return;
  }
  final IPath path=copyObjectAction.getTestCasePath(newItem,sourceNode);
  if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerProviderService.class)) {
    ITestContainerProviderService testContainerService=(ITestContainerProviderService)GlobalServiceRegister.getDefault().getService(ITestContainerProviderService.class);
    if (testContainerService != null) {
      testContainerService.copyDataFiles(newItem,sourceNode.getId());
      testContainerService.copyTestCase(newItem,sourceNode.getObject().getProperty().getItem(),path,null,true);
    }
  }
}

Fixed version (ground truth):
private void duplicateTestCases(Item newItem,final CopyObjectAction copyObjectAction){
  if (!copyObjectAction.isAllowedToCopyTestCase(newItem,sourceNode)) {
    return;
  }
  final IPath path=copyObjectAction.getTestCasePath(newItem,sourceNode);
  if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerProviderService.class)) {
    ITestContainerProviderService testContainerService=(ITestContainerProviderService)GlobalServiceRegister.getDefault().getService(ITestContainerProviderService.class);
    if (testContainerService != null) {
      testContainerService.copyDataFiles(newItem,sourceNode.getId());
      testContainerService.copyTestCase(newItem,sourceNode.getObject().getProperty().getItem(),path,null,true);
    }
  }
}
Program: 125457
Project: 125457
Buggy source:
public static void convertTestcases(final Item newItem,final IRepositoryViewObject sourceObject,final String jobTypeValue){
  if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerProviderService.class)) {
    ITestContainerProviderService testContainerService=(ITestContainerProviderService)GlobalServiceRegister.getDefault().getService(ITestContainerProviderService.class);
    if (testContainerService != null) {
      testContainerService.copyDataFiles(newItem,sourceObject.getId());
      Item item=sourceObject.getProperty().getItem();
      if (!(item instanceof ProcessItem)) {
        return;
      }
      testContainerService.copyTestCase(newItem,(ProcessItem)item,getTestCasePath(newItem,jobTypeValue),null,true);
    }
  }
}

Fixed version (ground truth):
public static void convertTestcases(final Item newItem,final IRepositoryViewObject sourceObject,final String jobTypeValue){
  if (GlobalServiceRegister.getDefault().isServiceRegistered(ITestContainerProviderService.class)) {
    ITestContainerProviderService testContainerService=(ITestContainerProviderService)GlobalServiceRegister.getDefault().getService(ITestContainerProviderService.class);
    if (testContainerService != null) {
      testContainerService.copyDataFiles(newItem,sourceObject.getId());
      Item item=sourceObject.getProperty().getItem();
      if (!(item instanceof ProcessItem)) {
        return;
      }
      testContainerService.copyTestCase(newItem,(ProcessItem)item,getTestCasePath(newItem,jobTypeValue),null,false);
    }
  }
}
Program: 125459
Project: 125459
Buggy source:
@Override public void run(){
  for (int i=0; i < fileNames.length; i++) {
    String fileName=fileNames[i];
    File file=new File(path + File.separatorChar + fileName);
    File tempFile=null;
    try {
      if (fileNames.length == 1 && !file.isDirectory() && !file.getName().equals(moduleName)) {
        Project project=ProjectManager.getInstance().getCurrentProject();
        IProject fsProject=ResourceUtils.getProject(project);
        IFolder tmpFolder=fsProject.getFolder("String_Node_Str");
        if (!tmpFolder.exists()) {
          tmpFolder.create(true,true,null);
        }
        tempFile=new File(tmpFolder.getLocation().toPortableString(),moduleName);
        FilesUtils.copyFile(file,tempFile);
        file=tempFile;
        fileNames[i]=file.getName();
      }
      LibManagerUiPlugin.getDefault().getLibrariesService().deployLibrary(file.toURL());
      if (tempFile != null) {
        FilesUtils.deleteFile(tempFile,true);
      }
    }
 catch (    Exception e) {
      ExceptionHandler.process(e);
      continue;
    }
  }
  cleanupLib(new HashSet<String>(Arrays.asList(fileNames)));
}

Fixed version (ground truth):
@Override public void run(){
  for (int i=0; i < fileNames.length; i++) {
    String fileName=fileNames[i];
    File file=new File(path + File.separatorChar + fileName);
    File tempFile=null;
    try {
      if (moduleName != null && fileNames.length == 1 && !file.isDirectory() && !file.getName().equals(moduleName)) {
        Project project=ProjectManager.getInstance().getCurrentProject();
        IProject fsProject=ResourceUtils.getProject(project);
        IFolder tmpFolder=fsProject.getFolder("String_Node_Str");
        if (!tmpFolder.exists()) {
          tmpFolder.create(true,true,null);
        }
        tempFile=new File(tmpFolder.getLocation().toPortableString(),moduleName);
        FilesUtils.copyFile(file,tempFile);
        file=tempFile;
        fileNames[i]=file.getName();
      }
      LibManagerUiPlugin.getDefault().getLibrariesService().deployLibrary(file.toURL());
      if (tempFile != null) {
        FilesUtils.deleteFile(tempFile,true);
      }
    }
 catch (    Exception e) {
      ExceptionHandler.process(e);
      continue;
    }
  }
  cleanupLib(new HashSet<String>(Arrays.asList(fileNames)));
}
Program: 125463
Project: 125463
Buggy source:
@Override public ResultSet getPrimaryKeys(String catalog,String schema,String table) throws SQLException {
  String sql="String_Node_Str" + schema + "String_Node_Str"+ table+ "String_Node_Str";
  ResultSet rs=null;
  Statement stmt=null;
  List<String[]> list=new ArrayList<String[]>();
  try {
    stmt=connection.createStatement();
    rs=stmt.executeQuery(sql);
    while (rs.next()) {
      String columnName=rs.getString("String_Node_Str").trim();
      String pk=rs.getString("String_Node_Str");
      String[] r=new String[]{columnName,pk};
      list.add(r);
    }
  }
 catch (  SQLException e) {
    throw new RuntimeException(e);
  }
 finally {
    try {
      rs.close();
      stmt.close();
    }
 catch (    Exception e) {
    }
  }
  TeradataResultSet tableResultSet=new TeradataResultSet();
  tableResultSet.setMetadata(PK_META);
  tableResultSet.setData(list);
  return tableResultSet;
}

Fixed version (ground truth):
@Override public ResultSet getPrimaryKeys(String catalog,String schema,String table) throws SQLException {
  int dbMajorVersion=connection.getMetaData().getDatabaseMajorVersion();
  String sql="String_Node_Str" + schema + "String_Node_Str"+ table+ "String_Node_Str";
  ResultSet rs=null;
  Statement stmt=null;
  String columnName=null;
  List<String[]> list=new ArrayList<String[]>();
  try {
    if (dbMajorVersion > 12) {
      sql="String_Node_Str" + schema + "String_Node_Str"+ table+ "String_Node_Str";
      rs=getResultSet(catalog,schema,table,sql);
      while (rs.next()) {
        columnName=rs.getString("String_Node_Str").trim();
        String indexType=rs.getString("String_Node_Str");
        String[] r=new String[]{columnName,indexType};
        list.add(r);
      }
    }
 else {
      stmt=connection.createStatement();
      rs=stmt.executeQuery(sql);
      while (rs.next()) {
        columnName=rs.getString("String_Node_Str").trim();
        String pk=rs.getString("String_Node_Str");
        String[] r=new String[]{columnName,pk};
        list.add(r);
      }
    }
  }
 catch (  SQLException e) {
    throw new RuntimeException(e);
  }
 finally {
    try {
      rs.close();
      stmt.close();
    }
 catch (    Exception e) {
    }
  }
  TeradataResultSet tableResultSet=new TeradataResultSet();
  tableResultSet.setMetadata(PK_META);
  tableResultSet.setData(list);
  return tableResultSet;
}
Program: 125464
Project: 125464
Buggy source:
@Override public boolean equals(Object obj){
  if (this == obj) {
    return true;
  }
  if (obj == null) {
    return false;
  }
  if (getClass() != obj.getClass()) {
    return false;
  }
  ATreeNode other=(ATreeNode)obj;
  if (this.dataType == null) {
    if (other.dataType != null) {
      return false;
    }
  }
 else   if (!this.dataType.equals(other.dataType)) {
    return false;
  }
  if (this.originalDataType == null) {
    if (other.originalDataType != null) {
      return false;
    }
  }
 else   if (!this.originalDataType.equals(other.originalDataType)) {
    return false;
  }
  if (this.type != other.type) {
    return false;
  }
  if (this.value == null) {
    if (other.value != null) {
      return false;
    }
  }
 else   if (!this.value.equals(other.value)) {
    return false;
  }
  return true;
}

Fixed version (ground truth):
@Override public boolean equals(Object obj){
  if (this == obj) {
    return true;
  }
  if (obj == null) {
    return false;
  }
  if (getClass() != obj.getClass()) {
    return false;
  }
  ATreeNode other=(ATreeNode)obj;
  if (this.dataType == null) {
    if (other.dataType != null) {
      return false;
    }
  }
 else   if (!this.dataType.equals(other.dataType)) {
    return false;
  }
  if (this.originalDataType == null) {
    if (other.originalDataType != null) {
      return false;
    }
  }
 else   if (!this.originalDataType.equals(other.originalDataType)) {
    return false;
  }
  if (this.type != other.type) {
    return false;
  }
  if (this.value == null) {
    if (other.value != null) {
      return false;
    }
  }
 else   if (!this.value.equals(other.value)) {
    return false;
  }
  if (this.parent == null) {
    if (other.parent != null) {
      return false;
    }
  }
 else   if (!this.parent.equals(other.parent)) {
    return false;
  }
  return true;
}
Program: 125466
Project: 125466
Buggy source:
private void refreshNodeFromProperty(org.talend.core.model.properties.Property property){
  List<IRepositoryNode> nodes=new ArrayList<>();
  for (  Object object : getExpandedElements()) {
    if (object instanceof IRepositoryNode) {
      nodes.add((IRepositoryNode)object);
    }
  }
  IRepositoryNode itemNode=findItemNode(property.getId(),nodes);
  if (itemNode != null) {
    IRepositoryViewObject object=itemNode.getObject();
    if (object != null) {
      object.getProperty();
    }
    if (itemNode != null && !getTree().isDisposed()) {
      refresh(itemNode,true);
    }
  }
}

Fixed version (ground truth):
private void refreshNodeFromProperty(org.talend.core.model.properties.Property property){
  if (this.getTree() == null || this.getTree().isDisposed()) {
    return;
  }
  List<IRepositoryNode> nodes=new ArrayList<>();
  for (  Object object : getExpandedElements()) {
    if (object instanceof IRepositoryNode) {
      nodes.add((IRepositoryNode)object);
    }
  }
  IRepositoryNode itemNode=findItemNode(property.getId(),nodes);
  if (itemNode != null) {
    IRepositoryViewObject object=itemNode.getObject();
    if (object != null) {
      object.getProperty();
    }
    if (itemNode != null && !getTree().isDisposed()) {
      refresh(itemNode,true);
    }
  }
}
Program: 125468
Project: 125468
Buggy source:
@Override protected void adaptFormToEditable(){
  super.adaptFormToEditable();
  loopTableEditorView.setReadOnly(isContextMode());
  this.fieldsTableEditorView.setReadOnly(isContextMode());
}

Fixed version (ground truth):
@Override protected void adaptFormToEditable(){
  super.adaptFormToEditable();
  loopTableEditorView.setReadOnly(isContextMode());
  this.fieldsTableEditorView.setReadOnly(false);
}
Program: 125470
Project: 125470
Buggy source:
public static boolean needFormatSQL(String dbType){
  if (dbType != null) {
    EDatabaseTypeName type=EDatabaseTypeName.getTypeFromDbType(dbType);
    if (type != null) {
switch (type) {
case NETEZZA:
case ORACLE_OCI:
case ORACLEFORSID:
case ORACLESN:
case PSQL:
case PLUSPSQL:
case AS400:
case ACCESS:
case MYSQL:
case AMAZON_AURORA:
case IBMDB2:
case IBMDB2ZOS:
case HIVE:
        return false;
default :
      return true;
  }
}
}
return false;
}

Fixed version (ground truth):
public static boolean needFormatSQL(String dbType){
  if (dbType != null) {
    EDatabaseTypeName type=EDatabaseTypeName.getTypeFromDbType(dbType);
    if (type != null) {
switch (type) {
case NETEZZA:
case ORACLE_OCI:
case ORACLEFORSID:
case ORACLESN:
case PSQL:
case PLUSPSQL:
case AS400:
case ACCESS:
case MYSQL:
case AMAZON_AURORA:
case IBMDB2:
case IBMDB2ZOS:
case HIVE:
case IMPALA:
        return false;
default :
      return true;
  }
}
}
return false;
}
Program: 125471
Project: 125471
Buggy source:
public static IQueryGenerator getGenerator(final EDatabaseTypeName dbType){
  if (dbType == null) {
    return null;
  }
switch (dbType) {
case HIVE:
    return new HiveQueryGenerator(dbType);
case H2:
  return new H2QueryGenerator(dbType);
case NETEZZA:
return new NetezzaQueryGenerator();
case PLUSPSQL:
case PSQL:
return new PostgreQueryGenerator(dbType);
case AS400:
return new AS400QueryGenerator();
case ACCESS:
case IBMDB2:
case IBMDB2ZOS:
case MYSQL:
case AMAZON_AURORA:
case INGRES:
return new NonDatabaseDefaultQueryGenerator(dbType);
case ORACLE_OCI:
case ORACLEFORSID:
case ORACLESN:
case SAS:
case SAPHana:
return new OracleQueryGenerator(dbType);
case EXASOL:
case FIREBIRD:
case GENERAL_JDBC:
case GODBC:
case GREENPLUM:
case HSQLDB:
case HSQLDB_IN_PROGRESS:
case HSQLDB_SERVER:
case HSQLDB_WEBSERVER:
case INFORMIX:
case INTERBASE:
case JAVADB:
case JAVADB_DERBYCLIENT:
case JAVADB_EMBEDED:
case JAVADB_JCCJDBC:
case MAXDB:
case MSODBC:
case MSSQL:
case PARACCEL:
case REDSHIFT:
case SQLITE:
case SYBASEASE:
case SYBASEIQ:
case TERADATA:
case VERTICA:
default :
return new OldDelegateQueryGenerator(dbType);
}
}

Fixed version (ground truth):
public static IQueryGenerator getGenerator(final EDatabaseTypeName dbType){
  if (dbType == null) {
    return null;
  }
switch (dbType) {
case HIVE:
    return new HiveQueryGenerator(dbType);
case H2:
  return new H2QueryGenerator(dbType);
case IMPALA:
return new ImpalaQueryGenerator(dbType);
case NETEZZA:
return new NetezzaQueryGenerator();
case PLUSPSQL:
case PSQL:
return new PostgreQueryGenerator(dbType);
case AS400:
return new AS400QueryGenerator();
case ACCESS:
case IBMDB2:
case IBMDB2ZOS:
case MYSQL:
case AMAZON_AURORA:
case INGRES:
return new NonDatabaseDefaultQueryGenerator(dbType);
case ORACLE_OCI:
case ORACLEFORSID:
case ORACLESN:
case SAS:
case SAPHana:
return new OracleQueryGenerator(dbType);
case EXASOL:
case FIREBIRD:
case GENERAL_JDBC:
case GODBC:
case GREENPLUM:
case HSQLDB:
case HSQLDB_IN_PROGRESS:
case HSQLDB_SERVER:
case HSQLDB_WEBSERVER:
case INFORMIX:
case INTERBASE:
case JAVADB:
case JAVADB_DERBYCLIENT:
case JAVADB_EMBEDED:
case JAVADB_JCCJDBC:
case MAXDB:
case MSODBC:
case MSSQL:
case PARACCEL:
case REDSHIFT:
case SQLITE:
case SYBASEASE:
case SYBASEIQ:
case TERADATA:
case VERTICA:
default :
return new OldDelegateQueryGenerator(dbType);
}
}
Program: 125472
Project: 125472
Buggy source:
public DbConnStrForHive(EDatabaseTypeName dbType,String urlTemplate,EDatabaseVersion4Drivers[] hiveModes){
  super(dbType,urlTemplate);
}

Fixed version (ground truth):
public DbConnStrForHive(EDatabaseTypeName dbType,String urlTemplate,EDatabaseVersion4Drivers[] hiveModes,String defaultServer,String defaultDB){
  super(dbType,urlTemplate,null,null,hiveModes,defaultServer,defaultDB);
}
Program: 125474
Project: 125474
Buggy source:
private void fillDefaultsWhenImpalaVersionChanged(){
  if (isCreation && isNeedFillDefaults()) {
    String distribution=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_DISTRIBUTION);
    String version=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_VERSION);
    if (distribution == null) {
      return;
    }
    EDatabaseConnTemplate template=EDatabaseConnTemplate.indexOfTemplate(getConnection().getDatabaseType());
    if (template != null) {
      portText.setText(template.getDefaultPort());
    }
    initImpalaInfo();
  }
}

Fixed version (ground truth):
private void fillDefaultsWhenImpalaVersionChanged(){
  if (isCreation && isNeedFillDefaults()) {
    String distribution=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_DISTRIBUTION);
    String version=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_VERSION);
    if (distribution == null) {
      return;
    }
    EDatabaseConnTemplate template=EDatabaseConnTemplate.indexOfTemplate(getConnection().getDatabaseType());
    if (template != null) {
      portText.setText(template.getDefaultPort());
      serverText.setText(template.getDefaultServer(null));
      sidOrDatabaseText.setText(template.getDefaultDB(null));
    }
    initImpalaInfo();
  }
}
Program: 125476
Project: 125476
Buggy source:
/** 
 * DOC nrousseau Comment method "findItemNode".
 * @param id
 * @return
 */
private IRepositoryNode findItemNode(String id,List<IRepositoryNode> nodes){
  for (  IRepositoryNode node : nodes) {
    if (id.equals(node.getId())) {
      return node;
    }
    ITreeContentProvider contentProvider=(ITreeContentProvider)getContentProvider();
    Object[] childrensObject=contentProvider.getElements(node);
    List<IRepositoryNode> childrens=new ArrayList<>();
    for (    Object o : childrensObject) {
      if (o instanceof IRepositoryNode) {
        childrens.add((IRepositoryNode)o);
      }
    }
    IRepositoryNode childNode=findItemNode(id,childrens);
    if (childNode != null) {
      return childNode;
    }
  }
  return null;
}

Fixed version (ground truth):
/** 
 * DOC nrousseau Comment method "findItemNode".
 * @param id
 * @return
 */
private IRepositoryNode findItemNode(String id,List<IRepositoryNode> nodes){
  for (  IRepositoryNode node : nodes) {
    if (id.equals(node.getId())) {
      return node;
    }
    List<IRepositoryNode> childrens=new ArrayList<>();
    Widget repWidget=this.findItem(node);
    if (repWidget != null) {
      Item[] childrenItem=this.getChildren(repWidget);
      if (childrenItem != null) {
        for (        Item childItem : childrenItem) {
          RepositoryNode repNode=this.getRepositoryNode(childItem);
          if (repNode != null) {
            childrens.add(repNode);
          }
        }
      }
    }
 else {
      ITreeContentProvider contentProvider=(ITreeContentProvider)getContentProvider();
      Object[] childrensObject=contentProvider.getElements(node);
      for (      Object o : childrensObject) {
        if (o instanceof IRepositoryNode) {
          childrens.add((IRepositoryNode)o);
        }
      }
    }
    IRepositoryNode childNode=findItemNode(id,childrens);
    if (childNode != null) {
      return childNode;
    }
  }
  return null;
}
Program: 125477
Project: 125477
Buggy source:
/** 
 * copy all fields.
 * @param metadataColumn
 */
public MetadataColumn(IMetadataColumn metadataColumn){
  this();
  this.setLabel(metadataColumn.getLabel());
  this.setOriginalDbColumnName(metadataColumn.getOriginalDbColumnName());
  this.key=metadataColumn.isKey();
  this.pattern=metadataColumn.getPattern();
  try {
    this.setTalendType(metadataColumn.getTalendType());
  }
 catch (  NoClassDefFoundError e) {
    ExceptionHandler.process(e);
  }
  this.setType(metadataColumn.getType());
  this.nullable=metadataColumn.isNullable();
  this.length=metadataColumn.getLength();
  this.precision=metadataColumn.getPrecision();
  this.originalLength=metadataColumn.getOriginalLength();
  setDefault(metadataColumn.getDefault());
  setComment(metadataColumn.getComment());
  setOriginalLength(metadataColumn.getOriginalLength());
  setRelatedEntity(metadataColumn.getRelatedEntity());
  setRelationshipType(metadataColumn.getRelationshipType());
  this.usefulColumn=metadataColumn.isUsefulColumn();
}

Fixed version (ground truth):
/** 
 * copy all fields.
 * @param metadataColumn
 */
public MetadataColumn(IMetadataColumn metadataColumn){
  this();
  this.setLabel(metadataColumn.getLabel());
  this.setOriginalDbColumnName(metadataColumn.getOriginalDbColumnName());
  this.key=metadataColumn.isKey();
  this.pattern=metadataColumn.getPattern();
  try {
    this.setTalendType(metadataColumn.getTalendType());
  }
 catch (  NoClassDefFoundError e) {
    ExceptionHandler.process(e);
  }
  this.setType(metadataColumn.getType());
  this.nullable=metadataColumn.isNullable();
  this.length=metadataColumn.getLength();
  this.precision=metadataColumn.getPrecision();
  this.originalLength=metadataColumn.getOriginalLength();
  setDefault(metadataColumn.getDefault());
  setComment(metadataColumn.getComment());
  setOriginalLength(metadataColumn.getOriginalLength());
  setRelatedEntity(metadataColumn.getRelatedEntity());
  setRelationshipType(metadataColumn.getRelationshipType());
  this.usefulColumn=metadataColumn.isUsefulColumn();
  this.getAdditionalField().putAll(metadataColumn.getAdditionalField());
}
Program: 125478
Project: 125478
Buggy source:
@SuppressWarnings("String_Node_Str") public Function clone(String[] parameters){
  Function function=(Function)clone();
  if (parameters != null) {
    for (int i=0; i < function.getParameters().size(); i++) {
      Parameter pa=(Parameter)function.getParameters().get(i);
      pa.setValue(parameters[i]);
    }
  }
  return function;
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") public Function clone(JSONArray parametersArray){
  if (parametersArray == null || parametersArray.length() == 0) {
    return (Function)clone();
  }
  Function function=(Function)clone();
  if (parametersArray != null) {
    try {
      List<Parameter> params=function.getParameters();
      for (      Parameter param : params) {
        for (int i=0; i < parametersArray.length(); i++) {
          JSONObject parameterObj=parametersArray.getJSONObject(i);
          String paramName=parameterObj.getString(PARAMETER_NAME);
          String paramValue=parameterObj.getString(PARAMETER_VALUE);
          if (param.getName().equals(paramName)) {
            param.setValue(paramValue);
          }
        }
      }
    }
 catch (    JSONException e) {
      ExceptionHandler.process(e);
    }
  }
  return function;
}
Program: 125482
Project: 125482
Buggy source:
private void fillDefaultsWhenImpalaVersionChanged(){
  if (isCreation && isNeedFillDefaults()) {
    String distribution=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_DISTRIBUTION);
    String version=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_VERSION);
    if (distribution == null) {
      return;
    }
    EDatabaseConnTemplate template=EDatabaseConnTemplate.indexOfTemplate(getConnection().getDatabaseType());
    if (template != null) {
      portText.setText(template.getDefaultPort());
    }
  }
}

Fixed version (ground truth):
private void fillDefaultsWhenImpalaVersionChanged(){
  if (isCreation && isNeedFillDefaults()) {
    String distribution=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_DISTRIBUTION);
    String version=getConnection().getParameters().get(ConnParameterKeys.CONN_PARA_KEY_IMPALA_VERSION);
    if (distribution == null) {
      return;
    }
    EDatabaseConnTemplate template=EDatabaseConnTemplate.indexOfTemplate(getConnection().getDatabaseType());
    if (template != null) {
      portText.setText(template.getDefaultPort());
    }
    initImpalaInfo();
  }
}
Program: 125483
Project: 125483
Buggy source:
/** 
 * Getter for destinationPath.
 * @return the destinationPath
 */
public IPath getDestinationPath(){
  String pathStr=pathText.getText();
  if (pathStr.contains("String_Node_Str")) {
    int index=pathStr.indexOf("String_Node_Str");
    if (pathStr.length() > index + 1) {
      pathStr=pathStr.substring(pathStr.indexOf("String_Node_Str") + 1);
    }
  }
  return new Path(pathStr);
}

Fixed version (ground truth):
/** 
 * Getter for destinationPath.
 * @return the destinationPath
 */
public IPath getDestinationPath(){
  String pathStr="String_Node_Str";
  if (pathText != null) {
    pathStr=pathText.getText();
  }
  if (pathStr.contains("String_Node_Str")) {
    int index=pathStr.indexOf("String_Node_Str");
    if (pathStr.length() > index + 1) {
      pathStr=pathStr.substring(pathStr.indexOf("String_Node_Str") + 1);
    }
  }
  return new Path(pathStr);
}
Program: 125484
Project: 125484
Buggy source:
public void buildDeletedItemsTree(RepositoryNode rootNode){
  List<String> folders=RecycleBinManager.getInstance().getDeletedFolders(ProjectManager.getInstance().getCurrentProject());
  Collections.sort(folders);
  for (  String fullPath : folders) {
    String path=null;
    String comparePath=fullPath;
    if (fullPath != null) {
      String[] paths=fullPath.split("String_Node_Str");
      if (paths.length > 0) {
        comparePath=paths[0];
      }
    }
    ERepositoryObjectType currentType=null;
    for (    DynaEnum<? extends DynaEnum<?>> type : ERepositoryObjectType.values()) {
      ERepositoryObjectType objectType=(ERepositoryObjectType)type;
      if (objectType.isResouce() && comparePath.equals(objectType.getFolder())) {
        path=fullPath.substring(objectType.getFolder().length() + 1);
        currentType=objectType;
        break;
      }
    }
    if (currentType != null) {
      buildFolders(rootNode,currentType,path,rootNode);
    }
  }
  addDeletedElements(rootNode,rootNode.getChildren());
}

Fixed version (ground truth):
public void buildDeletedItemsTree(RepositoryNode rootNode){
  List<String> folders=RecycleBinManager.getInstance().getDeletedFolders(ProjectManager.getInstance().getCurrentProject());
  Collections.sort(folders);
  for (  String fullPath : folders) {
    String folderPath=null;
    final IPath fPath=new Path(fullPath);
    ERepositoryObjectType currentType=null;
    for (    DynaEnum<? extends DynaEnum<?>> type : ERepositoryObjectType.values()) {
      ERepositoryObjectType objectType=(ERepositoryObjectType)type;
      if (objectType.isResouce()) {
        IPath typePath=new Path(objectType.getFolder());
        if (typePath.isPrefixOf(fPath)) {
          folderPath=fPath.makeRelativeTo(typePath).toString();
          currentType=objectType;
          break;
        }
      }
    }
    if (currentType != null) {
      buildFolders(rootNode,currentType,folderPath,rootNode);
    }
  }
  addDeletedElements(rootNode,rootNode.getChildren());
}
Program: 125488
Project: 125488
Buggy source:
/** 
 * DOC sgandon Comment method "getModulesToBeInstalled".
 * @return
 */
protected List<ModuleToInstall> getModulesToBeInstalled(){
  List<ModuleToInstall> theInputList=tableViewerCreator.getInputList();
  List<ModuleToInstall> toInstall=new ArrayList<ModuleToInstall>();
  for (  ModuleToInstall module : theInputList) {
    if (!MavenConstants.DOWNLOAD_MANUAL.equals(module.getDistribution()) && !jarsInstalledSuccuss.contains(module.getName())) {
      toInstall.add(module);
    }
  }
  return toInstall;
}

Fixed version (ground truth):
/** 
 * DOC sgandon Comment method "getModulesToBeInstalled".
 * @return
 */
protected List<ModuleToInstall> getModulesToBeInstalled(){
  List<ModuleToInstall> theInputList=tableViewerCreator.getInputList();
  List<ModuleToInstall> toInstall=new ArrayList<ModuleToInstall>();
  for (  ModuleToInstall module : theInputList) {
    if (!MavenConstants.DOWNLOAD_MANUAL.equals(module.getDistribution()) && !jarsInstalledSuccuss.contains(module.getName()) && ELibraryInstallStatus.INSTALLED != ModuleStatusProvider.getStatusMap().get(module.getMavenUri())) {
      toInstall.add(module);
    }
  }
  return toInstall;
}
Program: 125491
Project: 125491
Buggy source:
/** 
 * DOC zshen Comment method "isComeFromRefrenceProject".
 * @return
 */
private static boolean isComeFromRefrenceProject(Connection dataProvider){
  String currentResourceProjectName=dataProvider.eResource().getURI().segment(1);
  RepositoryContext repositoryContext=(RepositoryContext)org.talend.core.runtime.CoreRuntimePlugin.getInstance().getContext().getProperty(Context.REPOSITORY_CONTEXT_KEY);
  Project project=repositoryContext.getProject();
  boolean isLocal=project.getEmfProject().isLocal();
  boolean isReference=project.getEmfProject().isReference();
  EList<ProjectReferenceImpl> referencedProjects=project.getEmfProject().getReferencedProjects();
  if (isLocal || isReference) {
    return false;
  }
  if (referencedProjects.size() > 0) {
    for (    ProjectReferenceImpl projectRef : referencedProjects) {
      String label=projectRef.getReferencedProject().getLabel();
      if (currentResourceProjectName.toUpperCase().equals(label.toUpperCase())) {
        return true;
      }
    }
  }
  return false;
}

Fixed version (ground truth):
/** 
 * DOC zshen Comment method "isComeFromRefrenceProject".
 * @return
 */
public static boolean isComeFromRefrenceProject(Connection dataProvider){
  String currentResourceProjectName=dataProvider.eResource().getURI().segment(1);
  RepositoryContext repositoryContext=(RepositoryContext)org.talend.core.runtime.CoreRuntimePlugin.getInstance().getContext().getProperty(Context.REPOSITORY_CONTEXT_KEY);
  Project project=repositoryContext.getProject();
  boolean isLocal=project.getEmfProject().isLocal();
  boolean isReference=project.getEmfProject().isReference();
  EList<ProjectReferenceImpl> referencedProjects=project.getEmfProject().getReferencedProjects();
  if (isLocal || isReference) {
    return false;
  }
  if (referencedProjects.size() > 0) {
    for (    ProjectReferenceImpl projectRef : referencedProjects) {
      String label=projectRef.getReferencedProject().getLabel();
      if (currentResourceProjectName.toUpperCase().equals(label.toUpperCase())) {
        return true;
      }
    }
  }
  return false;
}
Program: 125492
Project: 125492
Buggy source:
/** 
 */
protected ATreeNode(){
  children=new ArrayList();
}

Fixed version (ground truth):
/** 
 */
protected ATreeNode(){
  children=new ArrayList();
  if (NodeCreationObserver.isRunning()) {
    NodeCreationObserver.add(this);
  }
}
Program: 125493
Project: 125493
Buggy source:
@Override public boolean equals(Object obj){
  if (this == obj) {
    return true;
  }
  if (obj == null) {
    return false;
  }
  if (getClass() != obj.getClass()) {
    return false;
  }
  ATreeNode other=(ATreeNode)obj;
  if (this.dataType == null) {
    if (other.dataType != null) {
      return false;
    }
  }
 else   if (!this.dataType.equals(other.dataType)) {
    return false;
  }
  if (this.originalDataType == null) {
    if (other.originalDataType != null) {
      return false;
    }
  }
 else   if (!this.originalDataType.equals(other.originalDataType)) {
    return false;
  }
  if (this.type != other.type) {
    return false;
  }
  if (this.value == null) {
    if (other.value != null) {
      return false;
    }
  }
 else   if (!this.value.equals(other.value)) {
    return false;
  }
  if (!this.children.equals(other.children)) {
    return false;
  }
  return true;
}

Fixed version (ground truth):
@Override public boolean equals(Object obj){
  if (this == obj) {
    return true;
  }
  if (obj == null) {
    return false;
  }
  if (getClass() != obj.getClass()) {
    return false;
  }
  ATreeNode other=(ATreeNode)obj;
  if (this.dataType == null) {
    if (other.dataType != null) {
      return false;
    }
  }
 else   if (!this.dataType.equals(other.dataType)) {
    return false;
  }
  if (this.originalDataType == null) {
    if (other.originalDataType != null) {
      return false;
    }
  }
 else   if (!this.originalDataType.equals(other.originalDataType)) {
    return false;
  }
  if (this.type != other.type) {
    return false;
  }
  if (this.value == null) {
    if (other.value != null) {
      return false;
    }
  }
 else   if (!this.value.equals(other.value)) {
    return false;
  }
  return true;
}