X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=source%2Fmir%2Fgenerator%2FFreemarkerGenerator.java;h=c0ebb764cf7e6c0a77ea73c63c22a85696c79f5b;hb=29da699109ce8842d02b60abcdb0dfdc4aa4f0db;hp=fa121c7597a518ea7c834ddca32c34a3c2d48126;hpb=5a9e646591ea143c885f34e86ef82a2883013a20;p=mir.git diff --git a/source/mir/generator/FreemarkerGenerator.java b/source/mir/generator/FreemarkerGenerator.java index fa121c75..c0ebb764 100755 --- a/source/mir/generator/FreemarkerGenerator.java +++ b/source/mir/generator/FreemarkerGenerator.java @@ -30,6 +30,7 @@ package mir.generator; import java.io.PrintWriter; +import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.util.List; @@ -37,9 +38,11 @@ import java.util.Map; import java.util.Vector; import mir.log.LoggerWrapper; -import mir.util.*; +import mir.util.GeneratorFormatAdapters; +import mir.util.RewindableIterator; -import org.apache.commons.beanutils.*; +import org.apache.commons.beanutils.MethodUtils; +import org.apache.commons.beanutils.PropertyUtils; import freemarker.template.FileTemplateCache; import freemarker.template.SimpleScalar; @@ -121,6 +124,8 @@ public class FreemarkerGenerator implements Generator { return makeIteratorAdapter(((List) anObject).iterator()); else if (anObject instanceof Number) return makeAdapter(new GeneratorFormatAdapters.NumberFormatAdapter((Number) anObject)); + else if (anObject instanceof Date) + return makeAdapter(new GeneratorFormatAdapters.DateFormatAdapter((Date) anObject)); else return makeBeanAdapter(anObject); } @@ -139,7 +144,6 @@ public class FreemarkerGenerator implements Generator { } public void remove(String aKey) { - // ML: kinda tricky... } public boolean isEmpty() { @@ -360,7 +364,7 @@ public class FreemarkerGenerator implements Generator { Template template = (Template) templateCache.getItem(anIdentifier, "template"); if (template==null) { - throw new GeneratorExc("FreemarkerGeneratorLibrary: Can't find template "+templateCache.getDirectory()+anIdentifier); + throw new GeneratorExc("FreemarkerGeneratorLibrary: Can't find template "+templateCache.getDirectory()+"/"+anIdentifier); } return new FreemarkerGenerator(template);