Class Content
- All Implemented Interfaces:
Serializable,Cloneable,NamespaceAware
Parent nodes.- Author:
- Bradley S. Huffman, Jason Hunter, Rolf Lear
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumAn enumeration useful for identifying content types without having to doinstanceoftype conditionals. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final Content.CTypeThe content type enumerate value for this Contentprotected ParentThe parentParentof this Content. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedContent(Content.CType type) Create a new Content instance of a particular type. -
Method Summary
Modifier and TypeMethodDescriptionclone()Return a deep clone of this instance.detach()Detaches this child from its parent or does nothing if the child has no parent.final booleanThis tests for equality of this Content object to the supplied object.final Content.CTypegetCType()All content has an enumerated type expressing the type of content.Return this child's owning document or null if the branch containing this child is currently not attached to a document.Obtain a list of all namespaces that are in scope for this content, but were not introduced by this content.Obtain a list of all namespaces that are in scope for the current content.Obtain a list of all namespaces that are introduced to the XML tree by this node.Return this child's parent, or null if this child is currently not attached.final ElementA convenience method that returns any parent element for this element, or null if the element is unattached or is a root element.abstract StringgetValue()Returns the XPath 1.0 string value of this child.final inthashCode()This returns the hash code for thisContentitem.protected ContentSets the parent of this Content.
-
Field Details
-
parent
The parentParentof this Content. Note that the field is not serialized, thus deserialized Content instances are 'detached' -
ctype
The content type enumerate value for this Content
-
-
Constructor Details
-
Content
Create a new Content instance of a particular type.- Parameters:
type- TheContent.CTypeof this Content
-
-
Method Details
-
getCType
All content has an enumerated type expressing the type of content. This makes it possible to use switch-type statements on the content.- Returns:
- A CType enumerated value representing this content.
-
detach
Detaches this child from its parent or does nothing if the child has no parent.This method can be overridden by particular Content subclasses to return a specific type of Content (co-variant return type). All overriding subclasses must call
super.detach();- Returns:
- this child detached
-
getParent
Return this child's parent, or null if this child is currently not attached. The parent can be either anElementor aDocument.This method can be overridden by particular Content subclasses to return a specific type of Parent (co-variant return type). All overriding subclasses must call
super.getParent();- Returns:
- this child's parent or null if none
-
getParentElement
A convenience method that returns any parent element for this element, or null if the element is unattached or is a root element. This was the original behavior of getParent() in JDOM Beta 9 which began returning Parent in Beta 10. This method provides a convenient upgrade path for JDOM Beta 10 and 1.0 users.- Returns:
- the containing Element or null if unattached or a root element
-
setParent
Sets the parent of this Content. The caller is responsible for removing any pre-existing parentage.This method can be overridden by particular Content subclasses to return a specific type of Content (co-variant return type). All overriding subclasses must call
super.setParent(Parent);- Parameters:
parent- new parent element- Returns:
- the target element
-
getDocument
Return this child's owning document or null if the branch containing this child is currently not attached to a document.- Returns:
- this child's owning document or null if none
-
getValue
Returns the XPath 1.0 string value of this child.- Returns:
- xpath string value of this child.
-
clone
Return a deep clone of this instance. Even if this instance has a parent, the returned clone will not.All JDOM core classes are Cloneable, and never throw CloneNotSupportedException. Additionally all Cloneable JDOM classes return the correct type of instance from this method and there is no need to cast the result (co-variant return vaue).
Subclasses of this should still call super.clone() in their clone method.
-
equals
This tests for equality of this Content object to the supplied object. Content items are considered equal only if they are referentially equal (i.e. the same object). User code may choose to compare objects based on their properties instead. -
hashCode
public final int hashCode()This returns the hash code for thisContentitem. -
getNamespacesInScope
Description copied from interface:NamespaceAwareObtain a list of all namespaces that are in scope for the current content.The contents of this list will always be the combination of getNamespacesIntroduced() and getNamespacesInherited().
See
NamespaceAwaredocumentation for details on what the order of the Namespaces will be in the returned list.- Specified by:
getNamespacesInScopein interfaceNamespaceAware- Returns:
- a read-only list of Namespaces.
-
getNamespacesIntroduced
Description copied from interface:NamespaceAwareObtain a list of all namespaces that are introduced to the XML tree by this node. Only Elements and Attributes can introduce namespaces, so all other Content types will return an empty list.The contents of this list will always be a subset (but in the same order) of getNamespacesInScope(), and will never intersect getNamspacesInherited()
- Specified by:
getNamespacesIntroducedin interfaceNamespaceAware- Returns:
- a read-only list of Namespaces.
-
getNamespacesInherited
Description copied from interface:NamespaceAwareObtain a list of all namespaces that are in scope for this content, but were not introduced by this content.The contents of this list will always be a subset (but in the same order) of getNamespacesInScope(), and will never intersect getNamspacesIntroduced()
- Specified by:
getNamespacesInheritedin interfaceNamespaceAware- Returns:
- a read-only list of Namespaces.
-