Class MapProperty
- java.lang.Object
-
- org.nuxeo.ecm.core.api.model.impl.AbstractProperty
-
- org.nuxeo.ecm.core.api.model.impl.ComplexProperty
-
- org.nuxeo.ecm.core.api.model.impl.MapProperty
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Iterable<Property>
,Map<String,Property>
,Property
- Direct Known Subclasses:
BlobProperty
,ExternalBlobProperty
public class MapProperty extends ComplexProperty
Phantom properties are not stored as children objects.- Author:
- Bogdan Stefanescu
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected Field
field
The corresponding field.-
Fields inherited from class org.nuxeo.ecm.core.api.model.impl.ComplexProperty
children
-
Fields inherited from class org.nuxeo.ecm.core.api.model.impl.AbstractProperty
flags, forceDirty, IS_DEPRECATED, IS_READONLY, IS_SECURED, NON_CANON_INDEX, parent
-
Fields inherited from interface org.nuxeo.ecm.core.api.model.Property
DIRTY_MASK, IS_DIRTY, IS_MODIFIED, IS_MOVED, IS_NEW, IS_PHANTOM, IS_REMOVED, NONE
-
-
Constructor Summary
Constructors Constructor Description MapProperty(Property parent, Field field)
MapProperty(Property parent, Field field, int flags)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
accept(PropertyVisitor visitor, Object arg)
Method that implement the visitor pattern.Object
clone()
Field
getField()
Gets the field corresponding to this property.String
getName()
Gets the property name.ComplexType
getType()
Get the type of the field corresponding to this property.void
internalSetValue(Serializable value)
Sets the given normalized value.boolean
isContainer()
Whether this property is a container - this means the property value is a map or a list.-
Methods inherited from class org.nuxeo.ecm.core.api.model.impl.ComplexProperty
addEmpty, addValue, addValue, clear, clearDirtyFlags, containsKey, containsValue, entrySet, get, get, get, getChild, getChildren, getDefaultValue, getDirtyChildren, getNonPhantomChild, getNonPhantomChildren, getValueForWrite, init, internalGetChild, internalGetValue, isEmpty, isNormalized, isSameAs, keySet, normalize, put, putAll, remove, set, setValue, values, visitChildren
-
Methods inherited from class org.nuxeo.ecm.core.api.model.impl.AbstractProperty
appendDirtyFlags, areFlagsSet, clearFlags, collectPath, computeRemovedProperty, convertTo, getDeprecatedFallback, getDeprecatedParent, getDirtyFlags, getObjectResolver, getParent, getPath, getRoot, getSchema, getValue, getValue, getValue, getValue, getValueDeprecation, getXPath, getXPath, hasDefaultValue, isComplex, isDeprecated, isDirty, isForceDirty, isList, isModified, isMoved, isNew, isPhantom, isReadOnly, isRemoved, isSameValue, isScalar, isSecured, isSecuredForContext, iterator, moveTo, newDeprecatedMessage, newInstance, remove, removePhantomFlag, resolvePath, resolvePath, setDirtyFlags, setFlags, setForceDirty, setIsModified, setIsMoved, setIsNew, setIsRemoved, setReadOnly, setValue, setValue, setValueDeprecation, size, toString, validateType
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Methods inherited from interface java.util.Map
compute, computeIfAbsent, computeIfPresent, equals, forEach, getOrDefault, hashCode, merge, putIfAbsent, remove, replace, replace, replaceAll, size
-
-
-
-
Field Detail
-
field
protected final Field field
The corresponding field.
-
-
Method Detail
-
internalSetValue
public void internalSetValue(Serializable value) throws PropertyException
Description copied from class:AbstractProperty
Sets the given normalized value.This applies only for nodes that physically store a value (that means non container nodes). Container nodes does nothing.
- Specified by:
internalSetValue
in classAbstractProperty
- Throws:
PropertyException
-
isContainer
public boolean isContainer()
Description copied from interface:Property
Whether this property is a container - this means the property value is a map or a list.Container properties don't have a scalar values. Container values are computed each time they are requested - by calling on of the
getValue
methods - by collecting the values of the child properties.- Returns:
- true if scalar false otherwise
-
getName
public String getName()
Description copied from interface:Property
Gets the property name.- Returns:
- the property name
-
getType
public ComplexType getType()
Description copied from interface:Property
Get the type of the field corresponding to this property.- Specified by:
getType
in interfaceProperty
- Specified by:
getType
in classComplexProperty
- Returns:
- the property type
-
getField
public Field getField()
Description copied from interface:Property
Gets the field corresponding to this property.The field is the object defining the property. You can see the field as a java class and the property as a class instance
-
clone
public Object clone() throws CloneNotSupportedException
- Overrides:
clone
in classObject
- Throws:
CloneNotSupportedException
-
accept
public void accept(PropertyVisitor visitor, Object arg) throws PropertyException
Description copied from interface:Property
Method that implement the visitor pattern.The visitor must return null to stop visiting children otherwise a context object that will be passed as the arg argument to children
- Parameters:
visitor
- the visitor to acceptarg
- an argument passed to the visitor. This should be used by the visitor to carry on the visiting context.- Throws:
PropertyException
-
-