Class AbstractProperty
Property interface.
Item methods without a default implementation:
Item.getName()Item.getParent()Item.getSession()Item.isModified()Item.isNew()Item.isSame(Item)Item.refresh(boolean)Item.save()
Property methods without a default implementation:
NOTE: Many of the default method implementations in
this base class rely on the parent node being accessible through the
Item.getParent() call. It is possible (though unlikely) that
access controls deny access to a containing node even though a property
is accessible. In such cases the default method implementations in this
class will not work.
-
Field Summary
Fields inherited from interface javax.jcr.Property
JCR_ACTIVITY, JCR_AUTOCREATED, JCR_BASE_VERSION, JCR_CHILD_VERSION_HISTORY, JCR_CONFIGURATION, JCR_CONTENT, JCR_COPIED_FROM, JCR_CREATED, JCR_CREATED_BY, JCR_CURRENT_LIFECYCLE_STATE, JCR_DATA, JCR_DEFAULT_PRIMARY_TYPE, JCR_DEFAULT_VALUES, JCR_DESCRIPTION, JCR_ENCODING, JCR_FROZEN_MIXIN_TYPES, JCR_FROZEN_PRIMARY_TYPE, JCR_FROZEN_UUID, JCR_HAS_ORDERABLE_CHILD_NODES, JCR_HOST, JCR_ID, JCR_IS_ABSTRACT, JCR_IS_CHECKED_OUT, JCR_IS_MIXIN, JCR_LANGUAGE, JCR_LAST_MODIFIED, JCR_LAST_MODIFIED_BY, JCR_LIFECYCLE_POLICY, JCR_LOCK_IS_DEEP, JCR_LOCK_OWNER, JCR_MANDATORY, JCR_MERGE_FAILED, JCR_MIMETYPE, JCR_MIXIN_TYPES, JCR_MULTIPLE, JCR_NAME, JCR_NODE_TYPE_NAME, JCR_ON_PARENT_VERSION, JCR_PATH, JCR_PORT, JCR_PREDECESSORS, JCR_PRIMARY_ITEM_NAME, JCR_PRIMARY_TYPE, JCR_PROTECTED, JCR_PROTOCOL, JCR_REPOSITORY, JCR_REQUIRED_PRIMARY_TYPES, JCR_REQUIRED_TYPE, JCR_ROOT, JCR_SAME_NAME_SIBLINGS, JCR_STATEMENT, JCR_SUCCESSORS, JCR_SUPERTYPES, JCR_TITLE, JCR_UUID, JCR_VALUE_CONSTRAINTS, JCR_VERSION_HISTORY, JCR_VERSIONABLE_UUID, JCR_WORKSPACE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(ItemVisitor visitor) Accepts the given item visitor.booleanReturns the boolean value of this property.getDate()Returns the date value of this property.doubleReturns the double value of this property.longReturns the length of the value of this property.long[]Returns the lengths of the values of this property.longgetLong()Returns the long value of this property.getNode()If this property is of typeREFERENCE,WEAKREFERENCEorPATH(or convertible to one of these types) this method returns theNodeto which this property refers.getPath()Returns the path of this property.If this property is of typePATH(or convertible to this type) this method returns thePropertyto which this property refers.Returns the binary value of this property.Returns the string value of this property.intgetType()Returns the type of this property.booleanisNode()Returnsfalse.voidremove()Removes this property.voidsetValue(boolean value) Sets the value of this property.voidsetValue(double value) Sets the value of this property.voidsetValue(long value) Sets the value of this property.voidsetValue(InputStream value) Sets the value of this property.voidSets the value of this property.voidSets the values of this property.voidSets the value of this property.voidSets the value of this property.voidSets the value of this property.voidSets the values of this property.Methods inherited from class org.apache.jackrabbit.commons.AbstractItem
getAncestor, getDepth, toStringMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javax.jcr.Item
getAncestor, getDepth, getName, getParent, getSession, isModified, isNew, isSame, refresh, saveMethods inherited from interface javax.jcr.Property
getBinary, getDecimal, getDefinition, getValue, getValues, isMultiple, setValue, setValue
-
Constructor Details
-
AbstractProperty
public AbstractProperty()
-
-
Method Details
-
accept
Accepts the given item visitor.The default implementation calls
ItemVisitor.visit(Property)on the given visitor with this property as the argument.- Specified by:
acceptin interfaceItem- Parameters:
visitor- item visitor- Throws:
RepositoryException- if an error occurs
-
getPath
Returns the path of this property.The default implementation constructs the path from the path of the parent node and the name of this property.
- Specified by:
getPathin interfaceItem- Returns:
- property path
- Throws:
RepositoryException- if an error occurs
-
isNode
public boolean isNode()Returnsfalse. -
remove
Removes this property.The default implementation calls
Node.setProperty(String, Value)with anullvalue on the parent node.- Specified by:
removein interfaceItem- Throws:
RepositoryException- if an error occurs- See Also:
-
getBoolean
Returns the boolean value of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getBooleanin interfaceProperty- Returns:
- boolean value
- Throws:
RepositoryException- if an error occurs- See Also:
-
getDate
Returns the date value of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getDatein interfaceProperty- Returns:
- date value
- Throws:
RepositoryException- if an error occurs- See Also:
-
getDouble
Returns the double value of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getDoublein interfaceProperty- Returns:
- double value
- Throws:
RepositoryException- if an error occurs- See Also:
-
getLength
Returns the length of the value of this property.The default implementation measures the length of the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getLengthin interfaceProperty- Returns:
- length of the property value
- Throws:
RepositoryException- if an error occurs
-
getLengths
Returns the lengths of the values of this property.The default implementation measures the lengths of the
Valueinstances returned by the genericProperty.getValues()method.- Specified by:
getLengthsin interfaceProperty- Returns:
- lengths of the property values
- Throws:
RepositoryException- if an error occurs
-
getLong
Returns the long value of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getLongin interfaceProperty- Returns:
- long value
- Throws:
RepositoryException- if an error occurs- See Also:
-
getNode
If this property is of typeREFERENCE,WEAKREFERENCEorPATH(or convertible to one of these types) this method returns theNodeto which this property refers.If this property is of type
PATHand it contains a relative path, it is interpreted relative to the parent node of this property. For example "." refers to the parent node itself, ".." to the parent of the parent node and "foo" to a sibling node of this property.- Specified by:
getNodein interfaceProperty- Returns:
- the referenced Node
- Throws:
ValueFormatException- if this property cannot be converted to a referring type (REFERENCE,WEAKREFERENCEorPATH), if the property is multi-valued or if this property is a referring type but is currently part of the frozen state of a version in version storage.ItemNotFoundException- If this property is of typePATHorWEAKREFERENCEand no target node accessible by the currentSessionexists in this workspace. Note that this applies even if the property is aPATHSand a property exists at the specified location. To dereference to a target property (as opposed to a target node), the methodProperty.getPropertyis used.RepositoryException- if another error occurs.
-
getProperty
If this property is of typePATH(or convertible to this type) this method returns thePropertyto which this property refers.If this property contains a relative path, it is interpreted relative to the parent node of this property. Therefore, when resolving such a relative path, the segment "
." refers to the parent node itself, ".." to the parent of the parent node and "foo" to a sibling property of this property or this property itself.For example, if this property is located at
/a/b/cand it has a value of "../d" then this method will return the property at/a/dif such exists.If this property is multi-valued, this method throws a
ValueFormatException.If this property cannot be converted to a
PATHthen aValueFormatExceptionis thrown.If this property is currently part of the frozen state of a version in version storage, this method will throw a
ValueFormatException.- Specified by:
getPropertyin interfaceProperty- Returns:
- the referenced property
- Throws:
ValueFormatException- if this property cannot be converted to aPATH, if the property is multi-valued or if this property is a referring type but is currently part of the frozen state of a version in version storage.ItemNotFoundException- If no property accessible by the currentSessionexists in this workspace at the specified path. Note that this applies even if a node exists at the specified location. To dereference to a target node, the methodProperty.getNodeis used.RepositoryException- if another error occurs.
-
getStream
Returns the binary value of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getStreamin interfaceProperty- Returns:
- binary value
- Throws:
RepositoryException- if an error occurs- See Also:
-
getString
Returns the string value of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getStringin interfaceProperty- Returns:
- string value
- Throws:
RepositoryException- if an error occurs- See Also:
-
getType
Returns the type of this property.The default implementation forwards the method call to the
Valueinstance returned by the genericProperty.getValue()method.- Specified by:
getTypein interfaceProperty- Returns:
- property type
- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, Value)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the values of this property.The default implementation forwards the call to the
Node.setProperty(String, Value[])method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
values- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, String)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the values of this property.The default implementation forwards the call to the
Node.setProperty(String, String[])method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
values- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, InputStream)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, long)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, double)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, Calendar)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, boolean)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-
setValue
Sets the value of this property.The default implementation forwards the call to the
Node.setProperty(String, Node)method of the parent node using the name of this property.- Specified by:
setValuein interfaceProperty- Parameters:
value- passed through- Throws:
RepositoryException- if an error occurs
-