Program: 139564
Project: 139564
Buggy source:
public boolean createDQStructure(){
  Plugin plugin=CorePlugin.getDefault();
  try {
    IProject rootProject=ResourceManager.getRootProject();
    if (!rootProject.exists()) {
      rootProject=createNewProject(ResourceManager.getRootProjectName());
    }
    copyConfigFiles(rootProject,plugin);
    IFolder dataProfilingFolder=this.createNewFoler(rootProject,ResourceManager.DATA_PROFILING_FOLDER_NAME);
    IFolder createNewFoler=this.createNewFoler(dataProfilingFolder,ANALYSIS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,ANALYSIS_FOLDER_PROPERTY);
    createNewFoler=this.createNewFoler(dataProfilingFolder,REPORTS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,REPORT_FOLDER_PROPERTY);
    IFolder librariesFoler=this.createNewFoler(rootProject,ResourceManager.LIBRARIES_FOLDER_NAME);
    IFolder patternFoler=this.createNewFoler(librariesFoler,PATTERNS);
    createNewFoler=this.createNewFoler(patternFoler,REGEX);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,PATTERNS_FOLDER_PROPERTY);
    WorkspaceVersionHelper.storeVersion();
    this.copyFilesToFolder(plugin,PATTERN_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewFoler(patternFoler,SQL);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,SQLPATTERNS_FOLDER_PROPERTY);
    this.copyFilesToFolder(plugin,SQL_LIKE_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewFoler(librariesFoler,SOURCE_FILES);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,SOURCEFILES_FOLDER_PROPERTY);
    this.copyFilesToFolder(plugin,DEMO_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewFoler(librariesFoler,RULES);
    createNewFoler=this.createNewFoler(createNewFoler,SQL);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,DQRULES_FOLDER_PROPERTY);
    this.copyFilesToFolder(plugin,DQ_RULES_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewFoler(librariesFoler,EXCHANGE);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,NO_SUBFOLDER_KEY,NO_SUBFOLDER_PROPERTY);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,EXCHANGE_FOLDER_PROPERTY);
    createNewFoler=this.createNewFoler(librariesFoler,INDICATORS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,INDICATORS_FOLDER_PROPERTY);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,NO_SUBFOLDER_KEY,NO_SUBFOLDER_PROPERTY);
    createNewFoler=this.createNewFoler(librariesFoler.getFolder(INDICATORS),USER_DEFINED_INDICATORS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,UDI_FOLDER_PROPERTY);
    checkJRXMLFolderExist();
    IFolder metadataFolder=this.createNewFoler(rootProject,ResourceManager.METADATA_FOLDER_NAME);
    createNewFoler=this.createNewFoler(metadataFolder,PluginConstant.DB_CONNECTIONS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,DBCONNECTION_FOLDER_PROPERTY);
  }
 catch (  Exception ex) {
    ExceptionHandler.process(ex);
    return false;
  }
  return true;
}

Fixed version (ground truth):
public boolean createDQStructure(){
  Plugin plugin=CorePlugin.getDefault();
  try {
    IProject rootProject=ResourceManager.getRootProject();
    if (!rootProject.exists()) {
      rootProject=createNewProject(ResourceManager.getRootProjectName());
    }
    copyConfigFiles(rootProject,plugin);
    IFolder dataProfilingFolder=this.createNewReadOnlyFolder(rootProject,ResourceManager.DATA_PROFILING_FOLDER_NAME);
    IFolder createNewFoler=this.createNewReadOnlyFolder(dataProfilingFolder,ANALYSIS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,ANALYSIS_FOLDER_PROPERTY);
    createNewFoler=this.createNewReadOnlyFolder(dataProfilingFolder,REPORTS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,REPORT_FOLDER_PROPERTY);
    IFolder librariesFoler=this.createNewReadOnlyFolder(rootProject,ResourceManager.LIBRARIES_FOLDER_NAME);
    IFolder patternFoler=this.createNewReadOnlyFolder(librariesFoler,PATTERNS);
    createNewFoler=this.createNewReadOnlyFolder(patternFoler,REGEX);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,PATTERNS_FOLDER_PROPERTY);
    WorkspaceVersionHelper.storeVersion();
    this.copyFilesToFolder(plugin,PATTERN_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewReadOnlyFolder(patternFoler,SQL);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,SQLPATTERNS_FOLDER_PROPERTY);
    this.copyFilesToFolder(plugin,SQL_LIKE_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewReadOnlyFolder(librariesFoler,SOURCE_FILES);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,SOURCEFILES_FOLDER_PROPERTY);
    this.copyFilesToFolder(plugin,DEMO_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewReadOnlyFolder(librariesFoler,RULES);
    createNewFoler=this.createNewReadOnlyFolder(createNewFoler,SQL);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,DQRULES_FOLDER_PROPERTY);
    this.copyFilesToFolder(plugin,DQ_RULES_PATH,true,createNewFoler,null);
    createNewFoler=this.createNewReadOnlyFolder(librariesFoler,EXCHANGE);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,NO_SUBFOLDER_KEY,NO_SUBFOLDER_PROPERTY);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,EXCHANGE_FOLDER_PROPERTY);
    createNewFoler=this.createNewReadOnlyFolder(librariesFoler,INDICATORS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,INDICATORS_FOLDER_PROPERTY);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,NO_SUBFOLDER_KEY,NO_SUBFOLDER_PROPERTY);
    createNewFoler=this.createNewReadOnlyFolder(librariesFoler.getFolder(INDICATORS),USER_DEFINED_INDICATORS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,UDI_FOLDER_PROPERTY);
    checkJRXMLFolderExist();
    IFolder metadataFolder=this.createNewReadOnlyFolder(rootProject,ResourceManager.METADATA_FOLDER_NAME);
    createNewFoler=this.createNewReadOnlyFolder(metadataFolder,PluginConstant.DB_CONNECTIONS);
    TdqPropertieManager.getInstance().addFolderProperties(createNewFoler,FOLDER_CLASSIFY_KEY,DBCONNECTION_FOLDER_PROPERTY);
  }
 catch (  Exception ex) {
    ExceptionHandler.process(ex);
    return false;
  }
  return true;
}