You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ol...@apache.org on 2018/09/07 19:51:35 UTC

[sling-org-apache-sling-scripting-groovy] 01/02: SLING-7897 Make DynamicClassLoaderManager reference dynamic

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

olli pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-groovy.git

commit e049babdc0225ecef020191124433b9f54b27b25
Author: Oliver Lietz <ol...@apache.org>
AuthorDate: Fri Sep 7 21:50:53 2018 +0200

    SLING-7897 Make DynamicClassLoaderManager reference dynamic
---
 .../sling/scripting/groovy/internal/GspScriptEngineFactory.java  | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/apache/sling/scripting/groovy/internal/GspScriptEngineFactory.java b/src/main/java/org/apache/sling/scripting/groovy/internal/GspScriptEngineFactory.java
index 82bc85c..e629c0d 100644
--- a/src/main/java/org/apache/sling/scripting/groovy/internal/GspScriptEngineFactory.java
+++ b/src/main/java/org/apache/sling/scripting/groovy/internal/GspScriptEngineFactory.java
@@ -35,6 +35,8 @@ import org.osgi.service.component.annotations.Component;
 import org.osgi.service.component.annotations.Deactivate;
 import org.osgi.service.component.annotations.Modified;
 import org.osgi.service.component.annotations.Reference;
+import org.osgi.service.component.annotations.ReferencePolicy;
+import org.osgi.service.component.annotations.ReferencePolicyOption;
 import org.osgi.service.metatype.annotations.Designate;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -54,8 +56,11 @@ import org.slf4j.LoggerFactory;
 )
 public class GspScriptEngineFactory extends AbstractScriptEngineFactory {
 
-    @Reference
-    private DynamicClassLoaderManager dynamicClassLoaderManager;
+    @Reference(
+        policy = ReferencePolicy.DYNAMIC,
+        policyOption = ReferencePolicyOption.GREEDY
+    )
+    private volatile DynamicClassLoaderManager dynamicClassLoaderManager;
 
     private GspScriptEngineFactoryConfiguration configuration;