return TemplateDateModel.class; } else if (tm instanceof StringModel) { Object wrapped = ((BeanModel) tm).getWrappedObject(); return wrapped instanceof String ? TemplateScalarModel.class
public TemplateModel create(Object object, ObjectWrapper wrapper) { return new BeanModel(object, (BeansWrapper) wrapper); } };
public TemplateCollectionModel values() throws TemplateModelException { List<Object> values = new ArrayList<Object>(size()); TemplateModelIterator it = keys().iterator(); while (it.hasNext()) { String key = ((TemplateScalarModel) it.next()).getAsString(); values.add(get(key)); } return new CollectionAndSequence(new SimpleSequence(values, wrapper)); }
Object fd = classInfo.get(key); if (fd != null) { retval = invokeThroughDescriptor(fd, classInfo); } else { retval = invokeGenericGet(classInfo, clazz, key); TemplateModel model = invokeGenericGet(classInfo, clazz, key); final TemplateModel nullModel = wrapper.wrap(null); if (model != nullModel && model != UNKNOWN) { retval = invokeThroughDescriptor(fd, classInfo); if (retval == UNKNOWN && model == nullModel) { throw new InvalidPropertyException("No such bean property: " + key); } else if (LOG.isDebugEnabled()) { logNoSuchKey(key, classInfo);
public TemplateModel get(String key) throws TemplateModelException { TemplateModel model = super.get(key); if (model == null) { switch(key) { case "hasErrors": return hasErrors; case "getErrors": return getErrors; } } return model; } }
/** * Returns true if this bundle contains no objects. */ @Override public boolean isEmpty() { return !((ResourceBundle) object).getKeys().hasMoreElements() && super.isEmpty(); }
/** * Fall back on the parameters' hash model if no bean property has been found. */ public TemplateModel get(String key) throws TemplateModelException { TemplateModel templateModel = super.get(key); if (templateModel == null) { templateModel = paramHash.get(key); } return templateModel; } }
if(fd != null) retval = invokeThroughDescriptor(fd, classInfo); } else { retval = invokeGenericGet(classInfo, clazz, key); TemplateModel model = invokeGenericGet(classInfo, clazz, key); final TemplateModel nullModel = wrapper.wrap(null); if(model != nullModel && model != UNKNOWN) retval = invokeThroughDescriptor(fd, classInfo); if (retval == UNKNOWN && model == nullModel) { throw new InvalidPropertyException("No such bean property: " + key); } else if (logger.isDebugEnabled()) { logNoSuchKey(key, classInfo);
static boolean isEmpty(TemplateModel model) throws TemplateModelException { if (model instanceof BeanModel) { return ((BeanModel) model).isEmpty(); } else if (model instanceof TemplateSequenceModel) { return ((TemplateSequenceModel) model).size() == 0; } else if (model instanceof TemplateScalarModel) { String s = ((TemplateScalarModel) model).getAsString(); return (s == null || s.length() == 0); } else if (model == null) { return true; } else if (model instanceof TemplateMarkupOutputModel) { // Note: happens just after FTL string check TemplateMarkupOutputModel mo = (TemplateMarkupOutputModel) model; return mo.getOutputFormat().isEmpty(mo); } else if (model instanceof TemplateCollectionModel) { return !((TemplateCollectionModel) model).iterator().hasNext(); } else if (model instanceof TemplateHashModel) { return ((TemplateHashModel) model).isEmpty(); } else if (model instanceof TemplateNumberModel || model instanceof TemplateDateModel || model instanceof TemplateBooleanModel) { return false; } else { return true; } }
/** * @param model * @return java bean value * @throws TemplateModelException */ public static Object converBean(TemplateModel model) throws TemplateModelException { if (null != model) { if (model instanceof TemplateSequenceModel) { converBean(((TemplateSequenceModel) model).get(0)); } if (model instanceof BeanModel) { return ((BeanModel) model).getWrappedObject(); } } return null; }
public TemplateCollectionModel values() throws TemplateModelException { List<Object> values = new ArrayList<Object>(size()); TemplateModelIterator it = keys().iterator(); while (it.hasNext()) { String key = ((TemplateScalarModel) it.next()).getAsString(); values.add(get(key)); } return new CollectionAndSequence(new SimpleSequence(values, wrapper)); }
public TemplateModel create(Object object, ObjectWrapper wrapper) { return new BeanModel(object, (BeansWrapper)wrapper); } };
/** * Fall back on the parameters' hash model if no bean property has been found. */ @Override public TemplateModel get(String key) throws TemplateModelException { TemplateModel templateModel = super.get(key); if (templateModel == null) { templateModel = paramHash.get(key); } return templateModel; } }
Object fd = classInfo.get(key); if (fd != null) { retval = invokeThroughDescriptor(fd, classInfo); } else { retval = invokeGenericGet(classInfo, clazz, key); TemplateModel model = invokeGenericGet(classInfo, clazz, key); final TemplateModel nullModel = wrapper.wrap(null); if (model != nullModel && model != UNKNOWN) { retval = invokeThroughDescriptor(fd, classInfo); if (retval == UNKNOWN && model == nullModel) { throw new InvalidPropertyException("No such bean property: " + key); } else if (LOG.isDebugEnabled()) { logNoSuchKey(key, classInfo);
@Override public boolean isEmpty() throws TemplateModelException { return beanModel.isEmpty(); } }
/** * @param model * @return java bean value * @throws TemplateModelException */ public static Object converBean(TemplateModel model) throws TemplateModelException { if (null != model) { if (model instanceof TemplateSequenceModel) { converBean(((TemplateSequenceModel) model).get(0)); } if (model instanceof BeanModel) { return ((BeanModel) model).getWrappedObject(); } } return null; }
public TemplateCollectionModel values() throws TemplateModelException { List values = new ArrayList(size()); TemplateModelIterator it = keys().iterator(); while (it.hasNext()) { String key = ((TemplateScalarModel)it.next()).getAsString(); values.add(get(key)); } return new CollectionAndSequence(new SimpleSequence(values, wrapper)); }
public TemplateModel create(Object object, ObjectWrapper wrapper) { return new BeanModel(object, (BeansWrapper) wrapper); } };