nus-yam/ex-repair huggingface dataset:
Program: 128873
Project: 128873
Buggy source:
private RepositoryNode searchRepositoryNode(IRepositoryNode root,ERepositoryObjectType type){
  if (root == null || type == null) {
    return null;
  }
  IRepositoryNode foundNode=null;
  List<IRepositoryNode> chindren=root.getChildren();
  for (  IRepositoryNode repositoryNode : chindren) {
    if (repositoryNode.getContentType() == type) {
      foundNode=repositoryNode;
    }
 else {
      foundNode=searchRepositoryNode((RepositoryNode)repositoryNode,type);
    }
    if (foundNode != null) {
      return (RepositoryNode)foundNode;
    }
  }
  return null;
}

Fixed version (ground truth):
private RepositoryNode searchRepositoryNode(IRepositoryNode root,ERepositoryObjectType type){
  if (root == null || type == null) {
    return null;
  }
  IRepositoryNode foundNode=null;
  List<IRepositoryNode> chindren=root.getChildren();
  for (  IRepositoryNode repositoryNode : chindren) {
    if (repositoryNode.getContentType() == type) {
      foundNode=repositoryNode;
    }
 else {
      foundNode=searchRepositoryNode(repositoryNode,type);
    }
    if (foundNode != null) {
      return (RepositoryNode)foundNode;
    }
  }
  return null;
}
Program: 128875
Project: 128875
Buggy source:
public void setContentProvider(IContentProvider contentProvider){
  if (tableViewer != null && tableViewer.getContentProvider() != contentProvider) {
    tableViewer.setContentProvider(contentProvider);
  }
  this.contentProvider=contentProvider;
}

Fixed version (ground truth):
public void setContentProvider(IStructuredContentProvider contentProvider){
  if (tableViewer != null && tableViewer.getContentProvider() != contentProvider) {
    tableViewer.setContentProvider(contentProvider);
  }
  this.contentProvider=contentProvider;
}
Program: 128876
Project: 128876
Buggy source:
/** 
 * <p> Create a new instance of <code>Table</code> with its <code>TableColumn</code>s and create also a new instance of <code>TableViewer</code> if these objects doesn't exist already. </p> <p> Initialize the <code>TableViewer</code> with by default the <code>DefaultStructuredContentProvider</code>, the <code>DefaultTableLabelProvider</code> and the <code>DefaultTableViewerSorter</code>. </p> <p> If you use the default ContentProvider, you must set as input an object which extends <code>Collection</code>. </p> <p> <b> If it is the second or more time than you call this method, only the input object is loaded. Call methods of <code>TableViewer</code> for others operations. </b> </p>
 * @param input by default a object which extends <code>Collection</code>.
 */
public void init(List list){
  if (!initCalled) {
    initCalled=true;
    if (this.table == null) {
      createTable();
    }
    attachLabelProvider();
    buildAndLayoutTable();
    attachViewerSorter();
    attachContentProvider();
    attachCellEditors();
    addListeners();
  }
  boolean hasChanged=false;
  if (this.list != list) {
    hasChanged=true;
  }
  setInputList(list);
  if (tableEditorManager != null && list != null) {
    tableEditorManager.init(this.listenableList);
  }
  if (hasChanged && !(contentProvider instanceof ILazyContentProvider)) {
    refreshTableEditorControls();
  }
}

Fixed version (ground truth):
/** 
 * <p> Create a new instance of <code>Table</code> with its <code>TableColumn</code>s and create also a new instance of <code>TableViewer</code> if these objects doesn't exist already. </p> <p> Initialize the <code>TableViewer</code> with by default the <code>DefaultStructuredContentProvider</code>, the <code>DefaultTableLabelProvider</code> and the <code>DefaultTableViewerSorter</code>. </p> <p> If you use the default ContentProvider, you must set as input an object which extends <code>Collection</code>. </p> <p> <b> If it is the second or more time than you call this method, only the input object is loaded. Call methods of <code>TableViewer</code> for others operations. </b> </p>
 * @param input by default a object which extends <code>Collection</code>.
 */
public void init(List list){
  if (!initCalled) {
    initCalled=true;
    if (this.table == null) {
      createTable();
    }
    attachLabelProvider();
    buildAndLayoutTable();
    attachViewerSorter();
    attachContentProvider();
    attachCellEditors();
    addListeners();
  }
  boolean hasChanged=false;
  if (this.list != list) {
    hasChanged=true;
  }
  setInputList(list);
  if (tableEditorManager != null && list != null) {
    tableEditorManager.init(this.listenableList);
  }
  if (hasChanged && !isLazyLoad()) {
    refreshTableEditorControls();
  }
}
Program: 128877
Project: 128877
Buggy source:
/** 
 * Initiate the style intended for instanciate <code>Table</code>.
 * @return int style
 */
protected int checkTableStyles(){
  int style=SWT.NONE;
  if (lineSelection != null) {
    style|=lineSelection.getSwtStyle();
  }
  if (showLineSelection != null) {
    style|=showLineSelection.getSwtStyle();
  }
  if (checkboxInFirstColumn) {
    style|=SWT.CHECK;
  }
  if (borderVisible) {
    style|=SWT.BORDER;
  }
  if (horizontalScroll) {
    style|=SWT.H_SCROLL;
  }
  if (verticalScroll) {
    style|=SWT.V_SCROLL;
  }
  if (lazyLoad) {
    style|=SWT.VIRTUAL;
  }
  return style;
}

Fixed version (ground truth):
/** 
 * Initiate the style intended for instanciate <code>Table</code>.
 * @return int style
 */
protected int checkTableStyles(){
  int style=SWT.NONE;
  if (lineSelection != null) {
    style|=lineSelection.getSwtStyle();
  }
  if (showLineSelection != null) {
    style|=showLineSelection.getSwtStyle();
  }
  if (checkboxInFirstColumn) {
    style|=SWT.CHECK;
  }
  if (borderVisible) {
    style|=SWT.BORDER;
  }
  if (horizontalScroll) {
    style|=SWT.H_SCROLL;
  }
  if (verticalScroll) {
    style|=SWT.V_SCROLL;
  }
  if (isLazyLoad()) {
    style|=SWT.VIRTUAL;
  }
  return style;
}
Program: 128878
Project: 128878
Buggy source:
public void setLazyLoad(boolean lazyLoad){
  this.lazyLoad=lazyLoad;
  setContentProvider(new LazyContentProvider(this));
}

Fixed version (ground truth):
public void setLazyLoad(boolean lazyLoad){
  this.lazyLoad=lazyLoad;
}
Program: 128879
Project: 128879
Buggy source:
@Override public void replace(Object element,int index){
  super.replace(element,index);
  refreshTableEditorColumn(index);
  if (!(contentProvider instanceof ILazyContentProvider)) {
    refreshTableEditorControls();
  }
}

Fixed version (ground truth):
@Override public void replace(Object element,int index){
  super.replace(element,index);
  refreshTableEditorControls();
}
Program: 128881
Project: 128881
Buggy source:
@Override public void insert(Object element,int position){
  super.insert(element,position);
  refreshTableEditorControls();
}

Fixed version (ground truth):
@Override public void insert(Object element,int position){
  super.insert(element,position);
}
Program: 128882
Project: 128882
Buggy source:
public void refreshTableEditorColumn(int index){
  if (tableEditorManager != null && contentProvider instanceof ILazyContentProvider) {
    tableEditorManager.refreshColumn(index);
  }
}

Fixed version (ground truth):
public void refreshTableEditorColumn(int index){
  if (tableEditorManager != null && isLazyLoad()) {
    tableEditorManager.refreshColumn(index);
  }
}
Program: 128883
Project: 128883
Buggy source:
private void handleAddedEvent(final ListenableListEvent event){
  int indexStart=event.index;
  if (tableViewerCreator.getTable().isDisposed()) {
    return;
  }
  if (!(tableViewerCreator.getContentProvider() instanceof ILazyContentProvider)) {
    TableItem[] items=tableViewerCreator.getTable().getItems();
    List<TableEditor> addedTableEditor=new ArrayList<TableEditor>();
    for (    TableItem item : items) {
      TableItem tableItem=item;
      if (previousItemsHash == null || !previousItemsHash.contains(tableItem)) {
        for (int iEditorCol=0; iEditorCol < columnsWithEditorContent.size(); iEditorCol++) {
          TableViewerCreatorColumnNotModifiable column=columnsWithEditorContent.get(iEditorCol);
          TableEditorContentNotModifiable tableEditorContent=column.getTableEditorContent();
          String idProperty=column.getId();
          TableEditor tableEditor=addTableEditor(column,tableEditorContent,idProperty,tableItem);
          if (tableEditor != null) {
            addedTableEditor.add(tableEditor);
          }
        }
      }
    }
    for (int i=indexStart; i < items.length; i++) {
      TableItem tableItem=items[i];
      Object data=tableItem.getData();
      Collection<TableEditor> tableEditorCollection=dataToMultipleDataEditor.getCollection(data);
      for (      TableEditor tableEditor : tableEditorCollection) {
        tableEditor.setItem(tableItem);
      }
    }
    previousItemsHash=new HashSet<TableItem>(Arrays.asList(items));
  }
 else {
    for (int i=0; i < event.addedObjects.size(); i++) {
      refreshColumn(indexStart + i);
    }
  }
}

Fixed version (ground truth):
private void handleAddedEvent(final ListenableListEvent event){
  int indexStart=event.index;
  if (tableViewerCreator.getTable().isDisposed()) {
    return;
  }
  TableItem[] items=tableViewerCreator.getTable().getItems();
  List<TableEditor> addedTableEditor=new ArrayList<TableEditor>();
  for (  TableItem item : items) {
    TableItem tableItem=item;
    if (previousItemsHash == null || !previousItemsHash.contains(tableItem)) {
      for (int iEditorCol=0; iEditorCol < columnsWithEditorContent.size(); iEditorCol++) {
        TableViewerCreatorColumnNotModifiable column=columnsWithEditorContent.get(iEditorCol);
        TableEditorContentNotModifiable tableEditorContent=column.getTableEditorContent();
        String idProperty=column.getId();
        TableEditor tableEditor=addTableEditor(column,tableEditorContent,idProperty,tableItem);
        if (tableEditor != null) {
          addedTableEditor.add(tableEditor);
        }
      }
    }
  }
  for (int i=indexStart; i < items.length; i++) {
    TableItem tableItem=items[i];
    Object data=tableItem.getData();
    Collection<TableEditor> tableEditorCollection=dataToMultipleDataEditor.getCollection(data);
    for (    TableEditor tableEditor : tableEditorCollection) {
      tableEditor.setItem(tableItem);
    }
  }
  previousItemsHash=new HashSet<TableItem>(Arrays.asList(items));
}
Program: 128884
Project: 128884
Buggy source:
/** 
 * DOC amaumont Comment method "handleListenableListEvent".
 * @param event
 */
protected void handleAfterListenableListOperationEvent(ListenableListEvent<B> event){
  if (tableViewerCreator.getTable() != null && !tableViewerCreator.getTable().isDisposed()) {
    TableViewer tableViewer=tableViewerCreator.getTableViewer();
    if (event.type == TYPE.LIST_REGISTERED && tableViewerCreator.getInputList() == null && getExtendedTableModel().isDataRegistered()) {
      tableViewerCreator.setInputList(getBeansList());
      new AsynchronousThreading(100,true,tableViewerCreator.getTable().getDisplay(),new Runnable(){
        public void run(){
          tableViewerCreator.layout();
        }
      }
).start();
    }
 else {
      if (event.type == TYPE.ADDED) {
        if (tableViewer.getContentProvider() instanceof ILazyContentProvider) {
          tableViewer.setItemCount(event.source.size());
        }
        tableViewer.refresh();
      }
 else       if (event.type == TYPE.SWAPED) {
        Object[] swapedObjects=event.swapedObjects;
        for (        Object data : swapedObjects) {
          tableViewer.refresh(data,true,true);
        }
      }
 else       if (event.type == TYPE.REMOVED) {
      }
 else {
        if (tableViewer.getContentProvider() instanceof ILazyContentProvider) {
          tableViewer.setItemCount(event.source.size());
        }
        tableViewer.refresh();
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * DOC amaumont Comment method "handleListenableListEvent".
 * @param event
 */
protected void handleAfterListenableListOperationEvent(ListenableListEvent<B> event){
  if (tableViewerCreator.getTable() != null && !tableViewerCreator.getTable().isDisposed()) {
    TableViewer tableViewer=tableViewerCreator.getTableViewer();
    if (event.type == TYPE.LIST_REGISTERED && tableViewerCreator.getInputList() == null && getExtendedTableModel().isDataRegistered()) {
      tableViewerCreator.setInputList(getBeansList());
      new AsynchronousThreading(100,true,tableViewerCreator.getTable().getDisplay(),new Runnable(){
        public void run(){
          tableViewerCreator.layout();
        }
      }
).start();
    }
 else {
      if (tableViewerCreator.isLazyLoad()) {
        tableViewer.refresh();
      }
 else {
        if (event.type == TYPE.ADDED) {
        }
 else         if (event.type == TYPE.SWAPED) {
          Object[] swapedObjects=event.swapedObjects;
          for (          Object data : swapedObjects) {
            tableViewer.refresh(data,true,true);
          }
        }
 else         if (event.type == TYPE.REMOVED) {
        }
 else {
          tableViewer.refresh();
        }
      }
    }
  }
}
Program: 128885
Project: 128885
Buggy source:
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<IMetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
  newTableViewerCreator.setLazyLoad(true);
}

Fixed version (ground truth):
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<IMetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
}
Program: 128886
Project: 128886
Buggy source:
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<MetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
  newTableViewerCreator.setLazyLoad(true);
}

Fixed version (ground truth):
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<MetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
}
Program: 128889
Project: 128889
Buggy source:
/** 
 * Find all projects in the workspace having the given nature.
 * @param natureId Nature id.
 * @return all projects in the workspace having the given nature.
 * @throws PersistenceException
 */
public static IProject[] getProjetWithNature(String natureId) throws PersistenceException {
  IWorkspaceRoot root=ResourcesPlugin.getWorkspace().getRoot();
  IProject[] allProjects=root.getProjects();
  List<IProject> projects=new ArrayList<IProject>();
  for (  IProject prj : allProjects) {
    try {
      if (prj.hasNature(natureId)) {
        projects.add(prj);
      }
    }
 catch (    CoreException e) {
    }
  }
  IProject[] prjs=new IProject[projects.size()];
  prjs=projects.toArray(prjs);
  return prjs;
}

Fixed version (ground truth):
/** 
 * Find all projects in the workspace having the given nature.
 * @param natureId Nature id.
 * @return all projects in the workspace having the given nature.
 * @throws PersistenceException
 */
public static IProject[] getProjetWithNature(String natureId) throws PersistenceException {
  IWorkspaceRoot root=ResourcesPlugin.getWorkspace().getRoot();
  IProject[] allProjects=root.getProjects();
  List<IProject> projects=new ArrayList<IProject>();
  for (  IProject prj : allProjects) {
    try {
      prj.open(IResource.BACKGROUND_REFRESH,null);
      if (prj.hasNature(natureId)) {
        projects.add(prj);
      }
    }
 catch (    CoreException e) {
    }
  }
  IProject[] prjs=new IProject[projects.size()];
  prjs=projects.toArray(prjs);
  return prjs;
}
Program: 128890
Project: 128890
Buggy source:
/** 
 * Defines the default <code>Charset</code> used in case the buffer represents an 8-bit <code>Charset</code>.
 * @param defaultCharset the default <code>Charset</code> to be returned by <code>guessEncoding()</code> if an8-bit <code>Charset</code> is encountered.
 */
public void setDefaultCharset(Charset defaultCharset){
  if (defaultCharset != null) {
    this.defaultCharset=defaultCharset;
  }
 else {
    this.defaultCharset=getDefaultSystemCharset();
  }
}

Fixed version (ground truth):
/** 
 * Defines the default <code>Charset</code> used in case the buffer represents an 8-bit <code>Charset</code>.
 * @param defaultCharset the default <code>Charset</code> to be returned by <code>guessEncoding()</code> if an 8-bit<code>Charset</code> is encountered.
 */
public void setDefaultCharset(Charset defaultCharset){
  if (defaultCharset != null) {
    this.defaultCharset=defaultCharset;
  }
 else {
    this.defaultCharset=getDefaultSystemCharset();
  }
}
Program: 128893
Project: 128893
Buggy source:
public static ISourceViewer createViewer(Composite composite,int styles,boolean checkCode){
  StringBuffer buff=new StringBuffer();
  buff.append("String_Node_Str");
  buff.append(getImports());
  buff.append("String_Node_Str" + VIEWER_CLASS_NAME + currentId+ "String_Node_Str");
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  int documentOffset=buff.toString().length();
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  IDocument document=new Document();
  document.set(buff.toString());
  return initializeViewer(composite,styles,checkCode,document,documentOffset);
}

Fixed version (ground truth):
public static ISourceViewer createViewer(Composite composite,int styles,boolean checkCode){
  StringBuffer buff=new StringBuffer();
  buff.append("String_Node_Str");
  buff.append(getImports());
  buff.append("String_Node_Str" + VIEWER_CLASS_NAME + currentId+ "String_Node_Str");
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  try {
    IProcess activeProcess=CorePlugin.getDefault().getRunProcessService().getActiveProcess();
    if (activeProcess != null && "String_Node_Str".equals(activeProcess.getClass().getName())) {
      buff.append("String_Node_Str");
      buff.append("String_Node_Str");
      buff.append("String_Node_Str");
    }
  }
 catch (  Exception e) {
  }
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  int documentOffset=buff.toString().length();
  buff.append("String_Node_Str");
  buff.append("String_Node_Str");
  IDocument document=new Document();
  document.set(buff.toString());
  return initializeViewer(composite,styles,checkCode,document,documentOffset);
}
Program: 128894
Project: 128894
Buggy source:
/** 
 * Find all projects in the workspace having the given nature.
 * @param natureId Nature id.
 * @return all projects in the workspace having the given nature.
 * @throws PersistenceException
 */
public static IProject[] getProjetWithNature(String natureId) throws PersistenceException {
  IWorkspaceRoot root=ResourcesPlugin.getWorkspace().getRoot();
  IProject[] allProjects=root.getProjects();
  List<IProject> projects=new ArrayList<IProject>();
  for (  IProject prj : allProjects) {
    try {
      if (prj.hasNature(natureId)) {
        projects.add(prj);
      }
    }
 catch (    CoreException e) {
    }
  }
  IProject[] prjs=new IProject[projects.size()];
  prjs=projects.toArray(prjs);
  return prjs;
}

Fixed version (ground truth):
/** 
 * Find all projects in the workspace having the given nature.
 * @param natureId Nature id.
 * @return all projects in the workspace having the given nature.
 * @throws PersistenceException
 */
public static IProject[] getProjetWithNature(String natureId) throws PersistenceException {
  IWorkspaceRoot root=ResourcesPlugin.getWorkspace().getRoot();
  IProject[] allProjects=root.getProjects();
  List<IProject> projects=new ArrayList<IProject>();
  for (  IProject prj : allProjects) {
    try {
      prj.open(IResource.BACKGROUND_REFRESH,null);
      if (prj.hasNature(natureId)) {
        projects.add(prj);
      }
    }
 catch (    CoreException e) {
    }
  }
  IProject[] prjs=new IProject[projects.size()];
  prjs=projects.toArray(prjs);
  return prjs;
}
Program: 128895
Project: 128895
Buggy source:
@Override public void lock(Item item) throws PersistenceException, LoginException {
  if (getStatus(item).isPotentiallyEditable()) {
    this.repositoryFactoryFromProvider.lock(item);
    if ((item instanceof JobletProcessItem || item instanceof ProcessItem) && getStatus(item) == ERepositoryStatus.LOCK_BY_USER) {
      String docId=item.getProperty().getId() + "String_Node_Str";
      IRepositoryViewObject repositoryViewObject=this.repositoryFactoryFromProvider.getLastVersion(projectManager.getCurrentProject(),docId);
      if (repositoryViewObject != null) {
        Property property=repositoryViewObject.getProperty();
        Item documentationItem=property.getItem();
        this.repositoryFactoryFromProvider.lock(documentationItem);
      }
    }
    notifyLock(item,true);
    String str[]=new String[]{item.toString(),getRepositoryContext().getUser().toString()};
    log.debug(Messages.getString("String_Node_Str",str));
  }
}

Fixed version (ground truth):
@Override public void lock(Item item) throws PersistenceException, LoginException {
  if (getStatus(item).isPotentiallyEditable()) {
    this.repositoryFactoryFromProvider.lock(item);
    notifyLock(item,true);
    String str[]=new String[]{item.toString(),getRepositoryContext().getUser().toString()};
    log.debug(Messages.getString("String_Node_Str",str));
  }
}
Program: 128896
Project: 128896
Buggy source:
@Override public void unlock(Item obj) throws PersistenceException, LoginException {
  if (!(obj instanceof FolderItem) && (obj.eResource() == null || obj.getProperty().eResource() == null)) {
    obj=getUptodateProperty(obj.getProperty()).getItem();
  }
  if (getStatus(obj) == ERepositoryStatus.LOCK_BY_USER || obj instanceof JobletDocumentationItem || obj instanceof JobDocumentationItem) {
    Date commitDate=obj.getState().getCommitDate();
    Date modificationDate=obj.getProperty().getModificationDate();
    if (modificationDate == null || commitDate == null || modificationDate.before(commitDate)) {
      this.repositoryFactoryFromProvider.unlock(obj);
      if (obj instanceof JobletProcessItem || obj instanceof ProcessItem) {
        String docId=obj.getProperty().getId() + "String_Node_Str";
        IRepositoryViewObject repositoryViewObject=this.repositoryFactoryFromProvider.getLastVersion(projectManager.getCurrentProject(),docId);
        if (repositoryViewObject != null) {
          Property property=repositoryViewObject.getProperty();
          Item documentationItem=property.getItem();
          this.repositoryFactoryFromProvider.unlock(documentationItem);
        }
      }
      notifyLock(obj,false);
      String str[]=new String[]{obj.toString(),getRepositoryContext().getUser().toString()};
      log.debug(Messages.getString("String_Node_Str",str));
    }
  }
}

Fixed version (ground truth):
@Override public void unlock(Item obj) throws PersistenceException, LoginException {
  if (!(obj instanceof FolderItem) && (obj.eResource() == null || obj.getProperty().eResource() == null)) {
    obj=getUptodateProperty(obj.getProperty()).getItem();
  }
  if (getStatus(obj) == ERepositoryStatus.LOCK_BY_USER || obj instanceof JobletDocumentationItem || obj instanceof JobDocumentationItem) {
    Date commitDate=obj.getState().getCommitDate();
    Date modificationDate=obj.getProperty().getModificationDate();
    if (modificationDate == null || commitDate == null || modificationDate.before(commitDate)) {
      this.repositoryFactoryFromProvider.unlock(obj);
      notifyLock(obj,false);
      String str[]=new String[]{obj.toString(),getRepositoryContext().getUser().toString()};
      log.debug(Messages.getString("String_Node_Str",str));
    }
  }
}
Program: 128897
Project: 128897
Buggy source:
private void initLinker(TreeItem node,TableItem[] tableItems){
  FOXTreeNode treeNode=(FOXTreeNode)node.getData();
  IMetadataColumn column=treeNode.getColumn();
  if (column != null) {
    for (int i=0; i < tableItems.length; i++) {
      MetadataColumn metadataColumn=(MetadataColumn)tableItems[i].getData();
      if (metadataColumn.getLabel().equals(column.getLabel())) {
        linker.addLoopLink(tableItems[i],tableItems[i].getData(),xmlViewer.getTree(),treeNode,false);
        break;
      }
    }
  }
  TreeItem[] children=node.getItems();
  for (int i=0; i < children.length; i++) {
    initLinker(children[i],tableItems);
  }
}

Fixed version (ground truth):
private void initLinker(TreeItem node,TableItem[] tableItems){
  FOXTreeNode treeNode=(FOXTreeNode)node.getData();
  IMetadataColumn column=treeNode.getColumn();
  Properties prop=System.getProperties();
  String os=prop.getProperty("String_Node_Str");
  boolean isLastOne=false;
  if (column != null) {
    for (int i=0; i < tableItems.length; i++) {
      MetadataColumn metadataColumn=(MetadataColumn)tableItems[i].getData();
      if (metadataColumn.getLabel().equals(column.getLabel())) {
        if (os.startsWith("String_Node_Str")) {
          isLastOne=true;
        }
        linker.addLoopLink(tableItems[i],tableItems[i].getData(),xmlViewer.getTree(),treeNode,isLastOne);
        break;
      }
    }
  }
  TreeItem[] children=node.getItems();
  for (int i=0; i < children.length; i++) {
    initLinker(children[i],tableItems);
  }
}
Program: 128898
Project: 128898
Buggy source:
public void redrawLinkers(){
  int maxColumnsNumber=CoreRuntimePlugin.getInstance().getPreferenceStore().getInt(ITalendCorePrefConstants.MAXIMUM_AMOUNT_OF_COLUMNS_FOR_XML);
  if (schemaViewer.getTable().getItems().length <= maxColumnsNumber + 1) {
    linker.removeAllLinks();
    TreeItem root=xmlViewer.getTree().getItem(0);
    TableItem[] tableItems=schemaViewer.getTable().getItems();
    initLinker(root,tableItems);
    if (linker.linkSize() == 0) {
      linker.updateLinksStyleAndControlsSelection(xmlViewer.getTree(),true);
    }
  }
}

Fixed version (ground truth):
public void redrawLinkers(){
  int maxColumnsNumber=CoreRuntimePlugin.getInstance().getPreferenceStore().getInt(ITalendCorePrefConstants.MAXIMUM_AMOUNT_OF_COLUMNS_FOR_XML);
  if (schemaViewer.getTable().getItems().length <= maxColumnsNumber + 1) {
    linker.removeAllLinks();
    TreeItem root=xmlViewer.getTree().getItem(0);
    TableItem[] tableItems=schemaViewer.getTable().getItems();
    initLinker(root,tableItems);
    linker.updateLinksStyleAndControlsSelection(xmlViewer.getTree(),true);
  }
}
Program: 128899
Project: 128899
Buggy source:
/** 
 * <p> Create a new instance of <code>Table</code> with its <code>TableColumn</code>s and create also a new instance of <code>TableViewer</code> if these objects doesn't exist already. </p> <p> Initialize the <code>TableViewer</code> with by default the <code>DefaultStructuredContentProvider</code>, the <code>DefaultTableLabelProvider</code> and the <code>DefaultTableViewerSorter</code>. </p> <p> If you use the default ContentProvider, you must set as input an object which extends <code>Collection</code>. </p> <p> <b> If it is the second or more time than you call this method, only the input object is loaded. Call methods of <code>TableViewer</code> for others operations. </b> </p>
 * @param input by default a object which extends <code>Collection</code>.
 */
public void init(List list){
  if (!initCalled) {
    initCalled=true;
    if (this.table == null) {
      createTable();
    }
    attachLabelProvider();
    buildAndLayoutTable();
    attachViewerSorter();
    attachContentProvider();
    attachCellEditors();
    addListeners();
  }
  boolean hasChanged=false;
  if (this.list != list) {
    hasChanged=true;
  }
  setInputList(list);
  if (tableEditorManager != null && list != null) {
    tableEditorManager.init(this.listenableList);
  }
  if (hasChanged) {
    refreshTableEditorControls();
  }
}

Fixed version (ground truth):
/** 
 * <p> Create a new instance of <code>Table</code> with its <code>TableColumn</code>s and create also a new instance of <code>TableViewer</code> if these objects doesn't exist already. </p> <p> Initialize the <code>TableViewer</code> with by default the <code>DefaultStructuredContentProvider</code>, the <code>DefaultTableLabelProvider</code> and the <code>DefaultTableViewerSorter</code>. </p> <p> If you use the default ContentProvider, you must set as input an object which extends <code>Collection</code>. </p> <p> <b> If it is the second or more time than you call this method, only the input object is loaded. Call methods of <code>TableViewer</code> for others operations. </b> </p>
 * @param input by default a object which extends <code>Collection</code>.
 */
public void init(List list){
  if (!initCalled) {
    initCalled=true;
    if (this.table == null) {
      createTable();
    }
    attachLabelProvider();
    buildAndLayoutTable();
    attachViewerSorter();
    attachContentProvider();
    attachCellEditors();
    addListeners();
  }
  boolean hasChanged=false;
  if (this.list != list) {
    hasChanged=true;
  }
  setInputList(list);
  if (tableEditorManager != null && list != null) {
    tableEditorManager.init(this.listenableList);
  }
  if (hasChanged && !(contentProvider instanceof ILazyContentProvider)) {
    refreshTableEditorControls();
  }
}
Program: 128900
Project: 128900
Buggy source:
/** 
 * Initiate the style intended for instanciate <code>Table</code>.
 * @return int style
 */
protected int checkTableStyles(){
  int style=SWT.NONE;
  if (lineSelection != null) {
    style|=lineSelection.getSwtStyle();
  }
  if (showLineSelection != null) {
    style|=showLineSelection.getSwtStyle();
  }
  if (checkboxInFirstColumn) {
    style|=SWT.CHECK;
  }
  if (borderVisible) {
    style|=SWT.BORDER;
  }
  if (horizontalScroll) {
    style|=SWT.H_SCROLL;
  }
  if (verticalScroll) {
    style|=SWT.V_SCROLL;
  }
  return style;
}

Fixed version (ground truth):
/** 
 * Initiate the style intended for instanciate <code>Table</code>.
 * @return int style
 */
protected int checkTableStyles(){
  int style=SWT.NONE;
  if (lineSelection != null) {
    style|=lineSelection.getSwtStyle();
  }
  if (showLineSelection != null) {
    style|=showLineSelection.getSwtStyle();
  }
  if (checkboxInFirstColumn) {
    style|=SWT.CHECK;
  }
  if (borderVisible) {
    style|=SWT.BORDER;
  }
  if (horizontalScroll) {
    style|=SWT.H_SCROLL;
  }
  if (verticalScroll) {
    style|=SWT.V_SCROLL;
  }
  if (lazyLoad) {
    style|=SWT.VIRTUAL;
  }
  return style;
}
Program: 128901
Project: 128901
Buggy source:
private void handleAddedEvent(final ListenableListEvent event){
  int indexStart=event.index;
  if (tableViewerCreator.getTable().isDisposed()) {
    return;
  }
  TableItem[] items=tableViewerCreator.getTable().getItems();
  List<TableEditor> addedTableEditor=new ArrayList<TableEditor>();
  for (  TableItem item : items) {
    TableItem tableItem=item;
    if (previousItemsHash == null || !previousItemsHash.contains(tableItem)) {
      for (int iEditorCol=0; iEditorCol < columnsWithEditorContent.size(); iEditorCol++) {
        TableViewerCreatorColumnNotModifiable column=columnsWithEditorContent.get(iEditorCol);
        TableEditorContentNotModifiable tableEditorContent=column.getTableEditorContent();
        String idProperty=column.getId();
        TableEditor tableEditor=addTableEditor(column,tableEditorContent,idProperty,tableItem);
        if (tableEditor != null) {
          addedTableEditor.add(tableEditor);
        }
      }
    }
  }
  for (int i=indexStart; i < items.length; i++) {
    TableItem tableItem=items[i];
    Object data=tableItem.getData();
    Collection<TableEditor> tableEditorCollection=dataToMultipleDataEditor.getCollection(data);
    for (    TableEditor tableEditor : tableEditorCollection) {
      tableEditor.setItem(tableItem);
    }
  }
  previousItemsHash=new HashSet<TableItem>(Arrays.asList(items));
}

Fixed version (ground truth):
private void handleAddedEvent(final ListenableListEvent event){
  int indexStart=event.index;
  if (tableViewerCreator.getTable().isDisposed()) {
    return;
  }
  if (!(tableViewerCreator.getContentProvider() instanceof ILazyContentProvider)) {
    TableItem[] items=tableViewerCreator.getTable().getItems();
    List<TableEditor> addedTableEditor=new ArrayList<TableEditor>();
    for (    TableItem item : items) {
      TableItem tableItem=item;
      if (previousItemsHash == null || !previousItemsHash.contains(tableItem)) {
        for (int iEditorCol=0; iEditorCol < columnsWithEditorContent.size(); iEditorCol++) {
          TableViewerCreatorColumnNotModifiable column=columnsWithEditorContent.get(iEditorCol);
          TableEditorContentNotModifiable tableEditorContent=column.getTableEditorContent();
          String idProperty=column.getId();
          TableEditor tableEditor=addTableEditor(column,tableEditorContent,idProperty,tableItem);
          if (tableEditor != null) {
            addedTableEditor.add(tableEditor);
          }
        }
      }
    }
    for (int i=indexStart; i < items.length; i++) {
      TableItem tableItem=items[i];
      Object data=tableItem.getData();
      Collection<TableEditor> tableEditorCollection=dataToMultipleDataEditor.getCollection(data);
      for (      TableEditor tableEditor : tableEditorCollection) {
        tableEditor.setItem(tableItem);
      }
    }
    previousItemsHash=new HashSet<TableItem>(Arrays.asList(items));
  }
 else {
    refreshColumn(indexStart);
  }
}
Program: 128902
Project: 128902
Buggy source:
/** 
 * DOC amaumont Comment method "handleListenableListEvent".
 * @param event
 */
protected void handleAfterListenableListOperationEvent(ListenableListEvent<B> event){
  if (tableViewerCreator.getTable() != null && !tableViewerCreator.getTable().isDisposed()) {
    TableViewer tableViewer=tableViewerCreator.getTableViewer();
    if (event.type == TYPE.LIST_REGISTERED && tableViewerCreator.getInputList() == null && getExtendedTableModel().isDataRegistered()) {
      tableViewerCreator.setInputList(getBeansList());
      new AsynchronousThreading(100,true,tableViewerCreator.getTable().getDisplay(),new Runnable(){
        public void run(){
          tableViewerCreator.layout();
        }
      }
).start();
    }
 else {
      if (event.type == TYPE.ADDED) {
        tableViewer.refresh();
      }
 else       if (event.type == TYPE.SWAPED) {
        Object[] swapedObjects=event.swapedObjects;
        for (        Object data : swapedObjects) {
          tableViewer.refresh(data,true,true);
        }
      }
 else       if (event.type == TYPE.REMOVED) {
      }
 else {
        if (tableViewer.getContentProvider() instanceof ILazyContentProvider) {
          tableViewer.setItemCount(event.source.size());
        }
        tableViewer.refresh();
      }
    }
  }
}

Fixed version (ground truth):
/** 
 * DOC amaumont Comment method "handleListenableListEvent".
 * @param event
 */
protected void handleAfterListenableListOperationEvent(ListenableListEvent<B> event){
  if (tableViewerCreator.getTable() != null && !tableViewerCreator.getTable().isDisposed()) {
    TableViewer tableViewer=tableViewerCreator.getTableViewer();
    if (event.type == TYPE.LIST_REGISTERED && tableViewerCreator.getInputList() == null && getExtendedTableModel().isDataRegistered()) {
      tableViewerCreator.setInputList(getBeansList());
      new AsynchronousThreading(100,true,tableViewerCreator.getTable().getDisplay(),new Runnable(){
        public void run(){
          tableViewerCreator.layout();
        }
      }
).start();
    }
 else {
      if (event.type == TYPE.ADDED) {
        if (tableViewer.getContentProvider() instanceof ILazyContentProvider) {
          tableViewer.setItemCount(event.source.size());
        }
        tableViewer.refresh();
      }
 else       if (event.type == TYPE.SWAPED) {
        Object[] swapedObjects=event.swapedObjects;
        for (        Object data : swapedObjects) {
          tableViewer.refresh(data,true,true);
        }
      }
 else       if (event.type == TYPE.REMOVED) {
      }
 else {
        if (tableViewer.getContentProvider() instanceof ILazyContentProvider) {
          tableViewer.setItemCount(event.source.size());
        }
        tableViewer.refresh();
      }
    }
  }
}
Program: 128904
Project: 128904
Buggy source:
@Override protected boolean canModifyDBColumn(Object bean){
  if (bean instanceof MetadataColumnImpl) {
    if (((MetadataColumnImpl)bean).getLabel().equals(((MetadataColumnImpl)bean).getOriginalField()))     return true;
  }
  return false;
}

Fixed version (ground truth):
@Override protected boolean canModifyDBColumn(Object bean){
  if (bean instanceof MetadataColumnImpl) {
    if (((MetadataColumnImpl)bean).getLabel().equals(((MetadataColumnImpl)bean).getOriginalField())) {
      return true;
    }
  }
  return false;
}
Program: 128905
Project: 128905
Buggy source:
public TableViewerCreator<MetadataColumn> getTableViewerCreator(){
  return getExtendedTableViewer().getTableViewerCreator();
}

Fixed version (ground truth):
@Override public TableViewerCreator<MetadataColumn> getTableViewerCreator(){
  return getExtendedTableViewer().getTableViewerCreator();
}
Program: 128906
Project: 128906
Buggy source:
protected IBeanPropertyAccessors<MetadataColumn,String> getRelationshipTypeAccessor(){
  return new IBeanPropertyAccessors<MetadataColumn,String>(){
    public String get(    MetadataColumn bean){
      return bean.getRelationshipType();
    }
    public void set(    MetadataColumn bean,    String value){
      bean.setRelationshipType(value);
    }
  }
;
}

Fixed version (ground truth):
@Override protected IBeanPropertyAccessors<MetadataColumn,String> getRelationshipTypeAccessor(){
  return new IBeanPropertyAccessors<MetadataColumn,String>(){
    public String get(    MetadataColumn bean){
      return bean.getRelationshipType();
    }
    public void set(    MetadataColumn bean,    String value){
      bean.setRelationshipType(value);
    }
  }
;
}
Program: 128907
Project: 128907
Buggy source:
protected IBeanPropertyAccessors<MetadataColumn,String> getRelatedEntityAccessor(){
  return new IBeanPropertyAccessors<MetadataColumn,String>(){
    public String get(    MetadataColumn bean){
      return bean.getRelatedEntity();
    }
    public void set(    MetadataColumn bean,    String value){
      bean.setRelatedEntity(value);
    }
  }
;
}

Fixed version (ground truth):
@Override protected IBeanPropertyAccessors<MetadataColumn,String> getRelatedEntityAccessor(){
  return new IBeanPropertyAccessors<MetadataColumn,String>(){
    public String get(    MetadataColumn bean){
      return bean.getRelatedEntity();
    }
    public void set(    MetadataColumn bean,    String value){
      bean.setRelatedEntity(value);
    }
  }
;
}
Program: 128909
Project: 128909
Buggy source:
public void perspectiveActivated(IWorkbenchPage page,IPerspectiveDescriptor perspective){
  String pId=perspective.getId();
  IRepositoryView view=RepositoryManager.getRepositoryView();
  if (view != null) {
    if (IBrandingConfiguration.PERSPECTIVE_DI_ID.equals(pId) || IBrandingConfiguration.PERSPECTIVE_CAMEL_ID.equals(pId)) {
      view.refresh();
    }
  }
}

Fixed version (ground truth):
@Override public void perspectiveActivated(IWorkbenchPage page,IPerspectiveDescriptor perspective){
  String pId=perspective.getId();
}
Program: 128910
Project: 128910
Buggy source:
public void createInitialLayout(IPageLayout layout){
  IBrandingService service=(IBrandingService)GlobalServiceRegister.getDefault().getService(IBrandingService.class);
  service.getBrandingConfiguration().initPerspective(layout);
  PlatformUI.getWorkbench().getActiveWorkbenchWindow().addPerspectiveListener(new PerspectiveAdapter(){
    public void perspectiveActivated(    IWorkbenchPage page,    IPerspectiveDescriptor perspective){
      String pId=perspective.getId();
      IRepositoryView view=RepositoryManager.getRepositoryView();
      if (view != null) {
        if (IBrandingConfiguration.PERSPECTIVE_DI_ID.equals(pId) || IBrandingConfiguration.PERSPECTIVE_CAMEL_ID.equals(pId)) {
          view.refresh();
        }
      }
    }
  }
);
}

Fixed version (ground truth):
public void createInitialLayout(IPageLayout layout){
  IBrandingService service=(IBrandingService)GlobalServiceRegister.getDefault().getService(IBrandingService.class);
  service.getBrandingConfiguration().initPerspective(layout);
  PlatformUI.getWorkbench().getActiveWorkbenchWindow().addPerspectiveListener(new PerspectiveAdapter(){
    @Override public void perspectiveActivated(    IWorkbenchPage page,    IPerspectiveDescriptor perspective){
      String pId=perspective.getId();
    }
  }
);
}
Program: 128911
Project: 128911
Buggy source:
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<IMetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
  newTableViewerCreator.setLazyLoad(true);
}

Fixed version (ground truth):
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<IMetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
}
Program: 128912
Project: 128912
Buggy source:
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<MetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
  newTableViewerCreator.setLazyLoad(true);
}

Fixed version (ground truth):
@Override protected void setTableViewerCreatorOptions(TableViewerCreator<MetadataColumn> newTableViewerCreator){
  super.setTableViewerCreatorOptions(newTableViewerCreator);
}
Program: 128913
Project: 128913
Buggy source:
private void initLinker(TreeItem node,TableItem[] tableItems){
  FOXTreeNode treeNode=(FOXTreeNode)node.getData();
  IMetadataColumn column=treeNode.getColumn();
  if (column != null) {
    for (    TableItem tableItem : tableItems) {
      MetadataColumn metadataColumn=(MetadataColumn)tableItem.getData();
      if (metadataColumn.getLabel().equals(column.getLabel())) {
        linker.addLoopLink(tableItem,tableItem.getData(),xmlViewer.getTree(),treeNode,false);
        break;
      }
    }
  }
  TreeItem[] children=node.getItems();
  for (  TreeItem element : children) {
    initLinker(element,tableItems);
  }
}

Fixed version (ground truth):
private void initLinker(TreeItem node,TableItem[] tableItems){
  FOXTreeNode treeNode=(FOXTreeNode)node.getData();
  IMetadataColumn column=treeNode.getColumn();
  Properties prop=System.getProperties();
  String os=prop.getProperty("String_Node_Str");
  boolean isLastOne=false;
  if (column != null) {
    for (    TableItem tableItem : tableItems) {
      MetadataColumn metadataColumn=(MetadataColumn)tableItem.getData();
      if (metadataColumn.getLabel().equals(column.getLabel())) {
        if (os.startsWith("String_Node_Str")) {
          isLastOne=true;
        }
        linker.addLoopLink(tableItem,tableItem.getData(),xmlViewer.getTree(),treeNode,isLastOne);
        break;
      }
    }
  }
  TreeItem[] children=node.getItems();
  for (  TreeItem element : children) {
    initLinker(element,tableItems);
  }
}
Program: 128914
Project: 128914
Buggy source:
@Override public void redrawLinkers(){
  int maxColumnsNumber=CoreRuntimePlugin.getInstance().getPreferenceStore().getInt(ITalendCorePrefConstants.MAXIMUM_AMOUNT_OF_COLUMNS_FOR_XML);
  if (schemaViewer.getTable().getItems().length <= maxColumnsNumber + 1) {
    linker.removeAllLinks();
    TreeItem root=xmlViewer.getTree().getItem(0);
    TableItem[] tableItems=schemaViewer.getTable().getItems();
    initLinker(root,tableItems);
    if (linker.linkSize() == 0) {
      linker.updateLinksStyleAndControlsSelection(xmlViewer.getTree(),true);
    }
  }
}

Fixed version (ground truth):
@Override public void redrawLinkers(){
  int maxColumnsNumber=CoreRuntimePlugin.getInstance().getPreferenceStore().getInt(ITalendCorePrefConstants.MAXIMUM_AMOUNT_OF_COLUMNS_FOR_XML);
  if (schemaViewer.getTable().getItems().length <= maxColumnsNumber + 1) {
    linker.removeAllLinks();
    TreeItem root=xmlViewer.getTree().getItem(0);
    TableItem[] tableItems=schemaViewer.getTable().getItems();
    initLinker(root,tableItems);
    linker.updateLinksStyleAndControlsSelection(xmlViewer.getTree(),true);
  }
}
Program: 128915
Project: 128915
Buggy source:
public void init(final Tree tree,Table[] tables,IBackgroundRefresher backgroundRefresher){
  super.init(tree,tables,delegateLinker,backgroundRefresher);
  tree.removeSelectionListener(getLinkableTree().getSelectionListener());
}

Fixed version (ground truth):
@Override public void init(final Tree tree,Table[] tables,IBackgroundRefresher backgroundRefresher){
  super.init(tree,tables,delegateLinker,backgroundRefresher);
  tree.removeSelectionListener(getLinkableTree().getSelectionListener());
}
Program: 128916
Project: 128916
Buggy source:
public void drawBackground(GC gc){
  delegateLinker.drawBackground(gc);
}

Fixed version (ground truth):
@Override public void drawBackground(GC gc){
  delegateLinker.drawBackground(gc);
}
Program: 128918
Project: 128918
Buggy source:
public void refreshColumn(int index){
  Table table=tableViewerCreator.getTable();
  if (table.isDisposed()) {
    return;
  }
  for (int iEditorCol=0; iEditorCol < columnsWithEditorContent.size(); iEditorCol++) {
    TableViewerCreatorColumnNotModifiable column=columnsWithEditorContent.get(iEditorCol);
    TableEditorContentNotModifiable tableEditorContent=column.getTableEditorContent();
    String idProperty=column.getId();
    TableItem tableItem=table.getItems()[index];
    if (dataToMultipleDataEditor.containsKey(tableItem.getData())) {
      Collection<TableEditor> object=dataToMultipleDataEditor.getCollection(tableItem.getData());
      for (      TableEditor tableEditor : object) {
        tableEditor.setItem(tableItem);
        Control editor=tableEditor.getEditor();
        if (editor != null) {
          editor.redraw();
        }
      }
      if (object.size() == columnsWithEditorContent.size()) {
        break;
      }
 else {
        if (iEditorCol < object.size()) {
          continue;
        }
 else {
          addTableEditor(column,tableEditorContent,idProperty,table.getItems()[index]);
        }
      }
    }
 else {
      addTableEditor(column,tableEditorContent,idProperty,table.getItems()[index]);
    }
  }
}

Fixed version (ground truth):
public void refreshColumn(int index){
  Table table=tableViewerCreator.getTable();
  if (table.isDisposed() || index >= table.getItems().length) {
    return;
  }
  for (int iEditorCol=0; iEditorCol < columnsWithEditorContent.size(); iEditorCol++) {
    TableViewerCreatorColumnNotModifiable column=columnsWithEditorContent.get(iEditorCol);
    TableEditorContentNotModifiable tableEditorContent=column.getTableEditorContent();
    String idProperty=column.getId();
    TableItem tableItem=table.getItems()[index];
    if (dataToMultipleDataEditor.containsKey(tableItem.getData())) {
      Collection<TableEditor> object=dataToMultipleDataEditor.getCollection(tableItem.getData());
      for (      TableEditor tableEditor : object) {
        tableEditor.setItem(tableItem);
        Control editor=tableEditor.getEditor();
        if (editor != null) {
          editor.redraw();
        }
      }
      if (object.size() == columnsWithEditorContent.size()) {
        break;
      }
 else {
        if (iEditorCol < object.size()) {
          continue;
        }
 else {
          addTableEditor(column,tableEditorContent,idProperty,table.getItems()[index]);
        }
      }
    }
 else {
      addTableEditor(column,tableEditorContent,idProperty,table.getItems()[index]);
    }
  }
}
Program: 128919
Project: 128919
Buggy source:
public void setContentProvider(ILazyContentProvider contentProvider){
  if (tableViewer != null && tableViewer.getContentProvider() != contentProvider) {
    tableViewer.setContentProvider(contentProvider);
  }
  this.contentProvider=contentProvider;
}

Fixed version (ground truth):
public void setContentProvider(IContentProvider contentProvider){
  if (tableViewer != null && tableViewer.getContentProvider() != contentProvider) {
    tableViewer.setContentProvider(contentProvider);
  }
  this.contentProvider=contentProvider;
}