/**
*
*/
package hudson.plugins.crap4j.display;
import hudson.model.AbstractBuild;
import hudson.model.ModelObject;
import hudson.plugins.crap4j.model.ICrapMethodPresentation;
import hudson.plugins.crap4j.model.IMethodCrap;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
public abstract class AbstractCrapMethodPresentation implements ICrapMethodPresentation, ModelObject {
private final String title;
private final AbstractBuild<?, ?> owner;
public AbstractCrapMethodPresentation(AbstractBuild<?, ?> owner,
String title) {
super();
this.owner = owner;
this.title = title;
}
public AbstractBuild<?, ?> getOwner() {
return this.owner;
}
//@Override
public String getTitle() {
return this.title;
}
//@Override
public String getDisplayName() {
return getTitle();
}
//@Override
public Collection<IMethodCrap> getMethods() {
List<IMethodCrap> result = new ArrayList<IMethodCrap>();
Collections.addAll(result, loadMethods());
Collections.sort(result, new DecreasingCrapLoadComparator());
return result;
}
protected abstract IMethodCrap[] loadMethods();
}