You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 10:13:50 UTC

[sling-org-apache-sling-scripting-thymeleaf] 39/50: SLING-5075 Upgrade Thymeleaf to 3.0

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

rombert pushed a commit to annotated tag org.apache.sling.scripting.thymeleaf-1.0.0
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-scripting-thymeleaf.git

commit 4e61c0442f7ca970f526934a4a0f23e86e1a98a8
Author: Oliver Lietz <ol...@apache.org>
AuthorDate: Tue May 17 06:29:29 2016 +0000

    SLING-5075 Upgrade Thymeleaf to 3.0
    
    set decoupled logic configuration on resolved templates
    
    git-svn-id: https://svn.apache.org/repos/asf/sling/trunk/contrib/scripting/org.apache.sling.scripting.thymeleaf@1744188 13f79535-47bb-0310-9956-ffa450edef68
---
 .../internal/SlingResourceTemplateResolver.java        | 18 +++++++++---------
 .../SlingResourceTemplateResolverConfiguration.java    |  6 ++++++
 2 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java b/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
index df2f36c..e28d42f 100644
--- a/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
+++ b/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolver.java
@@ -37,6 +37,7 @@ import org.osgi.service.metatype.annotations.Designate;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.thymeleaf.IEngineConfiguration;
+import org.thymeleaf.cache.ICacheEntryValidity;
 import org.thymeleaf.cache.NonCacheableCacheEntryValidity;
 import org.thymeleaf.context.IContext;
 import org.thymeleaf.templatemode.TemplateMode;
@@ -65,7 +66,7 @@ public class SlingResourceTemplateResolver implements ITemplateResolver {
     )
     private volatile TemplateModeProvider templateModeProvider;
 
-    private Integer order;
+    private SlingResourceTemplateResolverConfiguration configuration;
 
     private final Logger logger = LoggerFactory.getLogger(SlingResourceTemplateResolver.class);
 
@@ -83,13 +84,13 @@ public class SlingResourceTemplateResolver implements ITemplateResolver {
     @Activate
     private void activate(final SlingResourceTemplateResolverConfiguration configuration) {
         logger.debug("activate");
-        configure(configuration);
+        this.configuration = configuration;
     }
 
     @Modified
     private void modified(final SlingResourceTemplateResolverConfiguration configuration) {
         logger.debug("modified");
-        configure(configuration);
+        this.configuration = configuration;
     }
 
     @Deactivate
@@ -97,10 +98,6 @@ public class SlingResourceTemplateResolver implements ITemplateResolver {
         logger.debug("deactivate");
     }
 
-    private void configure(final SlingResourceTemplateResolverConfiguration configuration) {
-        order = configuration.order();
-    }
-
     @Override
     public String getName() {
         return getClass().getName();
@@ -108,7 +105,7 @@ public class SlingResourceTemplateResolver implements ITemplateResolver {
 
     @Override
     public Integer getOrder() {
-        return order;
+        return configuration.order();
     }
 
     @Override
@@ -117,9 +114,12 @@ public class SlingResourceTemplateResolver implements ITemplateResolver {
         final ResourceResolver resourceResolver = (ResourceResolver) context.getVariable(SlingBindings.RESOLVER);
         final Resource resource = resourceResolver.getResource(template);
         final ITemplateResource templateResource = new SlingTemplateResource(resource);
+        final boolean templateResourceExistenceVerified = false;
         final TemplateMode templateMode = templateModeProvider.provideTemplateMode(resource);
         logger.debug("using template mode {} for template '{}'", templateMode, template);
-        return new TemplateResolution(templateResource, templateMode, NonCacheableCacheEntryValidity.INSTANCE);
+        final boolean useDecoupledLogic = configuration.useDecoupledLogic();
+        final ICacheEntryValidity validity = NonCacheableCacheEntryValidity.INSTANCE;
+        return new TemplateResolution(templateResource, templateResourceExistenceVerified, templateMode, useDecoupledLogic, validity);
     }
 
 }
diff --git a/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolverConfiguration.java b/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolverConfiguration.java
index 27d7685..a50e41e 100644
--- a/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolverConfiguration.java
+++ b/src/main/java/org/apache/sling/scripting/thymeleaf/internal/SlingResourceTemplateResolverConfiguration.java
@@ -33,4 +33,10 @@ import org.osgi.service.metatype.annotations.ObjectClassDefinition;
     )
     int order() default 0;
 
+    @AttributeDefinition(
+        name = "use decoupled logic",
+        description = "" // TODO
+    )
+    boolean useDecoupledLogic() default true;
+
 }

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.