freemarker.template
Class DefaultObjectWrapper
java.lang.Object
freemarker.ext.beans.BeansWrapper
freemarker.template.DefaultObjectWrapper
- All Implemented Interfaces:
- ObjectWrapper
- Direct Known Subclasses:
- SimpleObjectWrapper
public class DefaultObjectWrapper
- extends BeansWrapper
The default implementation of the ObjectWrapper
interface.
- Version:
- $Id: DefaultObjectWrapper.java,v 1.23 2005/06/08 00:06:19 revusky Exp $
Methods inherited from class freemarker.ext.beans.BeansWrapper |
coerceBigDecimal, coerceBigDecimals, coerceBigDecimals, finetuneMethodAppearance, getDefaultDateType, getDefaultInstance, getEnumModels, getInstance, getModelFactory, getOuterIdentity, getStaticModels, isExposeFields, isSimpleMapWrapper, isStrict, newInstance, setDefaultDateType, setExposeFields, setExposureLevel, setMethodsShadowItems, setNullModel, setOuterIdentity, setSimpleMapWrapper, setStrict, setUseCache, unwrap, unwrap |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DefaultObjectWrapper
public DefaultObjectWrapper()
wrap
public TemplateModel wrap(Object obj)
throws TemplateModelException
- Description copied from class:
BeansWrapper
- Wraps the object with a template model that is most specific for the object's
class. Specifically:
- if the object is null, returns the
null model
,
- if the object is a Number returns a
NumberModel
for it,
- if the object is a Date returns a
DateModel
for it,
- if the object is a Boolean returns
TemplateBooleanModel.TRUE
or
TemplateBooleanModel.FALSE
- if the object is already a TemplateModel, returns it unchanged,
- if the object is an array, returns a
ArrayModel
for it
- if the object is a Map, returns a
MapModel
for it
- if the object is a Collection, returns a
CollectionModel
for it
- if the object is an Iterator, returns a
IteratorModel
for it
- if the object is an Enumeration, returns a
EnumerationModel
for it
- if the object is a String, returns a
StringModel
for it
- otherwise, returns a generic
BeanModel
for it.
- Specified by:
wrap
in interface ObjectWrapper
- Overrides:
wrap
in class BeansWrapper
- Returns:
- a TemplateModel wrapper of the object passed in.
- Throws:
TemplateModelException
handleUnknownType
protected TemplateModel handleUnknownType(Object obj)
throws TemplateModelException
- Called if an unknown type is passed in.
Since 2.3, this falls back on XML wrapper and BeansWrapper functionality.
- Throws:
TemplateModelException
wrapDomNode
public TemplateModel wrapDomNode(Object obj)
convertArray
protected Object convertArray(Object arr)
- Converts an array to a java.util.List