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

kwin pushed a commit to branch master
in repository 
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-jcr-packageinit.git


The following commit(s) were added to refs/heads/master by this push:
     new dd2685b  SLING-10339 temporarily explicitly initialize 
FSPackageRegistry since contains() yields false until initialized (#7)
dd2685b is described below

commit dd2685bfe7d690e6514e9073c00221151ffa3cc7
Author: Dr. Hans-Peter Störr <yu4ch...@techno.ms>
AuthorDate: Thu Apr 29 10:01:42 2021 +0200

    SLING-10339 temporarily explicitly initialize FSPackageRegistry since 
contains() yields false until initialized (#7)
---
 .../sling/jcr/packageinit/impl/ExecutionPlanRepoInitializer.java      | 3 +++
 .../sling/jcr/packageinit/ExecutionPlanRepoInitializerTest.java       | 4 ++--
 2 files changed, 5 insertions(+), 2 deletions(-)

diff --git 
a/src/main/java/org/apache/sling/jcr/packageinit/impl/ExecutionPlanRepoInitializer.java
 
b/src/main/java/org/apache/sling/jcr/packageinit/impl/ExecutionPlanRepoInitializer.java
index 3bc93cb..eb18235 100644
--- 
a/src/main/java/org/apache/sling/jcr/packageinit/impl/ExecutionPlanRepoInitializer.java
+++ 
b/src/main/java/org/apache/sling/jcr/packageinit/impl/ExecutionPlanRepoInitializer.java
@@ -132,6 +132,9 @@ public class ExecutionPlanRepoInitializer implements 
SlingRepositoryInitializer
                 logger.info("Waiting for PackageRegistry.");
                 PackageRegistry registry = (PackageRegistry) 
st.waitForService(0);
                 logger.info("PackageRegistry found - starting execution of 
execution plan");
+                // workaround until 
https://issues.apache.org/jira/browse/JCRVLT-517 is solved: registry.contains 
yields false value until initialized,
+                // making the call ExecutionPlan.execute() later fail if a new 
package has a dependency on another package declared
+                registry.packages();
                 
                 ExecutionPlanBuilder builder = registry.createExecutionPlan();
                 @SuppressWarnings("deprecation")
diff --git 
a/src/test/java/org/apache/sling/jcr/packageinit/ExecutionPlanRepoInitializerTest.java
 
b/src/test/java/org/apache/sling/jcr/packageinit/ExecutionPlanRepoInitializerTest.java
index 36aa215..45da686 100644
--- 
a/src/test/java/org/apache/sling/jcr/packageinit/ExecutionPlanRepoInitializerTest.java
+++ 
b/src/test/java/org/apache/sling/jcr/packageinit/ExecutionPlanRepoInitializerTest.java
@@ -105,8 +105,8 @@ public class ExecutionPlanRepoInitializerTest {
     @Mock
     Session adminSession;
 
-    @Spy
-    PackageRegistry registry = new FSPackageRegistry();
+    @Mock
+    PackageRegistry registry;
 
     @Mock
     ExecutionPlanBuilder builder;

Reply via email to