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.BeansWrapper
The 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_SAFEFields inherited from interface freemarker.template.ObjectWrapper
BEANS_WRAPPER, DEFAULT_WRAPPER, SIMPLE_WRAPPER -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ObjectconvertArray(Object arr) Converts an array to a java.util.Listprotected TemplateModelhandleUnknownType(Object obj) Called if an unknown type is passed in.Wraps the object with a template model that is most specific for the object's class.wrapDomNode(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
-
Constructor Details
-
DefaultObjectWrapper
public DefaultObjectWrapper()
-
-
Method Details
-
wrap
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
Called if an unknown type is passed in. Since 2.3, this falls back on XML wrapper and BeansWrapper functionality.- Throws:
TemplateModelException
-
wrapDomNode
-
convertArray
Converts an array to a java.util.List
-