diff --git a/core/src/main/java/hudson/model/AbstractBuild.java b/core/src/main/java/hudson/model/AbstractBuild.java
index 956867fa6f..23e36bb91f 100644
--- a/core/src/main/java/hudson/model/AbstractBuild.java
+++ b/core/src/main/java/hudson/model/AbstractBuild.java
@@ -884,26 +884,7 @@ public abstract class AbstractBuild
,R extends Abs
public Calendar due() {
return getTimestamp();
}
-
- /**
- * Add all transient action for this build
- *
- */
- protected List createTransientActions() {
- Vector ta = new Vector();
- for (TransientBuildActionFactory tpaf : TransientBuildActionFactory.all())
- ta.addAll(Util.fixNull(tpaf.createFor(this)));
- return ta;
- }
-
- // commented out until fixed problem with adding actions, see discussion under https://github.com/jenkinsci/jenkins/pull/421
-/* @Override
- public List getActions() {
- List actions = new CopyOnWriteArrayList(super.getActions());
- actions.addAll(createTransientActions());
- return actions;
- }
-*/
+
public List getPersistentActions(){
return super.getActions();
}
diff --git a/core/src/main/java/hudson/model/Run.java b/core/src/main/java/hudson/model/Run.java
index 031333881d..cf93219af8 100644
--- a/core/src/main/java/hudson/model/Run.java
+++ b/core/src/main/java/hudson/model/Run.java
@@ -242,6 +242,8 @@ public abstract class Run ,RunT extends Run transientActions;
protected static final ThreadLocal ID_FORMATTER =
new ThreadLocal() {
@@ -272,6 +274,7 @@ public abstract class Run ,RunT extends Run,RunT extends Run getTransientActions(){
+ return transientActions;
+ }
+
+ /**
+ * Create transient actions for this build
+ *
+ * @return transient actions
+ */
+ public List updateTransientActions(){
+ List actions = new ArrayList();
+ for(TransientBuildActionFactory factory: TransientBuildActionFactory.all()){
+ actions.addAll(factory.createFor(this));
+ }
+ return actions;
+ }
@Override
public void addAction(Action a) {
@@ -2059,11 +2085,17 @@ public abstract class Run ,RunT extends Run createFor(AbstractBuild target);
+ public abstract Collection extends Action> createFor(Run target);
/**
* Returns all the registered {@link TransientBuildActionFactory}s.
diff --git a/core/src/main/resources/hudson/model/AbstractBuild/sidepanel.jelly b/core/src/main/resources/hudson/model/AbstractBuild/sidepanel.jelly
index e1a7d2c86b..b7be15fc1e 100644
--- a/core/src/main/resources/hudson/model/AbstractBuild/sidepanel.jelly
+++ b/core/src/main/resources/hudson/model/AbstractBuild/sidepanel.jelly
@@ -33,6 +33,15 @@ THE SOFTWARE.
+
+
+
+
+
+
+
+