NIHVIVO-1562 Move addition of data model objects to dump template data model into DumpHelper, so done in one place uniformally for all dump directives.

This commit is contained in:
rjy7 2011-03-10 15:20:53 +00:00
parent 5b36920c05
commit daee356424
7 changed files with 18 additions and 36 deletions

View file

@ -82,13 +82,7 @@ public class DescribeDirective extends BaseTemplateDirectiveModel {
map.put("var", varName); map.put("var", varName);
map.put("methods", methodDisplayNames); map.put("methods", methodDisplayNames);
try { helper.writeDump("describe.ftl", map, varName, dataModel);
map.put("stylesheets", dataModel.get("stylesheets"));
} catch (TemplateModelException e) {
log.error("Error getting value of stylesheets variable from data model.");
}
helper.writeDump("describe.ftl", map, varName);
} }
@Override @Override

View file

@ -73,13 +73,7 @@ public class DumpAllDirective extends BaseTemplateDirectiveModel {
map.put("methods", methods); map.put("methods", methods);
map.put("containingTemplate", env.getTemplate().getName()); map.put("containingTemplate", env.getTemplate().getName());
try { helper.writeDump("dumpAll.ftl", map, "template data model", dataModel);
map.put("stylesheets", dataModel.get("stylesheets"));
} catch (TemplateModelException e) {
log.error("Error getting value of stylesheets variable from data model.");
}
helper.writeDump("dumpAll.ftl", map, "template data model");
} }

View file

@ -50,14 +50,7 @@ public class DumpDirective extends BaseTemplateDirectiveModel {
Map<String, Object> map = new HashMap<String, Object>(); Map<String, Object> map = new HashMap<String, Object>();
map.put("var", helper.getVariableDump(var)); map.put("var", helper.getVariableDump(var));
TemplateHashModel dataModel = env.getDataModel(); helper.writeDump("dump.ftl", map, var, env.getDataModel());
try {
map.put("stylesheets", dataModel.get("stylesheets"));
} catch (TemplateModelException e) {
log.error("Error getting value of stylesheets variable from data model.");
}
helper.writeDump("dump.ftl", map, var);
} }
@Override @Override

View file

@ -125,7 +125,17 @@ public class DumpHelper {
return map; return map;
} }
public void writeDump(String templateName, Map<String, Object> map, String modelName) { public void writeDump(String templateName, Map<String, Object> map, String modelName, TemplateHashModel dataModel) {
// Add objects to data model of calling template that are needed by
// dump templates.
try {
map.put("stylesheets", dataModel.get("stylesheets"));
map.put("urls", dataModel.get("urls"));
} catch (TemplateModelException e) {
log.error("Error getting values from data model.");
}
String output = BaseTemplateDirectiveModel.processTemplateToString(templateName, map, env); String output = BaseTemplateDirectiveModel.processTemplateToString(templateName, map, env);
Writer out = env.getOut(); Writer out = env.getOut();
try { try {

View file

@ -79,14 +79,8 @@ public class HelpDirective extends BaseTemplateDirectiveModel {
map.put("help", help); map.put("help", help);
map.put("type", type); map.put("type", type);
try {
map.put("stylesheets", dataModel.get("stylesheets"));
} catch (TemplateModelException e) {
log.error("Error getting value of stylesheets variable from data model.");
}
DumpHelper helper = new DumpHelper(env); DumpHelper helper = new DumpHelper(env);
helper.writeDump("help.ftl", map, name); helper.writeDump("help.ftl", map, name, dataModel);
} }

View file

@ -8,6 +8,5 @@
${var} ${var}
</div> </div>
<#if stylesheets??>
${stylesheets.add('<link rel="stylesheet" href="${urls.base}/css/dump.css" />')} ${stylesheets.add('<link rel="stylesheet" href="${urls.base}/css/dump.css" />')}
</#if>

View file

@ -33,6 +33,4 @@
</div> </div>
<#if stylesheets??>
${stylesheets.add('<link rel="stylesheet" href="${urls.base}/css/dump.css" />')} ${stylesheets.add('<link rel="stylesheet" href="${urls.base}/css/dump.css" />')}
</#if>