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 2014/06/12 11:35:14 UTC
svn commit: r1602107 - in /sling/trunk/contrib/scripting/thymeleaf: README.md
src/main/java/org/apache/sling/scripting/thymeleaf/ThymeleafScriptEngineFactory.java
src/main/java/org/apache/sling/scripting/thymeleaf/impl/NonCachingTemplateResolver.java
Author: olli
Date: Thu Jun 12 09:35:13 2014
New Revision: 1602107
URL: http://svn.apache.org/r1602107
Log:
SLING-3649 make encoding for reading templates configurable
Modified:
sling/trunk/contrib/scripting/thymeleaf/README.md
sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/ThymeleafScriptEngineFactory.java
sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/impl/NonCachingTemplateResolver.java
Modified: sling/trunk/contrib/scripting/thymeleaf/README.md
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/scripting/thymeleaf/README.md?rev=1602107&r1=1602106&r2=1602107&view=diff
==============================================================================
--- sling/trunk/contrib/scripting/thymeleaf/README.md (original)
+++ sling/trunk/contrib/scripting/thymeleaf/README.md Thu Jun 12 09:35:13 2014
@@ -12,4 +12,3 @@ Features
* out of the box support for _legacy_ HTML5 through embedded _NekoHTML_
* runtime configurable `TemplateModeHandler`s for _XML_, _VALIDXML_, _XHTML_, _VALIDXHTML_, _HTML5_ and _LEGACYHTML5_
* `MessageResolver` backed by `ResourceBundleProvider` from `org.apache.sling.i18n`
-* uses `UTF-8` charset for reading templates
Modified: sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/ThymeleafScriptEngineFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/ThymeleafScriptEngineFactory.java?rev=1602107&r1=1602106&r2=1602107&view=diff
==============================================================================
--- sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/ThymeleafScriptEngineFactory.java (original)
+++ sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/ThymeleafScriptEngineFactory.java Thu Jun 12 09:35:13 2014
@@ -82,8 +82,6 @@ public class ThymeleafScriptEngineFactor
@Property(value = {DEFAULT_NAME}, unbounded = PropertyUnbounded.ARRAY)
public static final String NAMES_PARAMETER = "org.apache.sling.scripting.thymeleaf.names";
- public static final String TEMPLATE_CHARSET = "UTF-8";
-
private final Logger logger = LoggerFactory.getLogger(ThymeleafScriptEngineFactory.class);
public ThymeleafScriptEngineFactory() {
Modified: sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/impl/NonCachingTemplateResolver.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/impl/NonCachingTemplateResolver.java?rev=1602107&r1=1602106&r2=1602107&view=diff
==============================================================================
--- sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/impl/NonCachingTemplateResolver.java (original)
+++ sling/trunk/contrib/scripting/thymeleaf/src/main/java/org/apache/sling/scripting/thymeleaf/impl/NonCachingTemplateResolver.java Thu Jun 12 09:35:13 2014
@@ -34,7 +34,6 @@ import org.apache.felix.scr.annotations.
import org.apache.felix.scr.annotations.Service;
import org.apache.sling.commons.osgi.PropertiesUtil;
import org.apache.sling.scripting.thymeleaf.SlingTemplateModeHandler;
-import org.apache.sling.scripting.thymeleaf.ThymeleafScriptEngineFactory;
import org.osgi.framework.Constants;
import org.osgi.service.component.ComponentContext;
import org.slf4j.Logger;
@@ -72,6 +71,13 @@ public class NonCachingTemplateResolver
@Property(intValue = DEFAULT_ORDER)
public static final String ORDER_PARAMETER = "org.apache.sling.scripting.thymeleaf.impl.NonCachingTemplateResolver.order";
+ private String encoding;
+
+ public static final String DEFAULT_ENCODING = "UTF-8";
+
+ @Property(value = DEFAULT_ENCODING)
+ public static final String ENCODING_PARAMETER = "org.apache.sling.scripting.thymeleaf.impl.NonCachingTemplateResolver.encoding";
+
private final Logger logger = LoggerFactory.getLogger(NonCachingTemplateResolver.class);
public NonCachingTemplateResolver() {
@@ -107,6 +113,7 @@ public class NonCachingTemplateResolver
private synchronized void configure(final ComponentContext componentContext) {
final Dictionary properties = componentContext.getProperties();
order = PropertiesUtil.toInteger(properties.get(ORDER_PARAMETER), DEFAULT_ORDER);
+ encoding = PropertiesUtil.toString(properties.get(ENCODING_PARAMETER), DEFAULT_ENCODING);
}
@Override
@@ -123,7 +130,7 @@ public class NonCachingTemplateResolver
public TemplateResolution resolveTemplate(TemplateProcessingParameters templateProcessingParameters) {
final String templateName = templateProcessingParameters.getTemplateName();
final String resourceName = templateName; // TODO
- final String characterEncoding = ThymeleafScriptEngineFactory.TEMPLATE_CHARSET;
+ final String characterEncoding = encoding;
final String templateMode = computeTemplateMode(templateName);
final ITemplateResolutionValidity validity = new NonCacheableTemplateResolutionValidity();
return new TemplateResolution(templateName, resourceName, resourceResolver, characterEncoding, templateMode, validity);