Package fmpp.models
Class JSONObjectNode
- java.lang.Object
-
- fmpp.models.JSONNode
-
- fmpp.models.JSONObjectNode
-
- All Implemented Interfaces:
freemarker.template.AdapterTemplateModel,freemarker.template.TemplateHashModel,freemarker.template.TemplateHashModelEx,freemarker.template.TemplateHashModelEx2,freemarker.template.TemplateModel,freemarker.template.TemplateNodeModel,java.io.Serializable
public class JSONObjectNode extends JSONNode implements freemarker.template.TemplateHashModelEx2
JSON "object" value; see http://www.json.org/. This class is NOT thread safe.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringDEFAULT_NODE_NAMEstatic java.lang.StringNODE_TYPE
-
Constructor Summary
Constructors Constructor Description JSONObjectNode(JSONNode parentNode, java.lang.String nodeName, java.util.Map map)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description freemarker.template.TemplateModelget(java.lang.String key)java.util.Map<java.lang.String,java.lang.Object>getAdaptedObject(java.lang.Class<?> hint)Returns the plain Java object wrapped into this node.freemarker.template.TemplateSequenceModelgetChildNodes()protected java.lang.StringgetDefaultNodeName()Returns the name of the node if it has no explicit name.java.lang.StringgetNodeType()booleanisEmpty()freemarker.template.TemplateCollectionModelkeys()freemarker.template.TemplateHashModelEx2.KeyValuePairIteratorkeyValuePairIterator()intsize()freemarker.template.TemplateCollectionModelvalues()Returns the values from the key-value pairs of this JSON object, returning Javanullfor JSONnull-s.-
Methods inherited from class fmpp.models.JSONNode
getNodeName, getNodeNamespace, getParentNode, nodeTypeToDefaultNodeName, wrap, wrap
-
-
-
-
Field Detail
-
NODE_TYPE
public static final java.lang.String NODE_TYPE
- See Also:
- Constant Field Values
-
DEFAULT_NODE_NAME
public static final java.lang.String DEFAULT_NODE_NAME
-
-
Constructor Detail
-
JSONObjectNode
public JSONObjectNode(JSONNode parentNode, java.lang.String nodeName, java.util.Map map)
- Parameters:
map- The JSON name-value pairs. The keys must beString-s, and values must be of a type thatJSONNode.wrap(Object)can wrap. The values should be plain Java objects, notJSONNode-s, or elseAdapterTemplateModel.getAdaptedObject(Class)won't work properly.
-
-
Method Detail
-
getNodeType
public java.lang.String getNodeType() throws freemarker.template.TemplateModelException- Specified by:
getNodeTypein interfacefreemarker.template.TemplateNodeModel- Throws:
freemarker.template.TemplateModelException
-
get
public freemarker.template.TemplateModel get(java.lang.String key) throws freemarker.template.TemplateModelExceptionReturns theJSONNodefor the given key from this JSON object, using a Javanullfor JSONnull-s. Note thatgetChildNodes()treats JSONnull-s differently.- Specified by:
getin interfacefreemarker.template.TemplateHashModel- Throws:
freemarker.template.TemplateModelException
-
isEmpty
public boolean isEmpty() throws freemarker.template.TemplateModelException- Specified by:
isEmptyin interfacefreemarker.template.TemplateHashModel- Throws:
freemarker.template.TemplateModelException
-
size
public int size() throws freemarker.template.TemplateModelException- Specified by:
sizein interfacefreemarker.template.TemplateHashModelEx- Throws:
freemarker.template.TemplateModelException
-
getChildNodes
public freemarker.template.TemplateSequenceModel getChildNodes() throws freemarker.template.TemplateModelException- Specified by:
getChildNodesin interfacefreemarker.template.TemplateNodeModel- Throws:
freemarker.template.TemplateModelException
-
keys
public freemarker.template.TemplateCollectionModel keys() throws freemarker.template.TemplateModelException- Specified by:
keysin interfacefreemarker.template.TemplateHashModelEx- Throws:
freemarker.template.TemplateModelException
-
values
public freemarker.template.TemplateCollectionModel values() throws freemarker.template.TemplateModelExceptionReturns the values from the key-value pairs of this JSON object, returning Javanullfor JSONnull-s. Note thatgetChildNodes()treats JSONnull-s differently.- Specified by:
valuesin interfacefreemarker.template.TemplateHashModelEx- Throws:
freemarker.template.TemplateModelException
-
keyValuePairIterator
public freemarker.template.TemplateHashModelEx2.KeyValuePairIterator keyValuePairIterator() throws freemarker.template.TemplateModelException- Specified by:
keyValuePairIteratorin interfacefreemarker.template.TemplateHashModelEx2- Throws:
freemarker.template.TemplateModelException
-
getDefaultNodeName
protected java.lang.String getDefaultNodeName()
Description copied from class:JSONNodeReturns the name of the node if it has no explicit name. This is normally called by theJSONNode(JSONNode, String)constructor if its second argument isnull.- Specified by:
getDefaultNodeNamein classJSONNode- See Also:
JSONNode.nodeTypeToDefaultNodeName(String)
-
getAdaptedObject
public java.util.Map<java.lang.String,java.lang.Object> getAdaptedObject(java.lang.Class<?> hint)
Returns the plain Java object wrapped into this node.- Specified by:
getAdaptedObjectin interfacefreemarker.template.AdapterTemplateModel- Since:
- 0.9.16
-
-