./codecover/src/org/codecover/eclipse/views/RecViewViewContentProvider.java
package org.codecover.eclipse.views;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import org.codecover.eclipse.utils.recommendationgenerator.RecommendationGenerator;
import org.codecover.eclipse.utils.recommendationgenerator.UncoveredBranch;
import org.codecover.model.exceptions.FileLoadException;
import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
import org.eclipse.jface.viewers.ViewerComparator;
import org.eclipse.jface.viewers.ViewerFilter;
class RecViewViewContentProvider implements IStructuredContentProvider {
/**
*
*/
private RecommendationsView recommendationsView;
private List viewCache = new ArrayList();
private TableViewer viewer;
private RecommendationGenerator recommendationGenerator;
RecViewViewContentProvider(RecommendationsView recommendationsView,
TableViewer viewer, RecommendationGenerator generator) {
this.recommendationsView = recommendationsView;
this.viewer = viewer;
this.recommendationGenerator = generator;
init();
}
public void init() {
viewCache = this.recommendationGenerator.getUnsortedList();
viewer.refresh();
viewer.setComparator(new ViewerComparator() {
});
}
public void inputChanged(Viewer v, Object oldInput, Object newInput) {
}
public void dispose() {
}
public Object[] getElements(Object parent) {
if (viewCache == null) {
viewCache = new ArrayList();
}
return viewCache.toArray();
}
public void sort() {
this.recommendationGenerator.sort();
this.viewCache = this.recommendationGenerator.getSortedList();
if (this.viewCache == null) {
this.viewCache = new ArrayList();
}
viewer.refresh();
}
public void refreshViewWithoutInvoking() {
this.recommendationGenerator.weightChanged();
this.viewCache = this.recommendationGenerator.getSortedList();
if (this.viewCache == null) {
this.viewCache = new ArrayList();
}
viewer.refresh();
}
}