提交 c9701162 编写于 作者: K kohsuke

modified to use the new method in BuildStepDescriptor.


git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@6942 71c3de6d-444a-0410-be80-ed276b4c234a
上级 5d4cdeaf
......@@ -3,7 +3,6 @@ package hudson;
import hudson.maven.ExecutedMojo;
import hudson.model.AbstractProject;
import hudson.model.Action;
import hudson.model.Describable;
import hudson.model.Descriptor;
import hudson.model.Hudson;
import hudson.model.Item;
......@@ -51,7 +50,6 @@ import java.lang.management.ThreadInfo;
import java.lang.management.ThreadMXBean;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Collection;
import java.util.Collections;
......@@ -68,7 +66,8 @@ import java.util.regex.Pattern;
* Utility functions used in views.
*
* <p>
* An instance of this class is created for each request.
* An instance of this class is created for each request and made accessible
* from view pages via the variable 'h' (h stands for Hudson.)
*
* @author Kohsuke Kawaguchi
*/
......@@ -477,26 +476,11 @@ public class Functions {
}
public static List<Descriptor<Builder>> getBuilderDescriptors(AbstractProject<?,?> project) {
return filterBuildStepDescriptors(BuildStep.BUILDERS,project);
return BuildStepDescriptor.filter(BuildStep.BUILDERS, project.getClass());
}
public static List<Descriptor<Publisher>> getPublisherDescriptors(AbstractProject<?,?> project) {
return filterBuildStepDescriptors(BuildStep.PUBLISHERS,project);
}
private static <T extends BuildStep&Describable<T>> List<Descriptor<T>> filterBuildStepDescriptors(List<Descriptor<T>> list,AbstractProject<?,?> project) {
List<Descriptor<T>> result = new ArrayList<Descriptor<T>>();
for (Descriptor<T> b : list) {
if (b instanceof BuildStepDescriptor) {
BuildStepDescriptor bsd = (BuildStepDescriptor) b;
if(bsd.isApplicable(project.getClass()))
result.add(b);
} else {
// old plugins built before 1.150 may not implement BuildStepDescriptor
result.add(b);
}
}
return result;
return BuildStepDescriptor.filter(BuildStep.PUBLISHERS, project.getClass());
}
/**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册