nus-yam/ex-repair huggingface dataset:
Program: 136601
Project: 136601
Buggy source:
/** 
 * zshen Comment method "initializeIndicator".
 * @param indicator
 */
public void initializeIndicator(Indicator indicator){
  if (indicator.getIndicatorDefinition() == null || indicator.getIndicatorDefinition().eIsProxy()) {
    DefinitionHandler.getInstance().setDefaultIndicatorDefinition(indicator);
  }
  if (indicator instanceof CompositeIndicator) {
    for (    Indicator child : ((CompositeIndicator)indicator).getChildIndicators()) {
      if (child.getAnalyzedElement() == null) {
        child.setAnalyzedElement(indicator.getAnalyzedElement());
      }
      initializeIndicator(child);
    }
  }
  if (indicator instanceof PatternMatchingIndicator) {
    Pattern pattern=indicator.getParameters().getDataValidDomain().getPatterns().get(0);
    if (!StringUtils.equals(indicator.getName(),pattern.getName())) {
      indicator.setName(pattern.getName());
    }
  }
  if (indicator instanceof UserDefIndicator) {
    String defName=indicator.getIndicatorDefinition().getName();
    if (!StringUtils.equals(indicator.getName(),defName)) {
      indicator.setName(defName);
    }
  }
}

Fixed version (ground truth):
/** 
 * zshen Comment method "initializeIndicator".
 * @param indicator
 */
public void initializeIndicator(Indicator indicator){
  if (indicator.getIndicatorDefinition() == null || indicator.getIndicatorDefinition().eIsProxy()) {
    DefinitionHandler.getInstance().setDefaultIndicatorDefinition(indicator);
  }
  if (indicator instanceof CompositeIndicator) {
    for (    Indicator child : ((CompositeIndicator)indicator).getChildIndicators()) {
      if (child.getAnalyzedElement() == null) {
        child.setAnalyzedElement(indicator.getAnalyzedElement());
      }
      initializeIndicator(child);
    }
  }
  if (indicator instanceof PatternMatchingIndicator && indicator.getParameters() != null) {
    Pattern pattern=indicator.getParameters().getDataValidDomain().getPatterns().get(0);
    if (!StringUtils.equals(indicator.getName(),pattern.getName())) {
      indicator.setName(pattern.getName());
    }
  }
  if (indicator instanceof UserDefIndicator) {
    String defName=indicator.getIndicatorDefinition().getName();
    if (!StringUtils.equals(indicator.getName(),defName)) {
      indicator.setName(defName);
    }
  }
}
Program: 136602
Project: 136602
Buggy source:
@Override protected void saveContext(){
  Analysis analysis=getAnalysis();
  analysis.getContextType().clear();
  IContextManager contextManager=currentEditor.getContextManager();
  contextManager.saveToEmf(analysis.getContextType());
  analysis.setDefaultContext(getDefaultContextGroupName((SupportContextEditor)currentEditor));
  AnalysisHelper.setLastRunContext(currentEditor.getLastRunContextGroupName(),analysis);
}

Fixed version (ground truth):
@Override protected void saveContext(){
  Analysis analysis=getAnalysis();
  IContextManager contextManager=currentEditor.getContextManager();
  contextManager.saveToEmf(analysis.getContextType());
  analysis.setDefaultContext(getDefaultContextGroupName((SupportContextEditor)currentEditor));
  AnalysisHelper.setLastRunContext(currentEditor.getLastRunContextGroupName(),analysis);
}
Program: 136603
Project: 136603
Buggy source:
@Override public boolean isShowMenu(){
  boolean showMenu=super.isShowMenu();
  if (showMenu && CorePlugin.getDefault().getSemanticStudioService() == null) {
    return false;
  }
  return showMenu;
}

Fixed version (ground truth):
@Override public boolean isShowMenu(){
  if (CorePlugin.getDefault().getSemanticStudioService() == null) {
    return false;
  }
  return super.isShowMenu();
}
Program: 136605
Project: 136605
Buggy source:
private void createTableViewerMenu(final TableViewer columnsElementViewer,final List<RepositoryNode> columnList,final Button[] buttons,final boolean isLeftPart){
  Table table=columnsElementViewer.getTable();
  Menu menu=new Menu(table);
  MenuItem menuItem=new MenuItem(menu,SWT.PUSH);
  menuItem.setImage(ImageLib.getImage(ImageLib.DELETE_ACTION));
  menuItem.setText(DefaultMessagesImpl.getString("String_Node_Str"));
  menuItem.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (columnList.remove(((IStructuredSelection)columnsElementViewer.getSelection()).getFirstElement())) {
        columnsElementViewer.setInput(columnList);
        enabledButtons(buttons,false);
        masterPage.setDirty(true);
        computeRefreshDataPreviewPart(isLeftPart,columnList);
      }
    }
  }
);
  MenuItem showMenuItem=new MenuItem(menu,SWT.CASCADE);
  showMenuItem.setText(DefaultMessagesImpl.getString("String_Node_Str"));
  showMenuItem.setImage(ImageLib.getImage(ImageLib.EXPLORE_IMAGE));
  showMenuItem.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      showSelectedElements(columnsElementViewer);
    }
  }
);
  table.setMenu(menu);
}

Fixed version (ground truth):
private void createTableViewerMenu(final TableViewer columnsElementViewer,final List<RepositoryNode> columnList,final Button[] buttons,final boolean isLeftPart){
  Table table=columnsElementViewer.getTable();
  Menu menu=new Menu(table);
  MenuItem menuItem=new MenuItem(menu,SWT.PUSH);
  menuItem.setImage(ImageLib.getImage(ImageLib.DELETE_ACTION));
  menuItem.setText(DefaultMessagesImpl.getString("String_Node_Str"));
  menuItem.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if (columnList.remove(((IStructuredSelection)columnsElementViewer.getSelection()).getFirstElement())) {
        columnsElementViewer.setInput(columnList);
        enabledButtons(buttons,false);
        masterPage.setDirty(true);
        computeRefreshDataPreviewPart(isLeftPart,columnList,columnsElementViewer);
      }
    }
  }
);
  MenuItem showMenuItem=new MenuItem(menu,SWT.CASCADE);
  showMenuItem.setText(DefaultMessagesImpl.getString("String_Node_Str"));
  showMenuItem.setImage(ImageLib.getImage(ImageLib.EXPLORE_IMAGE));
  showMenuItem.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      showSelectedElements(columnsElementViewer);
    }
  }
);
  table.setMenu(menu);
}
Program: 136606
Project: 136606
Buggy source:
/** 
 * DOC msjian Comment method "computeRefreshDataPreviewPart".
 * @param isLeftPart
 * @param columnSet
 * @return
 */
protected ColumnSet computeRefreshDataPreviewPart(boolean isLeftPart,List<RepositoryNode> columnSet){
  ColumnSet columnOwner=null;
  if (columnSet != null && columnSet.size() > 0) {
    RepositoryNode node=columnSet.get(0);
    columnOwner=RepositoryNodeHelper.getColumnOwner(node);
  }
  if (isLeftPart) {
    if ((previewDataColumnOwner == null && columnOwner != null) || (previewDataColumnOwner != null && columnOwner == null) || (!previewDataColumnOwner.equals(columnOwner))) {
      previewDataColumnOwner=columnOwner;
      notifyObservers();
    }
  }
  return columnOwner;
}

Fixed version (ground truth):
/** 
 * DOC msjian Comment method "computeRefreshDataPreviewPart".
 * @param isLeftPart
 * @param columnSet
 * @return
 */
protected ColumnSet computeRefreshDataPreviewPart(boolean isLeftPart,List<RepositoryNode> columnSet,TableViewer columnsElementViewer){
  ColumnSet columnOwner=null;
  if (columnSet != null && columnSet.size() > 0) {
    RepositoryNode node=columnSet.get(0);
    columnOwner=RepositoryNodeHelper.getColumnOwner(node);
  }
  if (isLeftPart) {
    if ((previewDataColumnOwner == null && columnOwner != null) || (previewDataColumnOwner != null && columnOwner == null) || (!previewDataColumnOwner.equals(columnOwner))) {
      previewDataColumnOwner=columnOwner;
      notifyObservers();
    }
  }
  String tableName=columnOwner == null ? "String_Node_Str" : columnOwner.getName();
  columnsElementViewer.getTable().getColumn(0).setText(DefaultMessagesImpl.getString("String_Node_Str",tableName));
  return columnOwner;
}
Program: 136608
Project: 136608
Buggy source:
/** 
 * MOD mzhao 2009-02-03,remove the first parameter, extract it to class property filed for the convenience of invoking this method from cheat sheets.
 */
public void openColumnsSelectionDialog(TableViewer columnsElementViewer,List<RepositoryNode> columnsOfSectionPart,boolean isLeftPart){
  RepositoryNode connNode=masterPage.getConnComboSelectNode();
  ColumnsSelectionDialog dialog=new ColumnsSelectionDialog(masterPage,null,DefaultMessagesImpl.getString("String_Node_Str"),columnsOfSectionPart,connNode,DefaultMessagesImpl.getString("String_Node_Str"));
  if (dialog.open() == Window.OK) {
    Object[] columns=dialog.getResult();
    List<RepositoryNode> columnSet=new ArrayList<RepositoryNode>();
    for (    Object obj : columns) {
      if (obj instanceof DBColumnRepNode) {
        columnSet.add((RepositoryNode)obj);
      }
    }
    columnsElementViewer.setInput(columnSet);
    columnsOfSectionPart.clear();
    columnsOfSectionPart.addAll(columnSet);
    if (columnSet.size() != 0 && columnSet.get(0).getObject() instanceof MetadataColumnRepositoryObject) {
      ColumnSet columnOwner=computeRefreshDataPreviewPart(isLeftPart,columnSet);
      String tableName=columnOwner.getName();
      columnsElementViewer.getTable().getColumn(0).setText(DefaultMessagesImpl.getString("String_Node_Str",tableName));
    }
    updateBindConnection(masterPage,tableViewerPosStack);
  }
}

Fixed version (ground truth):
/** 
 * MOD mzhao 2009-02-03,remove the first parameter, extract it to class property filed for the convenience of invoking this method from cheat sheets.
 */
public void openColumnsSelectionDialog(TableViewer columnsElementViewer,List<RepositoryNode> columnsOfSectionPart,boolean isLeftPart){
  RepositoryNode connNode=masterPage.getConnComboSelectNode();
  ColumnsSelectionDialog dialog=new ColumnsSelectionDialog(masterPage,null,DefaultMessagesImpl.getString("String_Node_Str"),columnsOfSectionPart,connNode,DefaultMessagesImpl.getString("String_Node_Str"));
  if (dialog.open() == Window.OK) {
    Object[] columns=dialog.getResult();
    List<RepositoryNode> columnSet=new ArrayList<RepositoryNode>();
    for (    Object obj : columns) {
      if (obj instanceof DBColumnRepNode) {
        columnSet.add((RepositoryNode)obj);
      }
    }
    columnsElementViewer.setInput(columnSet);
    columnsOfSectionPart.clear();
    columnsOfSectionPart.addAll(columnSet);
    computeRefreshDataPreviewPart(isLeftPart,columnSet,columnsElementViewer);
    updateBindConnection(masterPage,tableViewerPosStack);
  }
}
Program: 136609
Project: 136609
Buggy source:
@Override public void addElements(final ModelElementIndicator[] elements){
  RepositoryNode[] columns=new RepositoryNode[elements.length];
  for (int i=0; i < elements.length; i++) {
    columns[i]=(RepositoryNode)elements[i].getModelElementRepositoryNode();
  }
  List<IRepositoryNode> oriColumns=getColumnSetMultiValueList();
  for (  RepositoryNode column : columns) {
    if (!RepositoryNodeHelper.containsModelElementNode(oriColumns,column)) {
      oriColumns.add(column);
    }
  }
  setInput(oriColumns.toArray());
  updateBindConnection(masterPage,tree);
}

Fixed version (ground truth):
@Override public void addElements(final ModelElementIndicator[] elements){
  RepositoryNode[] columns=new RepositoryNode[elements.length];
  for (int i=0; i < elements.length; i++) {
    columns[i]=(RepositoryNode)elements[i].getModelElementRepositoryNode();
  }
  List<IRepositoryNode> oriColumns=getColumnSetMultiValueList();
  for (  RepositoryNode column : columns) {
    if (!RepositoryNodeHelper.containsModelElementNode(oriColumns,column)) {
      oriColumns.add(column);
    }
  }
  setInput(oriColumns.toArray());
  updateBindConnection(masterPage,tree);
  ModelElementIndicator[] newsArray=new ModelElementIndicator[getAllTheElementIndicator().length + elements.length];
  System.arraycopy(getAllTheElementIndicator(),0,newsArray,0,getAllTheElementIndicator().length);
  for (int i=0; i < elements.length; i++) {
    newsArray[getAllTheElementIndicator().length + i]=elements[i];
  }
  masterPage.refreshPreviewTable(newsArray,true);
}
Program: 136610
Project: 136610
Buggy source:
@SuppressWarnings("String_Node_Str") public void drop(DropTargetEvent event,LocalSelectionTransfer transfer){
  List inputElements=(List)targetViewer.getInput();
  if (inputElements == null) {
    inputElements=new ArrayList();
  }
  if (dragSelectedElement != null) {
    TableItem item=(TableItem)event.item;
    TableItem[] items=targetViewer.getTable().getItems();
    int index=0;
    for (int i=0; i < items.length; i++) {
      if (items[i] == item) {
        index=i;
        break;
      }
    }
    inputElements.remove(dragSelectedElement);
    inputElements.add(index,dragSelectedElement);
    dragSelectedElement=null;
  }
 else {
    StructuredSelection selection=(StructuredSelection)transfer.getSelection();
    List selectionElements=selection.toList();
    inputElements.addAll(selectionElements);
  }
  targetViewer.setInput(inputElements);
  compareTreeViewer.updateBindConnection(masterPage,tableViewerPosStack);
  compareTreeViewer.setDirty(true);
}

Fixed version (ground truth):
@Override @SuppressWarnings("String_Node_Str") public void drop(DropTargetEvent event,LocalSelectionTransfer transfer){
  List inputElements=(List)targetViewer.getInput();
  if (inputElements == null) {
    inputElements=new ArrayList();
  }
  if (dragSelectedElement != null) {
    TableItem item=(TableItem)event.item;
    TableItem[] items=targetViewer.getTable().getItems();
    int index=0;
    for (int i=0; i < items.length; i++) {
      if (items[i] == item) {
        index=i;
        break;
      }
    }
    inputElements.remove(dragSelectedElement);
    inputElements.add(index,dragSelectedElement);
    dragSelectedElement=null;
  }
 else {
    StructuredSelection selection=(StructuredSelection)transfer.getSelection();
    List selectionElements=selection.toList();
    inputElements.addAll(selectionElements);
  }
  targetViewer.setInput(inputElements);
  compareTreeViewer.updateBindConnection(masterPage,tableViewerPosStack);
  compareTreeViewer.setDirty(true);
  compareTreeViewer.computeRefreshDataPreviewPart(isLeftPart,inputElements,targetViewer);
}
Program: 136612
Project: 136612
Buggy source:
public boolean doDropValidation(DropTargetEvent event,LocalSelectionTransfer transfer){
  StructuredSelection selection=(StructuredSelection)transfer.getSelection();
  if (dragSelectedElement != null && selection != null) {
    return true;
  }
  boolean doDropValidation=false;
switch (validateType) {
case COLUMN_VALIDATETYPE:
    doDropValidation=validateColumnType(selection,targetViewer);
  break;
default :
doDropValidation=true;
}
return doDropValidation;
}

Fixed version (ground truth):
@Override public boolean doDropValidation(DropTargetEvent event,LocalSelectionTransfer transfer){
  StructuredSelection selection=(StructuredSelection)transfer.getSelection();
  if (dragSelectedElement != null && selection != null) {
    return true;
  }
  boolean doDropValidation=false;
switch (validateType) {
case COLUMN_VALIDATETYPE:
    doDropValidation=validateColumnType(selection,targetViewer);
  break;
default :
doDropValidation=true;
}
return doDropValidation;
}
Program: 136613
Project: 136613
Buggy source:
@Override public void openEditor(Item item){
  super.openEditor(item);
  if (this.selectionPage != null) {
    AnalysisEditor editor=(AnalysisEditor)PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
    if (editor != null) {
      AbstractAnalysisMetadataPage masterPage=editor.getMasterPage();
      List<IRepositoryNode> nodes=this.selectionPage.nodes;
      if (nodes != null && nodes.size() > 0) {
        if (masterPage instanceof ColumnAnalysisDetailsPage) {
          ((ColumnAnalysisDetailsPage)masterPage).setTreeViewInput(nodes.toArray(new RepositoryNode[nodes.size()]));
          ModelElementIndicator[] predefinedColumnIndicator=this.getPredefinedColumnIndicator();
          if (predefinedColumnIndicator != null) {
            ((ColumnAnalysisDetailsPage)masterPage).refreshPreviewTable(predefinedColumnIndicator,false);
            ((ColumnAnalysisDetailsPage)masterPage).refreshTheTree(predefinedColumnIndicator);
          }
        }
 else {
          masterPage.getTreeViewer().setInput(nodes.toArray(new RepositoryNode[nodes.size()]));
        }
        masterPage.doSave(new NullProgressMonitor());
      }
    }
  }
}

Fixed version (ground truth):
@Override public void openEditor(Item item){
  super.openEditor(item);
  if (this.selectionPage != null) {
    AnalysisEditor editor=(AnalysisEditor)PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().getActiveEditor();
    if (editor != null) {
      AbstractAnalysisMetadataPage masterPage=editor.getMasterPage();
      List<IRepositoryNode> nodes=this.selectionPage.nodes;
      if (nodes != null && nodes.size() > 0) {
        if (masterPage instanceof ColumnAnalysisDetailsPage) {
          ((ColumnAnalysisDetailsPage)masterPage).setTreeViewInput(nodes.toArray(new RepositoryNode[nodes.size()]));
          ModelElementIndicator[] predefinedColumnIndicator=this.getPredefinedColumnIndicator();
          if (predefinedColumnIndicator != null) {
            ((ColumnAnalysisDetailsPage)masterPage).refreshPreviewTable(predefinedColumnIndicator,false);
            ((ColumnAnalysisDetailsPage)masterPage).refreshTheTree(predefinedColumnIndicator);
          }
        }
 else         if (masterPage instanceof ColumnSetAnalysisDetailsPage) {
          ((ColumnSetAnalysisDetailsPage)masterPage).setTreeViewInput(nodes.toArray(new RepositoryNode[nodes.size()]));
        }
 else {
          masterPage.getTreeViewer().setInput(nodes.toArray(new RepositoryNode[nodes.size()]));
        }
        masterPage.doSave(new NullProgressMonitor());
      }
    }
  }
}
Program: 136614
Project: 136614
Buggy source:
@Override protected void createFormContent(IManagedForm managedForm){
  this.form=managedForm.getForm();
  this.form.setText(DefaultMessagesImpl.getString("String_Node_Str"));
  topComposite=form.getBody();
  topComposite.setLayout(new GridLayout());
  summaryComp=toolkit.createComposite(topComposite);
  summaryComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING));
  summaryComp.setLayout(new GridLayout());
  createSummarySection(form,summaryComp,getAnalysisHandler());
}

Fixed version (ground truth):
@Override protected void createFormContent(IManagedForm managedForm){
  this.form=managedForm.getForm();
  if (this.form != null && !this.form.isDisposed()) {
    this.form.setText(DefaultMessagesImpl.getString("String_Node_Str"));
    topComposite=form.getBody();
    topComposite.setLayout(new GridLayout());
    summaryComp=toolkit.createComposite(topComposite);
    summaryComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING));
    summaryComp.setLayout(new GridLayout());
    createSummarySection(form,summaryComp,getAnalysisHandler());
  }
}
Program: 136615
Project: 136615
Buggy source:
@Override protected void createFormContent(IManagedForm managedForm){
  super.createFormContent(managedForm);
  resultComp=toolkit.createComposite(topComposite);
  resultComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING));
  resultComp.setLayout(new GridLayout());
  createResultSection(resultComp);
  form.reflow(true);
}

Fixed version (ground truth):
@Override protected void createFormContent(IManagedForm managedForm){
  super.createFormContent(managedForm);
  if (topComposite != null && !topComposite.isDisposed()) {
    resultComp=toolkit.createComposite(topComposite);
    resultComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING));
    resultComp.setLayout(new GridLayout());
    createResultSection(resultComp);
    form.reflow(true);
  }
}
Program: 136616
Project: 136616
Buggy source:
/** 
 * Method "setUsageDependencyOn".
 * @param client the element which depends on the supplier
 * @param supplier the element needed by the client element
 * @return the dependency object between the two given elements
 */
public TypedReturnCode<Dependency> setUsageDependencyOn(ModelElement client,ModelElement supplier){
  EList<Dependency> supplierDependencies=supplier.getSupplierDependency();
  for (  Dependency dependency : supplierDependencies) {
    if (dependency.getKind() != null && USAGE.compareTo(dependency.getKind()) == 0) {
      EObject resolvedObject=ResourceHelper.resolveObject(dependency.getClient(),client);
      if (resolvedObject == null) {
        dependency.getClient().add(client);
      }
      TypedReturnCode<Dependency> rc=new TypedReturnCode<Dependency>();
      rc.setObject(dependency);
      return rc;
    }
  }
  return createUsageDependencyOn(client,supplier);
}

Fixed version (ground truth):
/** 
 * Method "setUsageDependencyOn".
 * @param client the element which depends on the supplier
 * @param supplier the element needed by the client element
 * @return the dependency object between the two given elements
 */
public TypedReturnCode<Dependency> setUsageDependencyOn(ModelElement client,ModelElement supplier){
  EList<Dependency> supplierDependencies=supplier.getSupplierDependency();
  for (  Dependency dependency : supplierDependencies) {
    if (dependency.getKind() != null && USAGE.compareTo(dependency.getKind()) == 0) {
      EObject resolvedObject=ResourceHelper.resolveObject(dependency.getClient(),client);
      if (resolvedObject == null) {
        if (checkClientDependencyExist(client,supplier)) {
          removeClientDependency(client,supplier);
        }
        dependency.getClient().add(client);
      }
      TypedReturnCode<Dependency> rc=new TypedReturnCode<Dependency>();
      rc.setObject(dependency);
      return rc;
    }
  }
  return createUsageDependencyOn(client,supplier);
}
Program: 136617
Project: 136617
Buggy source:
/** 
 * @param file the file which we want to import or export
 * @param rootFolder the location which file is come from
 */
public ItemRecord(File file,IPath rootFolder){
  this.file=file;
  this.rootFolder=rootFolder;
  if (resourceSet == null) {
    resourceSet=new ResourceSetImpl();
  }
  if (allItemRecords == null) {
    allItemRecords=new ArrayList<ItemRecord>();
  }
  if (FILE_ELEMENT_MAP == null) {
    FILE_ELEMENT_MAP=new HashMap<File,ModelElement>();
  }
  try {
    initialize();
  }
 catch (  Exception e) {
    String errorMessage=DefaultMessagesImpl.getString("String_Node_Str",getName(),e.getMessage());
    addError(errorMessage);
    log.error(errorMessage);
  }
}

Fixed version (ground truth):
/** 
 * the resourceSet attribute is static so that notice call   {@link #clear()} method when next time
 * @param file the file which we want to import or export
 * @param rootFolder the location which file is come from
 */
public ItemRecord(File file,IPath rootFolder){
  this.file=file;
  this.rootFolder=rootFolder;
  if (resourceSet == null) {
    resourceSet=new ResourceSetImpl();
  }
  if (allItemRecords == null) {
    allItemRecords=new ArrayList<ItemRecord>();
  }
  if (FILE_ELEMENT_MAP == null) {
    FILE_ELEMENT_MAP=new HashMap<File,ModelElement>();
  }
  try {
    initialize();
  }
 catch (  Exception e) {
    String errorMessage=DefaultMessagesImpl.getString("String_Node_Str",getName(),e.getMessage());
    addError(errorMessage);
    log.error(errorMessage);
  }
}
Program: 136618
Project: 136618
Buggy source:
/** 
 * find in analysis's parameter if has: DefaultLoadedRowCount".if has:get its value, if not, create one
 * @return
 */
public String getDefaultLoadedRowCount(){
  return String.valueOf(analysis.getParameters().getMaxNumberRows());
}

Fixed version (ground truth):
/** 
 * find in analysis's parameter if has: DefaultLoadedRowCount".if has:get its value, if not, create one
 * @return
 */
public String getDefaultLoadedRowCount(){
  if (this.analysis != null) {
    TaggedValue taggedValue=TaggedValueHelper.getTaggedValue(TaggedValueHelper.PREVIEW_ROW_NUMBER,this.analysis.getTaggedValue());
    if (taggedValue != null) {
      return taggedValue.getValue();
    }
  }
  return IParameterConstant.ANALYSIS_PREVIEW_NUMBER_ROW;
}
Program: 136619
Project: 136619
Buggy source:
/** 
 * Change the max number of rows
 * @param text
 */
public void changeDefaultRowLoaded(String text){
  analysis.getParameters().setMaxNumberRows(Integer.valueOf(text));
}

Fixed version (ground truth):
/** 
 * Change the max number of rows
 * @param text
 */
public void changeDefaultRowLoaded(String text){
  TaggedValueHelper.setTaggedValue(analysis,TaggedValueHelper.PREVIEW_ROW_NUMBER,text);
}
Program: 136620
Project: 136620
Buggy source:
@Override public ModelElement initCWMResourceBuilder(){
  Analysis analysis=(Analysis)super.initCWMResourceBuilder();
  Indicator blockKeyIndicator=ColumnsetFactory.eINSTANCE.createBlockKeyIndicator();
  analysis.getResults().getIndicators().add(blockKeyIndicator);
  RecordMatchingIndicator matchRuleIndicator=ColumnsetFactory.eINSTANCE.createRecordMatchingIndicator();
  MatchRuleDefinition matchRuleDefinition=RulesFactory.eINSTANCE.createMatchRuleDefinition();
  matchRuleIndicator.setBuiltInMatchRuleDefinition(matchRuleDefinition);
  analysis.getResults().getIndicators().add(matchRuleIndicator);
  IPreferenceStore preferenceStore=CorePlugin.getDefault().getPreferenceStore();
  int maxRows=preferenceStore.getInt(PluginConstant.MAX_NB_ROWS_ANALYSIS_EDITOR);
  analysis.getParameters().setMaxNumberRows(maxRows);
  return analysis;
}

Fixed version (ground truth):
@Override public ModelElement initCWMResourceBuilder(){
  Analysis analysis=(Analysis)super.initCWMResourceBuilder();
  Indicator blockKeyIndicator=ColumnsetFactory.eINSTANCE.createBlockKeyIndicator();
  analysis.getResults().getIndicators().add(blockKeyIndicator);
  RecordMatchingIndicator matchRuleIndicator=ColumnsetFactory.eINSTANCE.createRecordMatchingIndicator();
  MatchRuleDefinition matchRuleDefinition=RulesFactory.eINSTANCE.createMatchRuleDefinition();
  matchRuleIndicator.setBuiltInMatchRuleDefinition(matchRuleDefinition);
  analysis.getResults().getIndicators().add(matchRuleIndicator);
  IPreferenceStore preferenceStore=CorePlugin.getDefault().getPreferenceStore();
  int maxRows=preferenceStore.getInt(PluginConstant.MAX_NB_ROWS_ANALYSIS_EDITOR);
  TaggedValueHelper.setTaggedValue(analysis,TaggedValueHelper.PREVIEW_ROW_NUMBER,String.valueOf(maxRows));
  return analysis;
}
Program: 136621
Project: 136621
Buggy source:
/** 
 * Test method for  {@link org.talend.dq.analysis.MatchAnalysisExecutor#execute(org.talend.dataquality.analysis.Analysis)}.
 */
@SuppressWarnings("String_Node_Str") @Test public void testExecute(){
  MatchAnalysisExecutor matchAnalysisExecutor=new MatchAnalysisExecutor();
  Analysis analysis=AnalysisPackage.eINSTANCE.getAnalysisFactory().createAnalysis();
  AnalysisContext context=AnalysisPackage.eINSTANCE.getAnalysisFactory().createAnalysisContext();
  analysis.setContext(context);
  AnalysisParameters params=AnalysisPackage.eINSTANCE.getAnalysisFactory().createAnalysisParameters();
  params.setMaxNumberRows(100);
  analysis.setParameters(params);
  context.setConnection(delimitedFileconnection);
  URL fileUrl=this.getClass().getResource("String_Node_Str");
  metadataTable=UnitTestBuildHelper.getDefault().initFileConnection(fileUrl,delimitedFileconnection);
  this.name=UnitTestBuildHelper.getDefault().initColumns(context,this.metadataTable);
  double groupQualityThreshold=0.9d;
  double matchInterval=0.95d;
  assertScenario1(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
  matchInterval=0.8d;
  assertScenario2(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
  groupQualityThreshold=0.95d;
  assertScenario3(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
  assertScenario4(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
}

Fixed version (ground truth):
/** 
 * Test method for  {@link org.talend.dq.analysis.MatchAnalysisExecutor#execute(org.talend.dataquality.analysis.Analysis)}.
 */
@SuppressWarnings("String_Node_Str") @Test public void testExecute(){
  MatchAnalysisExecutor matchAnalysisExecutor=new MatchAnalysisExecutor();
  Analysis analysis=AnalysisPackage.eINSTANCE.getAnalysisFactory().createAnalysis();
  AnalysisContext context=AnalysisPackage.eINSTANCE.getAnalysisFactory().createAnalysisContext();
  analysis.setContext(context);
  AnalysisParameters params=AnalysisPackage.eINSTANCE.getAnalysisFactory().createAnalysisParameters();
  analysis.setParameters(params);
  TaggedValueHelper.setTaggedValue(analysis,TaggedValueHelper.PREVIEW_ROW_NUMBER,String.valueOf(100));
  context.setConnection(delimitedFileconnection);
  URL fileUrl=this.getClass().getResource("String_Node_Str");
  metadataTable=UnitTestBuildHelper.getDefault().initFileConnection(fileUrl,delimitedFileconnection);
  this.name=UnitTestBuildHelper.getDefault().initColumns(context,this.metadataTable);
  double groupQualityThreshold=0.9d;
  double matchInterval=0.95d;
  assertScenario1(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
  matchInterval=0.8d;
  assertScenario2(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
  groupQualityThreshold=0.95d;
  assertScenario3(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
  assertScenario4(matchAnalysisExecutor,analysis,name,"String_Node_Str",groupQualityThreshold,matchInterval);
}
Program: 136622
Project: 136622
Buggy source:
/** 
 * DOC zshen Comment method "filterAdaptColumnHeader".
 * @returnget the name of column which will be displayed on the drill down editor.
 */
public List<String> filterAdaptColumnHeader(){
  Indicator indicator=this.getCurrIndicator();
  ModelElement analysisElement=indicator.getAnalyzedElement();
  String menuType=this.getMenuType();
  List<String> columnElementList=new ArrayList<String>();
  if (analysisElement == null && indicator.eContainer() instanceof SimpleStatIndicator) {
    columnElementList=columnHeaderForColumnSet((SimpleStatIndicator)indicator.eContainer());
  }
 else {
    if (DrillDownUtils.judgeMenuType(menuType,DrillDownUtils.MENU_VALUE_TYPE)) {
      columnElementList.add(ModelElementHelper.getName(indicator.getAnalyzedElement()));
    }
 else     if (analysisElement instanceof TdColumn) {
      for (      TdColumn column : TableHelper.getColumns(SwitchHelpers.TABLE_SWITCH.doSwitch(indicator.getAnalyzedElement().eContainer()))) {
        columnElementList.add(column.getName());
      }
    }
 else     if (analysisElement instanceof MetadataColumn) {
      MetadataTable mTable=ColumnHelper.getColumnOwnerAsMetadataTable((MetadataColumn)analysisElement);
      for (      MetadataColumn mColumn : mTable.getColumns()) {
        columnElementList.add(mColumn.getLabel());
      }
    }
  }
  return columnElementList;
}

Fixed version (ground truth):
/** 
 * DOC zshen Comment method "filterAdaptColumnHeader".
 * @returnget the name of column which will be displayed on the drill down editor.
 */
public List<String> filterAdaptColumnHeader(){
  Indicator indicator=this.getCurrIndicator();
  ModelElement analysisElement=indicator.getAnalyzedElement();
  String menuType=this.getMenuType();
  List<String> columnElementList=new ArrayList<String>();
  if (analysisElement == null && indicator.eContainer() instanceof SimpleStatIndicator) {
    columnElementList=columnHeaderForColumnSet((SimpleStatIndicator)indicator.eContainer());
  }
 else {
    if (DrillDownUtils.judgeMenuType(menuType,DrillDownUtils.MENU_VALUE_TYPE)) {
      columnElementList.add(ModelElementHelper.getName(indicator.getAnalyzedElement()));
    }
 else     if (analysisElement instanceof TdColumn) {
      for (      TdColumn column : getColumnsByTdColumn((TdColumn)analysisElement)) {
        columnElementList.add(column.getName());
      }
    }
 else     if (analysisElement instanceof MetadataColumn) {
      MetadataTable mTable=ColumnHelper.getColumnOwnerAsMetadataTable((MetadataColumn)analysisElement);
      for (      MetadataColumn mColumn : mTable.getColumns()) {
        columnElementList.add(mColumn.getLabel());
      }
    }
  }
  return columnElementList;
}
Program: 136623
Project: 136623
Buggy source:
/** 
 * Get index of column whiche will be used on the dirll down. Note that One indicator only belong one column so that the array of retrun value just contain one element. And if we create new map for view values menu rather than used same map with view rows menu then method can be removed
 * @return
 */
public Integer[] getColumnIndexArray(){
  if (!DrillDownUtils.judgeMenuType(this.getMenuType(),DrillDownUtils.MENU_VALUE_TYPE) || !UniqueCountIndicator.class.isInstance(currIndicator)) {
    return null;
  }
  List<Integer> indexArray=new ArrayList<Integer>();
  Indicator indicator=this.getCurrIndicator();
  ModelElement analysisElement=indicator.getAnalyzedElement();
  int index=0;
  if (analysisElement instanceof TdColumn) {
    TdTable tdTable=ColumnHelper.getColumnOwnerAsTdTable((TdColumn)analysisElement);
    for (    TdColumn column : TableHelper.getColumns(tdTable)) {
      if (column.getName().equals(analysisElement.getName())) {
        indexArray.add(index);
        break;
      }
      index++;
    }
  }
 else   if (analysisElement instanceof MetadataColumn) {
    MetadataTable mTable=ColumnHelper.getColumnOwnerAsMetadataTable((MetadataColumn)analysisElement);
    for (    MetadataColumn mColumn : mTable.getColumns()) {
      if (mColumn.getLabel().equals(analysisElement.getName())) {
        indexArray.add(index);
        break;
      }
      index++;
    }
  }
  return indexArray.toArray(new Integer[indexArray.size()]);
}

Fixed version (ground truth):
/** 
 * Get index of column whiche will be used on the dirll down. Note that One indicator only belong one column so that the array of retrun value just contain one element. And if we create new map for view values menu rather than used same map with view rows menu then method can be removed
 * @return
 */
public Integer[] getColumnIndexArray(){
  if (!DrillDownUtils.judgeMenuType(this.getMenuType(),DrillDownUtils.MENU_VALUE_TYPE) || !UniqueCountIndicator.class.isInstance(currIndicator)) {
    return null;
  }
  List<Integer> indexArray=new ArrayList<Integer>();
  Indicator indicator=this.getCurrIndicator();
  ModelElement analysisElement=indicator.getAnalyzedElement();
  int index=0;
  if (analysisElement instanceof TdColumn) {
    List<TdColumn> columns=getColumnsByTdColumn((TdColumn)analysisElement);
    for (    TdColumn column : columns) {
      if (column.getName().equals(analysisElement.getName())) {
        indexArray.add(index);
        break;
      }
      index++;
    }
  }
 else   if (analysisElement instanceof MetadataColumn) {
    MetadataTable mTable=ColumnHelper.getColumnOwnerAsMetadataTable((MetadataColumn)analysisElement);
    for (    MetadataColumn mColumn : mTable.getColumns()) {
      if (mColumn.getLabel().equals(analysisElement.getName())) {
        indexArray.add(index);
        break;
      }
      index++;
    }
  }
  return indexArray.toArray(new Integer[indexArray.size()]);
}
Program: 136624
Project: 136624
Buggy source:
@SuppressWarnings("String_Node_Str") @Override public void partDeactivated(IWorkbenchPart part){
  super.partDeactivated(part);
  if (part instanceof org.eclipse.ui.internal.ViewIntroAdapterPart) {
    if (CheatSheetUtils.getInstance().isFirstTime() && !PlatformUI.getWorkbench().isClosing() && firstTime) {
      firstTime=false;
      CheatSheetUtils.getInstance().findAndmaxDisplayCheatSheet(PluginConstant.GETTING_STARTED_CHEAT_SHEET_ID);
    }
  }
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") @Override public void partDeactivated(IWorkbenchPart part){
  super.partDeactivated(part);
  if (part instanceof org.eclipse.ui.internal.ViewIntroAdapterPart) {
    if (CheatSheetUtils.getInstance().isFirstTime() && !PlatformUI.getWorkbench().isClosing() && firstTime) {
      firstTime=false;
      String cheatSheetID=PluginConstant.START_HERE_CHEAT_SHEET_ID;
      if (PluginChecker.isOnlyTopLoaded()) {
        cheatSheetID=PluginConstant.GETTING_STARTED_CHEAT_SHEET_ID;
      }
      CheatSheetUtils.getInstance().findAndmaxDisplayCheatSheet(cheatSheetID);
    }
  }
}
Program: 136625
Project: 136625
Buggy source:
/** 
 * Copy The jar file if it is not exist or not new one.
 */
private void CopyTheJarFile(){
  try {
    File sourceFile=null;
    try {
      sourceFile=new File(FileLocator.toFileURL(CWMPlugin.getDefault().getBundle().getResource("String_Node_Str")).toURI());
    }
 catch (    URISyntaxException e) {
      Assert.fail(e.getMessage());
    }
    if (sourceFile == null) {
      Assert.fail("String_Node_Str");
    }
    String tempLibPath=ExtractMetaDataUtils.getInstance().getJavaLibPath();
    File targetFile=new File(tempLibPath + "String_Node_Str");
    FilesUtils.copyFile(sourceFile,targetFile);
  }
 catch (  IOException e1) {
    Assert.fail(e1.getMessage());
  }
}

Fixed version (ground truth):
/** 
 * Copy The jar file if it is not exist or not new one.
 */
private void CopyTheJarFile(){
  try {
    File sourceFile=null;
    try {
      URL resource=CWMPlugin.getDefault().getBundle().getResource("String_Node_Str" + Path.SEPARATOR + "String_Node_Str");
      System.out.println(resource.toString());
      URL fileURL=FileLocator.toFileURL(resource);
      System.out.println(fileURL.toString());
      URI uri=fileURL.toURI();
      System.out.println(uri.toString());
      sourceFile=new File(uri);
    }
 catch (    URISyntaxException e) {
      Assert.fail(e.getMessage());
    }
    if (sourceFile == null) {
      Assert.fail("String_Node_Str");
    }
    String tempLibPath=ExtractMetaDataUtils.getInstance().getJavaLibPath();
    File targetFile=new File(tempLibPath + "String_Node_Str");
    FilesUtils.copyFile(sourceFile,targetFile);
  }
 catch (  IOException e1) {
    Assert.fail(e1.getMessage());
  }
}
Program: 136627
Project: 136627
Buggy source:
@Override public String caseUserDefIndicator(UserDefIndicator object){
  if (object instanceof UserDefIndicator) {
    UserDefIndicator userDefineIndicator=object;
    IndicatorCategory category=IndicatorCategoryHelper.getCategory(userDefineIndicator.getIndicatorDefinition());
    if (IndicatorCategoryHelper.isUserDefRealValue(category)) {
      return String.valueOf(userDefineIndicator.getRealValue());
    }
  }
  return String.valueOf(object.getUserCount());
}

Fixed version (ground truth):
@Override public String caseUserDefIndicator(UserDefIndicator object){
  if (object instanceof UserDefIndicator) {
    UserDefIndicator userDefineIndicator=object;
    IndicatorCategory category=IndicatorCategoryHelper.getCategory(userDefineIndicator.getIndicatorDefinition());
    if (IndicatorCategoryHelper.isUserDefRealValue(category)) {
      return String.valueOf(userDefineIndicator.getRealValue());
    }
  }
  return String.valueOf(object.getIntegerValue());
}
Program: 136629
Project: 136629
Buggy source:
@Override public String caseUserDefIndicator(UserDefIndicator object){
  if (object instanceof UserDefIndicator) {
    UserDefIndicator userDefineIndicator=object;
    IndicatorCategory category=IndicatorCategoryHelper.getCategory(userDefineIndicator.getIndicatorDefinition());
    if (IndicatorCategoryHelper.isUserDefRealValue(category)) {
      return String.valueOf(userDefineIndicator.getRealValue());
    }
  }
  return String.valueOf(object.getUserCount());
}

Fixed version (ground truth):
@Override public String caseUserDefIndicator(UserDefIndicator object){
  if (object instanceof UserDefIndicator) {
    UserDefIndicator userDefineIndicator=object;
    IndicatorCategory category=IndicatorCategoryHelper.getCategory(userDefineIndicator.getIndicatorDefinition());
    if (IndicatorCategoryHelper.isUserDefRealValue(category)) {
      return String.valueOf(userDefineIndicator.getRealValue());
    }
  }
  return String.valueOf(object.getIntegerValue());
}
Program: 136630
Project: 136630
Buggy source:
/** 
 * Copy The jar file if it is not exist or not new one.
 */
private void CopyTheJarFile(){
  try {
    File sourceFile=null;
    try {
      URL resource=CWMPlugin.getDefault().getBundle().getResource("String_Node_Str" + Path.SEPARATOR + "String_Node_Str");
      System.out.println(resource.toString());
      URL fileURL=FileLocator.toFileURL(resource);
      System.out.println(fileURL.toString());
      URI uri=fileURL.toURI();
      System.out.println(uri.toString());
      sourceFile=new File(uri);
    }
 catch (    URISyntaxException e) {
      Assert.fail(e.getMessage());
    }
    if (sourceFile == null) {
      Assert.fail("String_Node_Str");
    }
    String tempLibPath=ExtractMetaDataUtils.getInstance().getJavaLibPath();
    File targetFile=new File(tempLibPath + "String_Node_Str");
    FilesUtils.copyFile(sourceFile,targetFile);
  }
 catch (  IOException e1) {
    Assert.fail(e1.getMessage());
  }
}

Fixed version (ground truth):
/** 
 * Copy The jar file if it is not exist or not new one.
 * @throws URISyntaxException
 */
private void CopyTheJarFile(){
  try {
    File sourceFile=null;
    URL fileURL=null;
    try {
      URL resource=CWMPlugin.getDefault().getBundle().getResource("String_Node_Str" + Path.SEPARATOR + "String_Node_Str");
      System.out.println(resource.toString());
      fileURL=FileLocator.toFileURL(resource);
      System.out.println(fileURL.toString());
      URI uri=fileURL.toURI();
      System.out.println(uri.toString());
      sourceFile=new File(uri);
    }
 catch (    IllegalArgumentException e) {
      try {
        Assert.fail("String_Node_Str" + fileURL.toString() + "String_Node_Str"+ fileURL.toURI().toString());
      }
 catch (      URISyntaxException e1) {
        Assert.fail(e1.getMessage());
      }
    }
catch (    URISyntaxException e) {
      Assert.fail(e.getMessage());
    }
    if (sourceFile == null) {
      Assert.fail("String_Node_Str");
    }
    String tempLibPath=ExtractMetaDataUtils.getInstance().getJavaLibPath();
    File targetFile=new File(tempLibPath + "String_Node_Str");
    FilesUtils.copyFile(sourceFile,targetFile);
  }
 catch (  IOException e1) {
    Assert.fail(e1.getMessage());
  }
}
Program: 136635
Project: 136635
Buggy source:
@Before public void setup(){
  indiDefinition=mock(IndicatorDefinition.class);
  EList<TdExpression> tdExpessionLs=new BasicEList<TdExpression>();
  TdExpression tdExpression1=BooleanExpressionHelper.createTdExpression("String_Node_Str","String_Node_Str");
  TdExpression tdExpression2=BooleanExpressionHelper.createTdExpression("String_Node_Str","String_Node_Str");
  tdExpessionLs.add(tdExpression1);
  tdExpessionLs.add(tdExpression2);
  when(indiDefinition.getSqlGenericExpression()).thenReturn(tdExpessionLs);
  UnitTestBuildHelper.initProjectStructure();
}

Fixed version (ground truth):
@Before public void setup(){
  indiDefinition=DefinitionFactoryImpl.eINSTANCE.createIndicatorDefinition();
  EList<TdExpression> tdExpessionLs=new BasicEList<TdExpression>();
  TdExpression tdExpression1=BooleanExpressionHelper.createTdExpression("String_Node_Str","String_Node_Str");
  TdExpression tdExpression2=BooleanExpressionHelper.createTdExpression("String_Node_Str","String_Node_Str");
  tdExpessionLs.add(tdExpression1);
  tdExpessionLs.add(tdExpression2);
  indiDefinition.getSqlGenericExpression().add(tdExpression1);
  indiDefinition.getSqlGenericExpression().add(tdExpression2);
  UnitTestBuildHelper.initProjectStructure();
}
Program: 136643
Project: 136643
Buggy source:
/** 
 * Test method for  {@link org.talend.dataquality.indicators.columnset.impl.ColumnSetMultiValueIndicatorImpl#getColumnHeaders()}.
 */
@Test public void testGetColumnHeaders(){
  ColumnSetMultiValueIndicatorImpl columnSetMultiValueIndicatorImpl=new ColumnSetMultiValueIndicatorImpl();
  EList<ModelElement> analyzedColumns=columnSetMultiValueIndicatorImpl.getAnalyzedColumns();
  EList<String> columnHeaders=columnSetMultiValueIndicatorImpl.getColumnHeaders();
  Assert.assertFalse(columnHeaders.isEmpty());
  Assert.assertTrue(columnHeaders.size() == 1);
  Assert.assertTrue(COUNT_STAR.equals(columnHeaders.get(0)));
  analyzedColumns.add(createColumn11());
  analyzedColumns.add(createColumn12());
  analyzedColumns.add(createColumn2());
  analyzedColumns.add(createColumn3());
  columnHeaders=columnSetMultiValueIndicatorImpl.getColumnHeaders();
  Assert.assertFalse(columnHeaders.isEmpty());
  Assert.assertTrue(columnHeaders.size() == 6);
  Assert.assertTrue(COLUMN_NAME_11.equals(columnHeaders.get(0)));
  Assert.assertTrue(COLUMN_NAME_12.equals(columnHeaders.get(1)));
  Assert.assertTrue(COLUMN_NAME_2.equals(columnHeaders.get(2)));
  Assert.assertTrue(COLUMN_NAME_3.equals(columnHeaders.get(3)));
  Assert.assertTrue(COLUMN_NAME_4.equals(columnHeaders.get(4)));
  Assert.assertTrue(COUNT_STAR.equals(columnHeaders.get(5)));
}

Fixed version (ground truth):
/** 
 * Test method for  {@link org.talend.dataquality.indicators.columnset.impl.ColumnSetMultiValueIndicatorImpl#getColumnHeaders()}.
 */
@Test public void testGetColumnHeaders(){
  ColumnSetMultiValueIndicatorImpl columnSetMultiValueIndicatorImpl=new ColumnSetMultiValueIndicatorImpl();
  EList<ModelElement> analyzedColumns=columnSetMultiValueIndicatorImpl.getAnalyzedColumns();
  EList<String> columnHeaders=columnSetMultiValueIndicatorImpl.getColumnHeaders();
  Assert.assertFalse(columnHeaders.isEmpty());
  Assert.assertTrue(columnHeaders.size() == 1);
  Assert.assertTrue(COUNT_STAR.equals(columnHeaders.get(0)));
  analyzedColumns.add(createColumn11());
  analyzedColumns.add(createColumn12());
  analyzedColumns.add(createColumn2());
  analyzedColumns.add(createColumn3());
  analyzedColumns.add(createColumn4());
  columnHeaders=columnSetMultiValueIndicatorImpl.getColumnHeaders();
  Assert.assertFalse(columnHeaders.isEmpty());
  Assert.assertTrue(columnHeaders.size() == 6);
  Assert.assertTrue(COLUMN_NAME_11.equals(columnHeaders.get(0)));
  Assert.assertTrue(COLUMN_NAME_12.equals(columnHeaders.get(1)));
  Assert.assertTrue(COLUMN_NAME_2.equals(columnHeaders.get(2)));
  Assert.assertTrue(COLUMN_NAME_3.equals(columnHeaders.get(3)));
  Assert.assertTrue(COLUMN_NAME_4.equals(columnHeaders.get(4)));
  Assert.assertTrue(COUNT_STAR.equals(columnHeaders.get(5)));
}