ISIS-903: fixing backward-compatibility breakage of 
FixtureScript#ExecutionContext API.


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/d9444309
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/d9444309
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/d9444309

Branch: refs/heads/master
Commit: d944430940776aa0c0fd54a6b8460ab01786ed08
Parents: e32e2e0
Author: Dan Haywood <[email protected]>
Authored: Wed Feb 18 12:07:01 2015 +0000
Committer: Dan Haywood <[email protected]>
Committed: Wed Feb 18 14:07:57 2015 +0000

----------------------------------------------------------------------
 .../applib/fixturescripts/FixtureScript.java    | 29 ++++++++++++++++++--
 1 file changed, 26 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/d9444309/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
----------------------------------------------------------------------
diff --git 
a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
 
b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
index e23cffb..98e6a5a 100644
--- 
a/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
+++ 
b/core/applib/src/main/java/org/apache/isis/applib/fixturescripts/FixtureScript.java
@@ -456,8 +456,19 @@ public abstract class FixtureScript
          * that are {@link 
org.apache.isis.applib.fixturescripts.FixtureScript.ExecutionContext#addResult(FixtureScript,
 Object)} added),
          * uses a key that is derived from the fixture's class name.
          */
-         public <T extends FixtureScript> T executeChild(final FixtureScript 
callingFixtureScript, final T childFixtureScript) {
-            return executeChild(callingFixtureScript, null, 
childFixtureScript);
+        public void executeChild(final FixtureScript callingFixtureScript, 
final FixtureScript childFixtureScript) {
+            executeChildT(callingFixtureScript, childFixtureScript);
+        }
+
+        /**
+         * Executes a child {@link FixtureScript fixture script}, injecting 
services into it first, and (for any results
+         * that are {@link 
org.apache.isis.applib.fixturescripts.FixtureScript.ExecutionContext#addResult(FixtureScript,
 Object)} added),
+         * uses a key that is derived from the fixture's class name.
+         *
+         * @return the child fixture script.
+         */
+        public <T extends FixtureScript> T executeChildT(final FixtureScript 
callingFixtureScript, final T childFixtureScript) {
+             return executeChildT(callingFixtureScript, null, 
childFixtureScript);
         }
 
         /**
@@ -465,7 +476,19 @@ public abstract class FixtureScript
          * that are {@link 
org.apache.isis.applib.fixturescripts.FixtureScript.ExecutionContext#addResult(FixtureScript,
 Object)} added),
          * uses a key that overriding the default name of the fixture script 
with one more meaningful in the context of this fixture.
          */
-        public <T extends FixtureScript> T executeChild(final FixtureScript 
callingFixtureScript, final String localNameOverride, final T 
childFixtureScript) {
+        public void executeChild(final FixtureScript callingFixtureScript, 
final String localNameOverride, final FixtureScript childFixtureScript) {
+
+            executeChildT(callingFixtureScript, localNameOverride, 
childFixtureScript);
+        }
+
+        /**
+         * Executes a child {@link FixtureScript fixture script}, injecting 
services into it first, and (for any results
+         * that are {@link 
org.apache.isis.applib.fixturescripts.FixtureScript.ExecutionContext#addResult(FixtureScript,
 Object)} added),
+         * uses a key that overriding the default name of the fixture script 
with one more meaningful in the context of this fixture.
+         *
+         * @return the child fixture script.
+         */
+        public <T extends FixtureScript> T executeChildT(final FixtureScript 
callingFixtureScript, final String localNameOverride, final T 
childFixtureScript) {
 
             
childFixtureScript.setParentPath(callingFixtureScript.pathWith(""));
             if(localNameOverride != null) {

Reply via email to