Class AbstractNode
Node interface.
Item methods without a default implementation:
Item.accept(javax.jcr.ItemVisitor)Item.getName()Item.getParent()Item.getSession()Item.isModified()Item.isNew()Item.isSame(Item)Item.refresh(boolean)Item.remove()Item.save()
Node methods without a default implementation:
Node.addMixin(String)Node.addNode(String)Node.addNode(String, String)Node.canAddMixin(String)Node.cancelMerge(Version)Node.checkin()Node.checkout()Node.doneMerge(Version)Node.getBaseVersion()Node.getCorrespondingNodePath(String)Node.getDefinition()Node.getIndex()Node.getLock()Node.getNode(String)Node.getNodes()Node.getNodes(String)Node.getPrimaryItem()Node.getProperties()Node.getProperties(String)Node.getReferences()Node.lock(boolean, boolean)Node.merge(String, boolean)Node.orderBefore(String, String)Node.removeMixin(String)Node.restore(Version, String, boolean)Node.setProperty(String, Value)Node.setProperty(String, Value[])Node.unlock()Node.update(String)
-
Field Summary
Fields inherited from interface javax.jcr.Node
JCR_CHILD_NODE_DEFINITION, JCR_CONTENT, JCR_FROZEN_NODE, JCR_PROPERTY_DEFINITION, JCR_ROOT_VERSION, JCR_VERSION_LABELS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(ItemVisitor visitor) Accepts the given item visitor.NodeType[]Returns the declared mixin node types of this node.getPath()Returns the path of this node.Returns the primary node type of this node.getProperty(String relPath) Returns the property at the given relative path from this node.getUUID()Returns the UUID of this node.Returns the version history of this node.booleanChecks whether a node at the given relative path exists.booleanhasNodes()Checks if this node has one or more properties.booleanChecks if this node has one or more properties.booleanhasProperty(String relPath) Checks whether a property at the given relative path exists.booleanChecks if this node holds a lock.booleanChecks whether this node is checked out.booleanisLocked()Checks if this node is locked.booleanisNode()Returnstrue.booleanisNodeType(String name) Checks whether this node is of the given type.voidRestores this node to the version with the given name.voidRestores this node to the given version.voidrestoreByLabel(String versionLabel, boolean removeExisting) Restores this node to the version with the given label.setProperty(String name, boolean value) Sets the value of the named property.setProperty(String name, double value) Sets the value of the named property.setProperty(String name, long value) Sets the value of the named property.setProperty(String name, InputStream value) Sets the value of the named property.setProperty(String name, String value) Sets the value of the named property.setProperty(String name, String[] strings) Sets the value of the named property.setProperty(String name, String[] strings, int type) Sets the value of the named property.setProperty(String name, String value, int type) Sets the value of the named property.setProperty(String name, Calendar value) Sets the value of the named property.setProperty(String name, Node value) Sets the value of the named property.setProperty(String name, Value[] values, int type) Sets the value of the named property.setProperty(String name, Value value, int type) Sets the value of the named 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, remove, saveMethods inherited from interface javax.jcr.Node
addMixin, addNode, addNode, canAddMixin, cancelMerge, checkin, checkout, doneMerge, followLifecycleTransition, getAllowedLifecycleTransistions, getBaseVersion, getCorrespondingNodePath, getDefinition, getIdentifier, getIndex, getLock, getNode, getNodes, getNodes, getNodes, getPrimaryItem, getProperties, getProperties, getProperties, getReferences, getReferences, getSharedSet, getWeakReferences, getWeakReferences, lock, merge, orderBefore, removeMixin, removeShare, removeSharedSet, restore, setPrimaryType, setProperty, setProperty, setProperty, setProperty, unlock, update
-
Constructor Details
-
AbstractNode
public AbstractNode()
-
-
Method Details
-
accept
Accepts the given item visitor.The default implementation calls
ItemVisitor.visit(Node)on the given visitor with this node as the argument.- Specified by:
acceptin interfaceItem- Parameters:
visitor- item visitor- Throws:
RepositoryException- if an error occurs
-
getPath
Returns the path of this node.The default implementation recursively calls this method on the parent node and appends the name and optionally the index of this node to construct the full path. Returns "/" if the parent node is not available (i.e. this is the root node).
- Specified by:
getPathin interfaceItem- Returns:
- node path
- Throws:
RepositoryException- if an error occurs
-
isNode
public boolean isNode()Returnstrue. -
getMixinNodeTypes
Returns the declared mixin node types of this node.The default implementation uses the values of the
jcr:mixinTypesproperty to look up the mixin node types from theNodeTypeManagerof the current workspace.- Specified by:
getMixinNodeTypesin interfaceNode- Returns:
- mixin node types
- Throws:
RepositoryException- if an error occurs
-
getPrimaryNodeType
Returns the primary node type of this node.The default implementation uses the value of the
jcr:primaryTypeproperty to look up the primary node type from theNodeTypeManagerof the current workspace.- Specified by:
getPrimaryNodeTypein interfaceNode- Returns:
- primary node type
- Throws:
RepositoryException- if an error occurs
-
getProperty
Returns the property at the given relative path from this node.The default implementation looks up the parent node of the given relative path and iterates through the properties of that node to find and return the identified property.
- Specified by:
getPropertyin interfaceNode- Parameters:
relPath- relative path of the property- Returns:
- property
- Throws:
PathNotFoundException- if the property is not foundRepositoryException- if an error occurs
-
getUUID
Returns the UUID of this node.The default implementation checks if this node is referenceable (i.e. of type
mix:referenceable) and returns the contents of thejcr:uuidproperty if it is.- Specified by:
getUUIDin interfaceNode- Returns:
- node UUID
- Throws:
UnsupportedRepositoryOperationException- if this node is not referenceableRepositoryException- if an error occurs
-
getVersionHistory
Returns the version history of this node.The default implementation returns the containing version history of the base version of this node.
- Specified by:
getVersionHistoryin interfaceNode- Returns:
- version history
- Throws:
RepositoryException- if an error occurs
-
hasNode
Checks whether a node at the given relative path exists.The default implementation looks up the node using
Node.getNode(String)and returnstrueif aPathNotFoundExceptionis not thrown.- Specified by:
hasNodein interfaceNode- Parameters:
relPath- relative path- Returns:
trueif a node exists at the given path,falseotherwise- Throws:
RepositoryException- if an error occurs
-
hasNodes
Checks if this node has one or more properties.The default implementation calls
Node.getNodes()and returnstrueiff returned iterator has at least one element.- Specified by:
hasNodesin interfaceNode- Returns:
trueif this node has child nodes,falseotherwise- Throws:
RepositoryException- if an error occurs
-
hasProperties
Checks if this node has one or more properties.The default implementation calls
Node.getProperties()and returnstrueiff returned iterator has at least one element.Note that in normal circumstances (i.e. no weird access controls) this method will always return
truesince all nodes always have at least thejcr:primaryTypeproperty.- Specified by:
hasPropertiesin interfaceNode- Returns:
trueif this node has properties,falseotherwise- Throws:
RepositoryException- if an error occurs
-
hasProperty
Checks whether a property at the given relative path exists.The default implementation looks up the property using
Node.getProperty(String)and returnstrueif aPathNotFoundExceptionis not thrown.- Specified by:
hasPropertyin interfaceNode- Parameters:
relPath- relative path- Returns:
trueif a property exists at the given path,falseotherwise- Throws:
RepositoryException- if an error occurs
-
holdsLock
Checks if this node holds a lock.The default implementation calls
Node.getLock()and returnstrueiff the holding node of the lock is the same as this node.- Specified by:
holdsLockin interfaceNode- Returns:
trueif this node holds a lock,falseotherwise- Throws:
RepositoryException- if an error occurs
-
isCheckedOut
Checks whether this node is checked out.The default implementation checks the
jcr:isCheckedOutproperty if this node is versionable, and recursively calls this method on the parent node if this node is not versionable. A non-versionable root node always returnstruefrom this method.- Specified by:
isCheckedOutin interfaceNode- Returns:
trueif this node is checked out,falseotherwise- Throws:
RepositoryException- if an error occurs
-
isLocked
Checks if this node is locked.The default implementation calls
Node.getLock()and returnstrueiff aLockExceptionis not thrown.- Specified by:
isLockedin interfaceNode- Returns:
trueif this node is locked,falseotherwise- Throws:
RepositoryException- if an error occurs
-
isNodeType
Checks whether this node is of the given type.The default implementation iterates through the primary and mixin types and all the supertypes of this node, returning
trueif a type with the given name is encountered. Returnsfalseif none of the types matches.- Specified by:
isNodeTypein interfaceNode- Parameters:
name- type name- Returns:
trueif this node is of the given type,falseotherwise- Throws:
RepositoryException- if an error occurs
-
restore
Restores this node to the version with the given name.The default implement retrieves the named
Versionfrom the associatedVersionHistoryand forwards the call to theNode.restore(Version, boolean)method.- Specified by:
restorein interfaceNode- Parameters:
versionName- version nameremoveExisting- passed through- Throws:
RepositoryException- if an error occurs
-
restore
Restores this node to the given version.The default implementation forwards the call to the
Node.restore(Version, String, boolean)method using the relative path ".".- Specified by:
restorein interfaceNode- Parameters:
version- passed throughremoveExisting- passed through- Throws:
RepositoryException- if an error occurs
-
restoreByLabel
Restores this node to the version with the given label.The default implement retrieves the labeled
Versionfrom the associatedVersionHistoryand forwards the call to theNode.restore(Version, boolean)method.- Specified by:
restoreByLabelin interfaceNode- Parameters:
versionLabel- version labelremoveExisting- passed through- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstances from the given string values and forwards the call to theNode.setProperty(String, Value[])method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namestrings- string values- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given string value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- string value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given binary value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- binary value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given boolean value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- boolean value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given double value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- double value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given long value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- long value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given date value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- date value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance from the given reference value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- reference value- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto convert the given value to the given type and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- property valuetype- property type- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto convert the given values to the given type and forwards the call to theNode.setProperty(String, Value[])method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalues- property valuestype- property type- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto createValueinstances of the given type from the given string values and forwards the call to theNode.setProperty(String, Value[])method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namestrings- string valuestype- property type- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-
setProperty
Sets the value of the named property.The default implementation uses the
ValueFactoryof the currentSessionto create aValueinstance of the given type from the given string value and forwards the call to theNode.setProperty(String, Value)method.- Specified by:
setPropertyin interfaceNode- Parameters:
name- property namevalue- string valuetype- property type- Returns:
- modified property
- Throws:
RepositoryException- if an error occurs
-