Repository: incubator-freemarker
Updated Branches:
  refs/heads/3 05f297590 -> 5799df34e


TemplateClassResolver.UNRESTRICTED_RESOLVER and ALLOWS_NOTHING_RESOLVER was 
renamed to UNRESTRICTED and ALLOW_NOTHING. Also the String setting name 
"allows_nothing" and "allowsNothing" were renamed to "allow_nothing" and 
"allowNothing".


Project: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/incubator-freemarker/commit/6fa23374
Tree: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/tree/6fa23374
Diff: http://git-wip-us.apache.org/repos/asf/incubator-freemarker/diff/6fa23374

Branch: refs/heads/3
Commit: 6fa23374a62cb55c9241bf16a8b7a6e99cd6ae71
Parents: 05f2975
Author: ddekany <[email protected]>
Authored: Tue Jun 13 14:02:06 2017 +0200
Committer: ddekany <[email protected]>
Committed: Tue Jun 13 14:02:06 2017 +0200

----------------------------------------------------------------------
 FM3-CHANGE-LOG.txt                              |  5 ++++-
 .../core/ObjectBuilderSettingsTest.java         |  4 ++--
 .../core/TemplateConfigurationTest.java         |  2 +-
 .../freemarker/core/templatesuite/testcases.xml |  2 +-
 .../apache/freemarker/core/Configuration.java   |  2 +-
 .../core/MutableProcessingConfiguration.java    | 20 +++++++++++++-------
 .../core/ProcessingConfiguration.java           |  4 ++--
 .../freemarker/core/TemplateClassResolver.java  |  4 ++--
 .../core/util/OptInTemplateClassResolver.java   |  4 ++--
 9 files changed, 28 insertions(+), 19 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/FM3-CHANGE-LOG.txt
----------------------------------------------------------------------
diff --git a/FM3-CHANGE-LOG.txt b/FM3-CHANGE-LOG.txt
index a63f5ef..dbba17c 100644
--- a/FM3-CHANGE-LOG.txt
+++ b/FM3-CHANGE-LOG.txt
@@ -275,4 +275,7 @@ the FreeMarer 3 changelog here:
     DefaultTemplateNameFormat24 was renamed to DefaultTemplateNameFormat.
 - Removed the logTemplateExceptions (log_template_exceptions) setting. 
FreeMarker now
   behaves as if it was false. When a FreeMarker method throws an exception, the
-  caller is responsible for either logging it or letting it bubble up.
\ No newline at end of file
+  caller is responsible for either logging it or letting it bubble up.
+- TemplateClassResolver.UNRESTRICTED_RESOLVER and ALLOWS_NOTHING_RESOLVER was 
renamed
+  to UNRESTRICTED and ALLOW_NOTHING. Also the String setting name 
"allows_nothing" and
+  "allowsNothing" were renamed to "allow_nothing" and "allowNothing".
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core-test/src/test/java/org/apache/freemarker/core/ObjectBuilderSettingsTest.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core-test/src/test/java/org/apache/freemarker/core/ObjectBuilderSettingsTest.java
 
b/freemarker-core-test/src/test/java/org/apache/freemarker/core/ObjectBuilderSettingsTest.java
index 2f2d307..a618aa2 100644
--- 
a/freemarker-core-test/src/test/java/org/apache/freemarker/core/ObjectBuilderSettingsTest.java
+++ 
b/freemarker-core-test/src/test/java/org/apache/freemarker/core/ObjectBuilderSettingsTest.java
@@ -395,7 +395,7 @@ public class ObjectBuilderSettingsTest {
             
props.setProperty(Configuration.ExtendableBuilder.TEMPLATE_CACHE_STORAGE_KEY,
                     "soft: 500, strong: 100");
             
props.setProperty(MutableProcessingConfiguration.NEW_BUILTIN_CLASS_RESOLVER_KEY,
-                    "allows_nothing");
+                    "allow_nothing");
             cfgB.setSettings(props);
             assertEquals(DefaultObjectWrapper.class, 
cfgB.getObjectWrapper().getClass());
             assertEquals(1, ((DummyArithmeticEngine) 
cfgB.getArithmeticEngine()).getX());
@@ -403,7 +403,7 @@ public class ObjectBuilderSettingsTest {
             assertEquals(Configuration.VERSION_3_0_0,
                     ((DefaultObjectWrapper) 
cfgB.getObjectWrapper()).getIncompatibleImprovements());
             assertEquals(500, ((MruCacheStorage) 
cfgB.getTemplateCacheStorage()).getSoftSizeLimit());
-            assertEquals(TemplateClassResolver.ALLOWS_NOTHING_RESOLVER, 
cfgB.getNewBuiltinClassResolver());
+            assertEquals(TemplateClassResolver.ALLOW_NOTHING, 
cfgB.getNewBuiltinClassResolver());
             assertEquals(StandardCharsets.UTF_8, cfgB.getSourceEncoding());
         }
 

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core-test/src/test/java/org/apache/freemarker/core/TemplateConfigurationTest.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core-test/src/test/java/org/apache/freemarker/core/TemplateConfigurationTest.java
 
b/freemarker-core-test/src/test/java/org/apache/freemarker/core/TemplateConfigurationTest.java
index 47002d8..de5a44e 100644
--- 
a/freemarker-core-test/src/test/java/org/apache/freemarker/core/TemplateConfigurationTest.java
+++ 
b/freemarker-core-test/src/test/java/org/apache/freemarker/core/TemplateConfigurationTest.java
@@ -160,7 +160,7 @@ public class TemplateConfigurationTest {
         SETTING_ASSIGNMENTS.put("dateFormat", "yyyy-#DDD");
         SETTING_ASSIGNMENTS.put("dateTimeFormat", "yyyy-#DDD-@HH:mm");
         SETTING_ASSIGNMENTS.put("locale", NON_DEFAULT_LOCALE);
-        SETTING_ASSIGNMENTS.put("newBuiltinClassResolver", 
TemplateClassResolver.ALLOWS_NOTHING_RESOLVER);
+        SETTING_ASSIGNMENTS.put("newBuiltinClassResolver", 
TemplateClassResolver.ALLOW_NOTHING);
         SETTING_ASSIGNMENTS.put("numberFormat", "0.0000");
         SETTING_ASSIGNMENTS.put("objectWrapper",
                 new 
RestrictedObjectWrapper.Builder(Configuration.VERSION_3_0_0).build());

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/testcases.xml
----------------------------------------------------------------------
diff --git 
a/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/testcases.xml
 
b/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/testcases.xml
index 159266b..958ff0e 100644
--- 
a/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/testcases.xml
+++ 
b/freemarker-core-test/src/test/resources/org/apache/freemarker/core/templatesuite/testcases.xml
@@ -177,7 +177,7 @@ Note that for the incompatible_improvements setting you can 
specify a list of ve
       <setting new_builtin_class_resolver="unrestricted"/>
    </testCase>   
    <testCase name="new-allowsnothing" template="new-defaultresolver.ftl">
-      <setting new_builtin_class_resolver="allows_nothing"/>
+      <setting new_builtin_class_resolver="allow_nothing"/>
    </testCase>   
    <testCase name="new-optin">
       <setting new_builtin_class_resolver="

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core/src/main/java/org/apache/freemarker/core/Configuration.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core/src/main/java/org/apache/freemarker/core/Configuration.java 
b/freemarker-core/src/main/java/org/apache/freemarker/core/Configuration.java
index 3ae0567..721acb5 100644
--- 
a/freemarker-core/src/main/java/org/apache/freemarker/core/Configuration.java
+++ 
b/freemarker-core/src/main/java/org/apache/freemarker/core/Configuration.java
@@ -2739,7 +2739,7 @@ public final class Configuration implements 
TopLevelConfiguration, CustomStateSc
 
         @Override
         protected TemplateClassResolver getDefaultNewBuiltinClassResolver() {
-            return TemplateClassResolver.UNRESTRICTED_RESOLVER;
+            return TemplateClassResolver.UNRESTRICTED;
         }
 
         @Override

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core/src/main/java/org/apache/freemarker/core/MutableProcessingConfiguration.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core/src/main/java/org/apache/freemarker/core/MutableProcessingConfiguration.java
 
b/freemarker-core/src/main/java/org/apache/freemarker/core/MutableProcessingConfiguration.java
index 97f0e2c..3324a78 100644
--- 
a/freemarker-core/src/main/java/org/apache/freemarker/core/MutableProcessingConfiguration.java
+++ 
b/freemarker-core/src/main/java/org/apache/freemarker/core/MutableProcessingConfiguration.java
@@ -1490,9 +1490,9 @@ public abstract class 
MutableProcessingConfiguration<SelfT extends MutableProces
      *       The value must be one of these (ignore the quotation marks):
      *       <ol>
      *         <li><p>{@code "unrestricted"}:
-     *             Use {@link TemplateClassResolver#UNRESTRICTED_RESOLVER}
-     *         <li><p>{@code "allows_nothing"}:
-     *             Use {@link TemplateClassResolver#ALLOWS_NOTHING_RESOLVER}
+     *             Use {@link TemplateClassResolver#UNRESTRICTED}
+     *         <li><p>{@code "allow_nothing"}:
+     *             Use {@link TemplateClassResolver#ALLOW_NOTHING}
      *         <li><p>Something that contains colon will use
      *             {@link OptInTemplateClassResolver} and is expected to
      *             store comma separated values (possibly quoted) segmented
@@ -1515,7 +1515,7 @@ public abstract class 
MutableProcessingConfiguration<SelfT extends MutableProces
      *                   {@code lib/foo/bar.ftl}) and template {@code safe.ftl}
      *                   (that does not match {@code foo/safe.ftl}, only
      *                   exactly {@code safe.ftl}) to instantiate anything
-     *                   that {@link 
TemplateClassResolver#UNRESTRICTED_RESOLVER} allows.
+     *                   that {@link TemplateClassResolver#UNRESTRICTED} 
allows.
      *               <tr>
      *                 <td>
      *                   {@code allowed_classes: com.example.C1, 
com.example.C2}
@@ -1850,9 +1850,9 @@ public abstract class 
MutableProcessingConfiguration<SelfT extends MutableProces
             } else if (NEW_BUILTIN_CLASS_RESOLVER_KEY_SNAKE_CASE.equals(name)
                     || NEW_BUILTIN_CLASS_RESOLVER_KEY_CAMEL_CASE.equals(name)) 
{
                 if ("unrestricted".equals(value)) {
-                    
setNewBuiltinClassResolver(TemplateClassResolver.UNRESTRICTED_RESOLVER);
-                } else if ("allows_nothing".equals(value) || 
"allowsNothing".equals(value)) {
-                    
setNewBuiltinClassResolver(TemplateClassResolver.ALLOWS_NOTHING_RESOLVER);
+                    
setNewBuiltinClassResolver(TemplateClassResolver.UNRESTRICTED);
+                } else if ("allow_nothing".equals(value) || 
"allowNothing".equals(value)) {
+                    
setNewBuiltinClassResolver(TemplateClassResolver.ALLOW_NOTHING);
                 } else if (value.indexOf(":") != -1) {
                     List<_KeyValuePair<String, List<String>>> segments = 
parseAsSegmentedList(value);
                     Set allowedClasses = null;
@@ -1873,6 +1873,12 @@ public abstract class 
MutableProcessingConfiguration<SelfT extends MutableProces
                     }
                     setNewBuiltinClassResolver(
                             new OptInTemplateClassResolver(allowedClasses, 
trustedTemplates));
+                } else if ("allows_nothing".equals(value)) {
+                    throw new InvalidSettingValueException(
+                            name, value, "The correct value would be: 
allow_nothing");
+                } else if ("allowsNothing".equals(value)) {
+                    throw new InvalidSettingValueException(
+                            name, value, "The correct value would be: 
allowNothing");
                 } else if (value.indexOf('.') != -1) {
                     setNewBuiltinClassResolver((TemplateClassResolver) 
_ObjectBuilderSettingEvaluator.eval(
                                     value, TemplateClassResolver.class, false,

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core/src/main/java/org/apache/freemarker/core/ProcessingConfiguration.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core/src/main/java/org/apache/freemarker/core/ProcessingConfiguration.java
 
b/freemarker-core/src/main/java/org/apache/freemarker/core/ProcessingConfiguration.java
index f600643..030511d 100644
--- 
a/freemarker-core/src/main/java/org/apache/freemarker/core/ProcessingConfiguration.java
+++ 
b/freemarker-core/src/main/java/org/apache/freemarker/core/ProcessingConfiguration.java
@@ -477,8 +477,8 @@ public interface ProcessingConfiguration {
      * The {@link TemplateClassResolver} that is used when the 
<code>new</code> built-in is called in a template. That
      * is, when a template contains the 
<code>"com.example.SomeClassName"?new</code> expression, this object will be
      * called to resolve the <code>"com.example.SomeClassName"</code> string 
to a class. The default value is {@link
-     * TemplateClassResolver#UNRESTRICTED_RESOLVER}. If you allow users to 
upload templates, it's important to use a
-     * custom restrictive {@link TemplateClassResolver} or {@link 
TemplateClassResolver#ALLOWS_NOTHING_RESOLVER}.
+     * TemplateClassResolver#UNRESTRICTED}. If you allow users to upload 
templates, it's important to use a
+     * custom restrictive {@link TemplateClassResolver} or {@link 
TemplateClassResolver#ALLOW_NOTHING}.
      */
     TemplateClassResolver getNewBuiltinClassResolver();
 

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core/src/main/java/org/apache/freemarker/core/TemplateClassResolver.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core/src/main/java/org/apache/freemarker/core/TemplateClassResolver.java
 
b/freemarker-core/src/main/java/org/apache/freemarker/core/TemplateClassResolver.java
index c6146d5..415c66c 100644
--- 
a/freemarker-core/src/main/java/org/apache/freemarker/core/TemplateClassResolver.java
+++ 
b/freemarker-core/src/main/java/org/apache/freemarker/core/TemplateClassResolver.java
@@ -36,7 +36,7 @@ public interface TemplateClassResolver {
     /**
      * Simply calls {@link _ClassUtil#forName(String)}.
      */
-    TemplateClassResolver UNRESTRICTED_RESOLVER = new TemplateClassResolver() {
+    TemplateClassResolver UNRESTRICTED = new TemplateClassResolver() {
 
         @Override
         public Class resolve(String className, Environment env, Template 
template)
@@ -53,7 +53,7 @@ public interface TemplateClassResolver {
     /**
      * Doesn't allow resolving any classes.
      */
-    TemplateClassResolver ALLOWS_NOTHING_RESOLVER =  new 
TemplateClassResolver() {
+    TemplateClassResolver ALLOW_NOTHING =  new TemplateClassResolver() {
 
         @Override
         public Class resolve(String className, Environment env, Template 
template)

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/6fa23374/freemarker-core/src/main/java/org/apache/freemarker/core/util/OptInTemplateClassResolver.java
----------------------------------------------------------------------
diff --git 
a/freemarker-core/src/main/java/org/apache/freemarker/core/util/OptInTemplateClassResolver.java
 
b/freemarker-core/src/main/java/org/apache/freemarker/core/util/OptInTemplateClassResolver.java
index e1edfcb..faf8e73 100644
--- 
a/freemarker-core/src/main/java/org/apache/freemarker/core/util/OptInTemplateClassResolver.java
+++ 
b/freemarker-core/src/main/java/org/apache/freemarker/core/util/OptInTemplateClassResolver.java
@@ -52,7 +52,7 @@ public class OptInTemplateClassResolver implements 
TemplateClassResolver {
      * @param trustedTemplates the {@link List} of {@link String}-s that 
contains
      *     template names (i.e., template root directory relative paths)
      *     and prefix patterns (like <code>"include/*"</code>) of templates
-     *     for which {@link TemplateClassResolver#UNRESTRICTED_RESOLVER} will 
be 
+     *     for which {@link TemplateClassResolver#UNRESTRICTED} will be
      *     used (which is not as safe as {@link OptInTemplateClassResolver}).
      *     The list items need not start with <code>"/"</code> (if they are, it
      *     will be removed). List items ending with <code>"*"</code> are 
treated
@@ -98,7 +98,7 @@ public class OptInTemplateClassResolver implements 
TemplateClassResolver {
         if (templateName != null
                 && (trustedTemplateNames.contains(templateName)
                         || hasMatchingPrefix(templateName))) {
-            return 
TemplateClassResolver.UNRESTRICTED_RESOLVER.resolve(className, env, template);
+            return TemplateClassResolver.UNRESTRICTED.resolve(className, env, 
template);
         } else {
             if (!allowedClasses.contains(className)) {
                 throw new _MiscTemplateException(env,

Reply via email to