This is an automated email from the ASF dual-hosted git repository.

danhaywood pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 5f49ca85a29e342373306fef6067662cb5351370
Author: danhaywood <d...@haywood-associates.co.uk>
AuthorDate: Tue Feb 11 08:16:05 2020 +0000

    ISIS-2158: removes field dependency of FixtureScript on FixtureScripts
    
    ... because otherwise cyclic dependencies may arise.
---
 .../isis/testing/fixtures/applib/fixturescripts/FixtureScript.java  | 5 +++--
 .../isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java | 6 +++---
 2 files changed, 6 insertions(+), 5 deletions(-)

diff --git 
a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScript.java
 
b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScript.java
index 2d1da8b..0a06d72 100644
--- 
a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScript.java
+++ 
b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScript.java
@@ -714,7 +714,9 @@ public abstract class FixtureScript {
      *     Package-visibility only, not public API.
      * </p>
      */
-    final List<FixtureResult> run(final String parameters) {
+    final List<FixtureResult> run(
+            final String parameters,
+            final FixtureScripts fixtureScripts) {
         executionContext = fixtureScripts.newExecutionContext(parameters);
         executionContext.executeChildIfNotAlready(this);
         return executionContext.getResults();
@@ -831,7 +833,6 @@ public abstract class FixtureScript {
 
     // -- DEPENDENCIES
 
-    @Inject protected FixtureScripts fixtureScripts;
     @Inject protected FactoryService factoryService;
     @Inject protected ServiceRegistry serviceRegistry;
     @Inject protected ServiceInjector serviceInjector;
diff --git 
a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
 
b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
index 777a019..1f95fc0 100644
--- 
a/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
+++ 
b/testing/fixtures/applib/src/main/java/org/apache/isis/testing/fixtures/applib/fixturescripts/FixtureScripts.java
@@ -259,7 +259,7 @@ public class FixtureScripts extends AbstractService {
             // domain services are injected into the fixture script.
             serviceInjector.injectServicesInto(fixtureScript);
 
-            return fixtureScript.run(parameters);
+            return fixtureScript.run(parameters, this);
         } finally {
             eventBusService.post(new FixturesInstalledEvent(this));
         }
@@ -295,7 +295,7 @@ public class FixtureScripts extends AbstractService {
 
     protected List<FixtureResult> runScript(final FixtureScript fixtureScript, 
final String parameters) {
         serviceInjector.injectServicesInto(fixtureScript);
-        return fixtureScript.run(parameters);
+        return fixtureScript.run(parameters, this);
     }
 
 
@@ -387,7 +387,7 @@ public class FixtureScripts extends AbstractService {
 
         serviceInjector.injectServicesInto(builderScript);
 
-        builderScript.run(null);
+        builderScript.run(null, this);
         final T object = builderScript.getObject();
         return object;
     }

Reply via email to