Skip to content

Commit

Permalink
Merge branch 'JENKINS-13618' of https://github.com/cjo9900/conditiona…
Browse files Browse the repository at this point in the history
  • Loading branch information
imod committed May 6, 2012
2 parents 98195d3 + 7b44afc commit 92e690e
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 17 deletions.
18 changes: 17 additions & 1 deletion pom.xml
Expand Up @@ -62,4 +62,20 @@
<version>0.5</version>
</dependency>
</dependencies>
</project>

<repositories>
<repository>
<id>repo.jenkins-ci.org</id>
<url>http://repo.jenkins-ci.org/public/</url>
</repository>
</repositories>

<pluginRepositories>
<pluginRepository>
<id>repo.jenkins-ci.org</id>
<url>http://repo.jenkins-ci.org/public/</url>
</pluginRepository>
</pluginRepositories>
</project>


Expand Up @@ -52,8 +52,9 @@

/**
* A buildstep wrapping any number of other buildsteps, controlling there execution based on a defined condition.
*
*
* @author Dominik Bartholdi (imod)
* @author Chris Johnson (cjo9900)
*/
public class ConditionalBuilder extends Builder {
private static Logger log = Logger.getLogger(ConditionalBuilder.class.getName());
Expand All @@ -64,14 +65,24 @@ public class ConditionalBuilder extends Builder {

private final BuildStepRunner runner;
private RunCondition runCondition;
private List<Builder> conditionalbuilders = new ArrayList<Builder>();
private List<Builder> conditionalbuilders;

@DataBoundConstructor
/**
* @deprecated No longer needed as part of the Constructor
* Use {@link #ConditionalBuilder(RunCondition, BuildStepRunner, List<Builder>)}
*/
@Deprecated
public ConditionalBuilder(RunCondition runCondition, final BuildStepRunner runner) {
//List<Builder> builders = new ArrayList<Builder>();
this(runCondition, runner, new ArrayList<Builder>());
}

@DataBoundConstructor
public ConditionalBuilder(RunCondition runCondition, final BuildStepRunner runner, List<Builder> conditionalbuilders) {
this.runner = runner;
this.runCondition = runCondition;
this.conditionalbuilders = conditionalbuilders;
}

public BuildStepRunner getRunner() {
return runner;
}
Expand All @@ -84,6 +95,12 @@ public List<Builder> getConditionalbuilders() {
return conditionalbuilders;
}

/**
* Set the Conditional Builders
*
* @deprecated No longer needed as part of the DataBoundConstructor
*/
@Deprecated
public void setConditionalbuilders(List<Builder> conditionalbuilders) {
this.conditionalbuilders = conditionalbuilders;
}
Expand Down Expand Up @@ -133,18 +150,6 @@ public boolean configure(StaplerRequest req, JSONObject formData) throws FormExc
return super.configure(req, formData);
}

@Override
public Builder newInstance(StaplerRequest req, JSONObject formData) throws hudson.model.Descriptor.FormException {
ConditionalBuilder instance = req.bindJSON(ConditionalBuilder.class, formData);
if (formData.opt("conditionalbuilders") != null) {
final List all = new ArrayList(Builder.all());
// as Any Build step also allows publishers to be used, we have to pass the publisher descriptors too...
all.addAll(Publisher.all());
instance.conditionalbuilders = Descriptor.newInstancesFromHeteroList(req, formData, "conditionalbuilders", all);
}
return instance;
}

public List<? extends Descriptor<? extends BuildStep>> getBuilderDescriptors(AbstractProject<?, ?> project) {
final SingleConditionalBuilderDescriptor singleConditionalStepDescriptor = Hudson.getInstance().getDescriptorByType(
SingleConditionalBuilderDescriptor.class);
Expand Down

0 comments on commit 92e690e

Please sign in to comment.