private VelocityGeneratorLibrary library;\r
private static LoggerWrapper logger = new LoggerWrapper("Generator.velocity");\r
\r
+ /**\r
+ *\r
+ * @param aTemplate\r
+ * @param aLibrary\r
+ */\r
+\r
public VelocityGenerator(String aTemplate, VelocityGeneratorLibrary aLibrary) {\r
templateIdentifier = aTemplate;\r
library = aLibrary;\r
}\r
\r
+ /**\r
+ *\r
+ * @param anOutputWriter\r
+ * @param aValues\r
+ * @param aLogger\r
+ * @throws GeneratorExc\r
+ * @throws GeneratorFailure\r
+ */\r
public void generate(Object anOutputWriter, Map aValues, LoggerWrapper aLogger) throws GeneratorExc, GeneratorFailure {\r
Template template;\r
Context context = makeMapAdapter(aValues);\r
\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private static class ContextAdapter implements Context {\r
public boolean containsKey(java.lang.Object key) {\r
return false;\r
}\r
}\r
\r
+ /**\r
+ *\r
+ * @param aMap\r
+ * @return\r
+ */\r
private static Context makeMapAdapter(Map aMap) {\r
return new MapAdapter(aMap);\r
}\r
\r
+ /**\r
+ *\r
+ * @param anIterator\r
+ * @return\r
+ */\r
private static List makeIteratorAdapter(Iterator anIterator) {\r
return new IteratorAdapter(anIterator);\r
}\r
\r
+ /**\r
+ *\r
+ * @param aList\r
+ * @return\r
+ */\r
private static List makeListAdapter(List aList) {\r
return new ListAdapter(aList);\r
}\r
\r
-\r
+ /**\r
+ *\r
+ * @param aFunction\r
+ * @return\r
+ */\r
private static Object makeFunctionAdapter(Generator.GeneratorFunction aFunction) {\r
return new FunctionAdapter(aFunction);\r
}\r
\r
+ /**\r
+ *\r
+ * @param anObject\r
+ * @return\r
+ */\r
private static Object makeBeanAdapter(Object anObject) {\r
return new BeanAdapter(anObject);\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private interface VelocityAdapter {\r
public Object getOriginal();\r
}\r
\r
+ /**\r
+ *\r
+ * @param anObject\r
+ * @return\r
+ */\r
public static Object unmakeAdapter(Object anObject) {\r
if (anObject instanceof VelocityAdapter) {\r
return ((VelocityAdapter) anObject).getOriginal();\r
return anObject;\r
}\r
\r
+ /**\r
+ *\r
+ * @param anObject\r
+ * @return\r
+ */\r
public static Object makeAdapter(Object anObject) {\r
if (anObject == null)\r
return null;\r
return makeBeanAdapter(anObject);\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
public static class FunctionAdapter implements VelocityAdapter {\r
private GeneratorFunction function;\r
\r
}\r
\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private static class MapAdapter implements Context, VelocityAdapter {\r
private Map map;\r
private Map valuesCache;\r
}\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private static class IteratorAdapter extends AbstractList implements VelocityAdapter {\r
private Iterator iterator;\r
private List valuesCache;\r
\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private static class ListAdapter extends AbstractList implements VelocityAdapter {\r
private List list;\r
private List valuesCache;\r
\r
}\r
\r
-/*\r
- private static class FunctionAdapter implements TemplateMethodModel {\r
- private Generator.GeneratorFunction function;\r
-\r
- public FunctionAdapter(Generator.GeneratorFunction aFunction) {\r
- function = aFunction;\r
- }\r
-\r
- public TemplateModel exec(List anArguments) throws TemplateModelException {\r
- try {\r
- return makeAdapter(function.perform(anArguments));\r
- }\r
- catch (Throwable t) {\r
- throw new TemplateModelException(t.getMessage());\r
- }\r
- }\r
-\r
- public boolean isEmpty() {\r
- return false;\r
- }\r
-\r
- }\r
-\r
-*/\r
-\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private static class BeanAdapter implements Context, VelocityAdapter {\r
private Object object;\r
\r
}\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
private static class VelocityLoggerWrapper implements LogSystem {\r
private LoggerWrapper logger;\r
\r
}\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
public static class VelocityGeneratorLibrary implements GeneratorLibrary {\r
private VelocityEngine engine;\r
\r
logger.error(VelocityEngine.RUNTIME_LOG_LOGSYSTEM);\r
\r
}\r
-/* try {\r
- engine.setProperty(VelocityEngine.RUNTIME_LOG_LOGSYSTEM_CLASS, null);\r
- }\r
- catch (Throwable t) {\r
- logger.error(VelocityEngine.RUNTIME_LOG_LOGSYSTEM_CLASS);\r
-\r
- }\r
-*/\r
-\r
engine.init();\r
}\r
catch (Throwable t) {\r
}\r
}\r
\r
+ /**\r
+ *\r
+ * <p>Title: </p>\r
+ * <p>Description: </p>\r
+ * <p>Copyright: Copyright (c) 2003</p>\r
+ * <p>Company: </p>\r
+ * @author not attributable\r
+ * @version 1.0\r
+ */\r
public static class VelocityGeneratorLibraryFactory implements GeneratorLibraryFactory {\r
private String basePath;\r
\r