@Override public TemplateModel get(String key) throws TemplateModelException { if ("currentNamespace".equals(key)) { return ((Environment) configurable).getCurrentNamespace(); } if ("dataModel".equals(key)) { return ((Environment) configurable).getDataModel(); } if ("globalNamespace".equals(key)) { return ((Environment) configurable).getGlobalNamespace(); } if ("knownVariables".equals(key)) { return knownVariables; } if ("mainNamespace".equals(key)) { return ((Environment) configurable).getMainNamespace(); } if ("template".equals(key)) { try { return (TemplateModel) getCachedWrapperFor(((Environment) configurable).getTemplate()); } catch (RemoteException e) { throw new TemplateModelException(e); } } return super.get(key); } }
return env.getDataModel();
private Map<String,Object> getCommonValues(Environment env, ServletContext context){ Map<String,Object> values = new HashMap<String,Object>(); //values.putAll(VitroFreemarkerConfiguration.getDirectives()); try { values.put("urls",env.getDataModel().get("urls")); values.put("currentServlet", env.getDataModel().get("currentServlet")); } catch (TemplateModelException e) { // TODO Auto-generated catch block e.printStackTrace(); } return values; }
protected void writeDump(Map<String, Object> map, Environment env, String templateName) throws TemplateException, IOException { //bdc34: not sure what to do there to //get the scope from the env to this dump template, trying an ugly copy map.putAll( toMap( env.getDataModel() )); Template template = env.getConfiguration().getTemplate(templateName); StringWriter sw = new StringWriter(); template.process(map, sw); Writer out = env.getOut(); out.write(sw.toString()); }
SortedMap<String, Object> getDataModelDump(Environment env) throws TemplateModelException { SortedMap<String, Object> dump = new TreeMap<String, Object>(); TemplateHashModel dataModel = env.getDataModel(); // Need to unwrap in order to iterate through the variables @SuppressWarnings("unchecked") Map<String, Object> unwrappedDataModel = (Map<String, Object>) DeepUnwrap.permissiveUnwrap(dataModel); List<String> varNames = new ArrayList<String>(unwrappedDataModel.keySet()); for (String varName : varNames) { dump.putAll(getTemplateVariableDump(varName, dataModel.get(varName))); } return dump; }
public void execute(Environment environment, Map params, TemplateModel[] templateModels, TemplateDirectiveBody templateDirectiveBody) throws TemplateException, IOException { Writer writer = environment.getOut(); BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model<?> model = (Model<?>) modelBeanModel.getWrappedObject(); Map<String, String> namespaces = model.getNamespacePrefixMappings();
protected String getObjectId(Environment environment){ try { TemplateHashModel model = environment.getDataModel(); return ((SimpleScalar) model.get("id")).getAsString(); } catch (TemplateModelException e) { e.printStackTrace(); return null; } }
public String doAssets(Environment env, Map params) { String widgetName = params.get("name").toString(); //getWidgetName(); Macro assetsMacro = getMacroFromTemplate(getAssetsMacroName(), widgetName, env); // Allow there to be no assets macro in the template if (assetsMacro == null) { return ""; } TemplateHashModel dataModel = env.getDataModel(); Map<String, Object> map = new HashMap<String, Object>(); try { // Once we remove portals, we can define these as Configuration shared variables. Then the // templates will automatically get these and we don't have to add them to the data model. map.put("stylesheets", dataModel.get("stylesheets")); map.put("scripts", dataModel.get("scripts")); map.put("headScripts", dataModel.get("headScripts")); map.put("metaTags", new Tags().wrap()); map.put("urls", dataModel.get("urls")); } catch (TemplateModelException e) { log.error("Error getting asset values from data model."); } return processMacroToString(env, widgetName, assetsMacro, map); }
@Override public TemplateModel get(String key) throws TemplateModelException { if ("currentNamespace".equals(key)) { return ((Environment) configurable).getCurrentNamespace(); } if ("dataModel".equals(key)) { return ((Environment) configurable).getDataModel(); } if ("globalNamespace".equals(key)) { return ((Environment) configurable).getGlobalNamespace(); } if ("knownVariables".equals(key)) { return knownVariables; } if ("mainNamespace".equals(key)) { return ((Environment) configurable).getMainNamespace(); } if ("template".equals(key)) { try { return (TemplateModel) getCachedWrapperFor(((Environment) configurable).getTemplate()); } catch (RemoteException e) { throw new TemplateModelException(e); } } return super.get(key); } }
@Override public TemplateModel get(String key) throws TemplateModelException { if ("currentNamespace".equals(key)) { return ((Environment) configurable).getCurrentNamespace(); } if ("dataModel".equals(key)) { return ((Environment) configurable).getDataModel(); } if ("globalNamespace".equals(key)) { return ((Environment) configurable).getGlobalNamespace(); } if ("knownVariables".equals(key)) { return knownVariables; } if ("mainNamespace".equals(key)) { return ((Environment) configurable).getMainNamespace(); } if ("template".equals(key)) { try { return (TemplateModel) getCachedWrapperFor(((Environment) configurable).getTemplate()); } catch (RemoteException e) { throw new TemplateModelException(e); } } return super.get(key); } }
public void execute(Environment environment, Map params, TemplateModel[] templateModels, TemplateDirectiveBody templateDirectiveBody) throws TemplateException, IOException { Object bean = getBeanObject(environment, params, "writePreText"); BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean); if(beanMetadata != null && beanMetadata.getPreText() != null) { String preText = beanMetadata.getPreText().trim(); if(preText.length() > 0) { environment.getOut().write(trimPretext(beanMetadata.getPreText())); } } }
public void execute(Environment environment, Map params, TemplateModel[] templateModels, TemplateDirectiveBody templateDirectiveBody) throws TemplateException, IOException { Object bean = getBeanObject(environment, params, "writePreText"); BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean); if(beanMetadata != null && beanMetadata.getPreText() != null) { String preText = beanMetadata.getPreText().trim(); if(preText.length() > 0) { environment.getOut().write(trimPretext(beanMetadata.getPreText())); } } }
public void execute(Environment environment, Map params, TemplateModel[] templateModels, TemplateDirectiveBody templateDirectiveBody) throws TemplateException, IOException { Object bean = getBeanObject(environment, params, "writePreText"); BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean); if(beanMetadata != null && beanMetadata.getPreText() != null) { String preText = beanMetadata.getPreText().trim(); if(preText.length() > 0) { environment.getOut().write(trimPretext(beanMetadata.getPreText())); } } }
public void execute(Environment environment, Map params, TemplateModel[] templateModels, TemplateDirectiveBody templateDirectiveBody) throws TemplateException, IOException { Object bean = getBeanObject(environment, params, "writePreText"); BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean); if(beanMetadata != null && beanMetadata.getPreText() != null) { String preText = beanMetadata.getPreText().trim(); if(preText.length() > 0) { environment.getOut().write(trimPretext(beanMetadata.getPreText())); } } }
/** * Find the DataGetters for this template, and apply them to the Freemarker * environment. */ public static void retrieveAndRunDataGetters(Environment env, String templateName) { HttpServletRequest req = (HttpServletRequest) env .getCustomAttribute("request"); VitroRequest vreq = new VitroRequest(req); if (dataGettersAlreadyApplied(env, templateName)) { log.debug("DataGetters for '" + templateName + "' have already been applied"); return; } try { List<DataGetter> dgList = DataGetterUtils .getDataGettersForTemplate(vreq, vreq.getDisplayModel(), templateName); log.debug("Retrieved " + dgList.size() + " data getters for template '" + templateName + "'"); @SuppressWarnings("unchecked") Map<String, Object> dataMap = (Map<String, Object>) DeepUnwrap .permissiveUnwrap(env.getDataModel()); for (DataGetter dg : dgList) { applyDataGetter(dg, env, dataMap); } } catch (Exception e) { log.warn(e, e); } }
protected Map<String, Object> getTemplateVariableDump(String varName, Environment env) throws TemplateModelException { defaultWrapper = env.getObjectWrapper(); if (defaultWrapper == null) { defaultWrapper = env.getConfiguration().getObjectWrapper(); } TemplateHashModel dataModel = env.getDataModel(); TemplateModel valueToDump = dataModel.get(varName); return getTemplateVariableDump(varName, valueToDump); }
BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean);
BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean);
BeanModel modelBeanModel = (BeanModel) environment.getDataModel().get(FreeMarkerBeanWriter.MODEL_CTX_KEY); Model model = (Model) modelBeanModel.getWrappedObject(); BeanMetadata beanMetadata = model.getBeanMetadata(bean);
TemplateHashModel dataModel = env.getDataModel(); Object templateModel = dataModel.get(varName);