Repository: incubator-freemarker
Updated Branches:
  refs/heads/3 863a9d98c -> 0356b30b0


Made TemplateModel classes used by the parser for literals Serializable. 
(Without this attribute values set in the #ftl header wouldn't be always 
Serializable, which in turn will sabotage making Template-s Serializable in the 
future.)


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

Branch: refs/heads/3
Commit: 413c0e124ba141ff7c17e7790e7469de6e386498
Parents: 863a9d9
Author: ddekany <[email protected]>
Authored: Thu Apr 6 23:27:45 2017 +0200
Committer: ddekany <[email protected]>
Committed: Thu Apr 6 23:36:46 2017 +0200

----------------------------------------------------------------------
 src/main/java/org/apache/freemarker/core/ASTExpHashLiteral.java  | 3 ++-
 src/main/java/org/apache/freemarker/core/NativeHashEx2.java      | 3 ++-
 src/main/java/org/apache/freemarker/core/NativeSequence.java     | 3 ++-
 .../org/apache/freemarker/core/model/TemplateBooleanModel.java   | 4 +++-
 .../java/org/apache/freemarker/core/model/impl/SimpleDate.java   | 4 +++-
 5 files changed, 12 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/413c0e12/src/main/java/org/apache/freemarker/core/ASTExpHashLiteral.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/freemarker/core/ASTExpHashLiteral.java 
b/src/main/java/org/apache/freemarker/core/ASTExpHashLiteral.java
index 50f8851..57a5a6e 100644
--- a/src/main/java/org/apache/freemarker/core/ASTExpHashLiteral.java
+++ b/src/main/java/org/apache/freemarker/core/ASTExpHashLiteral.java
@@ -19,6 +19,7 @@
 
 package org.apache.freemarker.core;
 
+import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.LinkedHashMap;
@@ -106,7 +107,7 @@ final class ASTExpHashLiteral extends ASTExpression {
        return new ASTExpHashLiteral(clonedKeys, clonedValues);
     }
 
-    private class SequenceHash implements TemplateHashModelEx2 {
+    private class SequenceHash implements TemplateHashModelEx2, Serializable {
 
         private HashMap<String, TemplateModel> map;
         private TemplateCollectionModel keyCollection, valueCollection; // 
ordered lists of keys and values

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/413c0e12/src/main/java/org/apache/freemarker/core/NativeHashEx2.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/freemarker/core/NativeHashEx2.java 
b/src/main/java/org/apache/freemarker/core/NativeHashEx2.java
index 7290c2f..2850255 100644
--- a/src/main/java/org/apache/freemarker/core/NativeHashEx2.java
+++ b/src/main/java/org/apache/freemarker/core/NativeHashEx2.java
@@ -19,6 +19,7 @@
 
 package org.apache.freemarker.core;
 
+import java.io.Serializable;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
 import java.util.Map;
@@ -36,7 +37,7 @@ import org.apache.freemarker.core.model.impl.SimpleScalar;
  * <p>While this class allows adding items, doing so is not thread-safe, and 
thus only meant to be done during the
  * initialization of the sequence.
  */
-class NativeHashEx2 implements TemplateHashModelEx2 {
+class NativeHashEx2 implements TemplateHashModelEx2, Serializable {
 
     private final LinkedHashMap<String, TemplateModel> map;
 

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/413c0e12/src/main/java/org/apache/freemarker/core/NativeSequence.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/freemarker/core/NativeSequence.java 
b/src/main/java/org/apache/freemarker/core/NativeSequence.java
index c27971a..d1b6886 100644
--- a/src/main/java/org/apache/freemarker/core/NativeSequence.java
+++ b/src/main/java/org/apache/freemarker/core/NativeSequence.java
@@ -19,6 +19,7 @@
 
 package org.apache.freemarker.core;
 
+import java.io.Serializable;
 import java.util.ArrayList;
 import java.util.Collection;
 
@@ -33,7 +34,7 @@ import org.apache.freemarker.core.model.TemplateSequenceModel;
  * <p>While this class allows adding items, doing so is not thread-safe, and 
thus only meant to be done during the
  * initialization of the sequence.
  */
-class NativeSequence implements TemplateSequenceModel {
+class NativeSequence implements TemplateSequenceModel, Serializable {
 
     private final ArrayList<TemplateModel> items;
 

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/413c0e12/src/main/java/org/apache/freemarker/core/model/TemplateBooleanModel.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/freemarker/core/model/TemplateBooleanModel.java 
b/src/main/java/org/apache/freemarker/core/model/TemplateBooleanModel.java
index 381edf5..555e619 100644
--- a/src/main/java/org/apache/freemarker/core/model/TemplateBooleanModel.java
+++ b/src/main/java/org/apache/freemarker/core/model/TemplateBooleanModel.java
@@ -19,6 +19,8 @@
 
 package org.apache.freemarker.core.model;
 
+import java.io.Serializable;
+
 /**
  * "boolean" template language data type; same as in Java; either {@code true} 
or {@code false}.
  * 
@@ -26,7 +28,7 @@ package org.apache.freemarker.core.model;
  * Objects of this type should be immutable, that is, calling {@link 
#getAsBoolean()} should always return the same
  * value as for the first time.
  */
-public interface TemplateBooleanModel extends TemplateModel {
+public interface TemplateBooleanModel extends TemplateModel, Serializable {
 
     /**
      * @return whether to interpret this object as true or false in a boolean 
context

http://git-wip-us.apache.org/repos/asf/incubator-freemarker/blob/413c0e12/src/main/java/org/apache/freemarker/core/model/impl/SimpleDate.java
----------------------------------------------------------------------
diff --git 
a/src/main/java/org/apache/freemarker/core/model/impl/SimpleDate.java 
b/src/main/java/org/apache/freemarker/core/model/impl/SimpleDate.java
index 38190f2..cf6e753 100644
--- a/src/main/java/org/apache/freemarker/core/model/impl/SimpleDate.java
+++ b/src/main/java/org/apache/freemarker/core/model/impl/SimpleDate.java
@@ -19,6 +19,8 @@
 
 package org.apache.freemarker.core.model.impl;
 
+import java.io.Serializable;
+
 import org.apache.freemarker.core.model.TemplateDateModel;
 
 /**
@@ -26,7 +28,7 @@ import org.apache.freemarker.core.model.TemplateDateModel;
  * interface. Note that this class is immutable.
  * <p>This class is thread-safe.
  */
-public class SimpleDate implements TemplateDateModel {
+public class SimpleDate implements TemplateDateModel, Serializable {
     private final java.util.Date date;
     private final int type;
     

Reply via email to