java.lang.Object
org.eclipse.persistence.internal.oxm.XPathNode
INTERNAL:
Purpose: XPathNodes are used together to build a tree. The tree is built from all of the XPath statements specified in the mapping metadata (mappings and policies). This tree is then navigated by an EventObjectBuilder to perform marshal and unmarshal operations.
The XPaths "a/b" and "a/c" would result in a tree with the root "a" and two child nodes "b" and "c".
Responsibilities:
- All tree relationships must be bi-directional.
- Reference a NodeValue, XPathNodes without a Node value represent grouping elements.
- Reference an XPathFragment, XPathFragments contain name and namespace information.
- Must differentiate between child nodes that correspond to elements and those that do not.
- Must represent special mapping situations like any and self mappings.
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionaddChild
(XPathFragment anXPathFragment, NodeValue aNodeValue, NamespaceResolver namespaceResolver) boolean
getChildrenLookupTable
(boolean isAttribute) int
hashCode()
boolean
boolean
boolean
isChildrenLookupTableFilled
(boolean isAttribute) boolean
boolean
marshal
(MarshalRecord marshalRecord, Object object, CoreAbstractSession session, NamespaceResolver namespaceResolver, Marshaller marshaller, MarshalContext marshalContext, XPathFragment rootFragment) boolean
marshalSelfAttributes
(MarshalRecord marshalRecord, Object object, CoreAbstractSession session, NamespaceResolver namespaceResolver, Marshaller marshaller) Marshal any 'self' mapped attributes.void
setAnyAttributeNodeValue
(MappingNodeValue nodeValue) void
setAnyNode
(XPathNode xPathNode) void
setChildrenLookupTableFilled
(boolean isAttribute) void
setMarshalNodeValue
(NodeValue nodeValue) void
setNodeValue
(NodeValue nodeValue) void
setNullCapableValue
(NullCapableValue nullCapableValue) void
void
setTextNode
(XPathNode xPathNode) void
setUnmarshalNodeValue
(NodeValue nodeValue) void
setXPathFragment
(XPathFragment xPathFragment) boolean
startElement
(MarshalRecord marshalRecord, XPathFragment anXPathFragment, Object object, CoreAbstractSession session, NamespaceResolver namespaceResolver, ObjectBuilder compositeObjectBuilder, Object compositeObject)
-
Constructor Details
-
XPathNode
public XPathNode()
-
-
Method Details
-
getXPathFragment
-
setXPathFragment
-
getNodeValue
-
setNodeValue
-
getUnmarshalNodeValue
-
setUnmarshalNodeValue
-
getMarshalNodeValue
-
setMarshalNodeValue
-
getNullCapableValue
-
setNullCapableValue
-
getParent
-
setParent
-
getAttributeChildren
-
getNonAttributeChildren
-
getSelfChildren
-
getNonAttributeChildrenMap
-
getAttributeChildrenMap
-
isChildrenLookupTableFilled
public boolean isChildrenLookupTableFilled(boolean isAttribute) -
setChildrenLookupTableFilled
public void setChildrenLookupTableFilled(boolean isAttribute) -
getChildrenLookupTable
-
setAnyAttributeNodeValue
-
getAnyAttributeNodeValue
-
getAnyAttributeNode
-
getAnyNode
-
setAnyNode
-
getNextNode
-
getTextNode
-
setTextNode
-
hasTypeChild
public boolean hasTypeChild() -
equals
-
hashCode
public int hashCode() -
addChild
public XPathNode addChild(XPathFragment anXPathFragment, NodeValue aNodeValue, NamespaceResolver namespaceResolver) -
hasPredicateSiblings
public boolean hasPredicateSiblings() -
marshal
public boolean marshal(MarshalRecord marshalRecord, Object object, CoreAbstractSession session, NamespaceResolver namespaceResolver, Marshaller marshaller, MarshalContext marshalContext, XPathFragment rootFragment) -
startElement
public boolean startElement(MarshalRecord marshalRecord, XPathFragment anXPathFragment, Object object, CoreAbstractSession session, NamespaceResolver namespaceResolver, ObjectBuilder compositeObjectBuilder, Object compositeObject) -
marshalSelfAttributes
public boolean marshalSelfAttributes(MarshalRecord marshalRecord, Object object, CoreAbstractSession session, NamespaceResolver namespaceResolver, Marshaller marshaller) Marshal any 'self' mapped attributes. -
isWhitespaceAware
public boolean isWhitespaceAware()
-