Package 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 freemarker.ext.beans.BeansWrapperThe default implementation of the ObjectWrapper interface.
-
-
Field Summary
-
Fields inherited from class freemarker.ext.beans.BeansWrapper
CAN_NOT_UNWRAP, EXPOSE_ALL, EXPOSE_NOTHING, EXPOSE_PROPERTIES_ONLY, EXPOSE_SAFE
-
Fields inherited from interface freemarker.template.ObjectWrapper
BEANS_WRAPPER, DEFAULT_WRAPPER, SIMPLE_WRAPPER
-
-
Constructor Summary
Constructors Constructor Description DefaultObjectWrapper()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ObjectconvertArray(Object arr)Converts an array to a java.util.Listprotected TemplateModelhandleUnknownType(Object obj)Called if an unknown type is passed in.TemplateModelwrap(Object obj)Wraps the object with a template model that is most specific for the object's class.TemplateModelwrapDomNode(Object obj)-
Methods inherited from class freemarker.ext.beans.BeansWrapper
coerceBigDecimal, coerceBigDecimals, create, getDefaultDateType, getDefaultInstance, getEnumModels, getModelFactory, getOuterIdentity, getStaticModels, isExposeFields, isSimpleMapWrapper, isStrict, newInstance, setDefaultDateType, setExposeFields, setExposureLevel, setMethodsShadowItems, setOuterIdentity, setSimpleMapWrapper, setStrict, setUseCache, unwrap, unwrap
-
-
-
-
Method Detail
-
wrap
public TemplateModel wrap(Object obj) throws TemplateModelException
Description copied from class:freemarker.ext.beans.BeansWrapperWraps the object with a template model that is most specific for the object's class. Specifically:- if the object is null, returns
TemplateModel.JAVA_NULL - if the object is already a
TemplateModel, returns it unchanged, - if the object is a
TemplateModelAdapter, returns its underlying model, - if the object is a Map, returns a
MapModelfor it - if the object is a Collection, returns a
CollectionModelfor it - if the object is an array, returns a
ArrayModelfor it - if the object is a Number returns a
NumberModelfor it, - if the object is a Date returns a
DateModelfor it, - if the object is a Boolean returns
TemplateBooleanModel.TRUEorTemplateBooleanModel.FALSE - if the object is a ResourceBundle returns a
ResourceBundleModelfor it, - if the object is an Iterator, returns a
IteratorModelfor it - if the object is an Enumeration, returns a
EnumerationModelfor it - otherwise, returns a generic
StringModelfor it.
- Specified by:
wrapin interfaceObjectWrapper- Overrides:
wrapin classfreemarker.ext.beans.BeansWrapper- Returns:
- a TemplateModel wrapper of the object passed in.
- Throws:
TemplateModelException
- if the object is null, returns
-
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)
-
-