From ce67ddb991980b0569c798a026e5395fed3f37e2 Mon Sep 17 00:00:00 2001 From: kohsuke Date: Mon, 29 Oct 2007 23:52:29 +0000 Subject: [PATCH] Testing against the type allows us to check the applicability of a build step even if a concrete instance doesn't exist. Turns out this is crucial for the promoted-builds plugin since at the configuration time there might not exist any promotion job. git-svn-id: https://hudson.dev.java.net/svn/hudson/trunk/hudson/main@5600 71c3de6d-444a-0410-be80-ed276b4c234a --- core/src/main/java/hudson/Functions.java | 2 +- core/src/main/java/hudson/tasks/BuildStepDescriptor.java | 2 +- core/src/main/java/hudson/tasks/BuildTrigger.java | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/core/src/main/java/hudson/Functions.java b/core/src/main/java/hudson/Functions.java index 31d80b0dae..9df9848cc7 100644 --- a/core/src/main/java/hudson/Functions.java +++ b/core/src/main/java/hudson/Functions.java @@ -456,7 +456,7 @@ public class Functions { for (Descriptor b : list) { if (b instanceof BuildStepDescriptor) { BuildStepDescriptor bsd = (BuildStepDescriptor) b; - if(bsd.isApplicable(project)) + if(bsd.isApplicable(project.getClass())) result.add(b); } else { // old plugins built before 1.150 may not implement BuildStepDescriptor diff --git a/core/src/main/java/hudson/tasks/BuildStepDescriptor.java b/core/src/main/java/hudson/tasks/BuildStepDescriptor.java index 9da5fb1af7..58da33163e 100644 --- a/core/src/main/java/hudson/tasks/BuildStepDescriptor.java +++ b/core/src/main/java/hudson/tasks/BuildStepDescriptor.java @@ -24,5 +24,5 @@ public abstract class BuildStepDescriptor> * @return * true to allow user to configure this post-promotion task for the given project. */ - public abstract boolean isApplicable(AbstractProject item); + public abstract boolean isApplicable(Class jobType); } diff --git a/core/src/main/java/hudson/tasks/BuildTrigger.java b/core/src/main/java/hudson/tasks/BuildTrigger.java index dba668a7ef..e4468a6979 100644 --- a/core/src/main/java/hudson/tasks/BuildTrigger.java +++ b/core/src/main/java/hudson/tasks/BuildTrigger.java @@ -188,7 +188,8 @@ public class BuildTrigger extends Publisher { formData.getBoolean("evenIfUnstable")); } - public boolean isApplicable(AbstractProject item) { + @Override + public boolean isApplicable(Class jobType) { return true; }