Package uk.ac.starlink.datanode.nodes
Class DocumentDataNode
- java.lang.Object
-
- uk.ac.starlink.datanode.nodes.DefaultDataNode
-
- uk.ac.starlink.datanode.nodes.DocumentDataNode
-
- All Implemented Interfaces:
DataNode
- Direct Known Subclasses:
VOTableDataNode
public class DocumentDataNode extends DefaultDataNode
DataNode implementation which describes a top-level XML document. DOM building is deferred.- Author:
- Mark Taylor (Starlink)
-
-
Constructor Summary
Constructors Constructor Description DocumentDataNode(javax.xml.transform.Source xsrc)
DocumentDataNode(XMLDocument xdoc)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
allowsChildren()
The DefaultDataNode implementation of this method returns false.protected void
checkTopElement(java.lang.String localName, java.lang.String namespaceURI)
protected void
checkTopLocalName(java.lang.String localName)
void
configureDetail(DetailViewer dv)
No custom configuration is performed.java.util.Iterator
getChildIterator()
The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren()
is false).protected java.util.Iterator
getChildIterator(org.w3c.dom.Node parentNode)
protected javax.xml.transform.dom.DOMSource
getDocument()
Returns a DOMSource corresponding to the XMLDocument underlying this data node.java.lang.String
getNodeTLA()
The DefaultDataNode implementation returns the string "...".java.lang.String
getNodeType()
Returns a short sentence indicating what kind of node this is.java.lang.String
getPathSeparator()
Returns a default separator string.-
Methods inherited from class uk.ac.starlink.datanode.nodes.DefaultDataNode
beep, getChildMaker, getCreator, getDataObject, getDescription, getIcon, getLabel, getName, getParentObject, getPathElement, hasDataObject, makeChild, makeErrorChild, registerDataObject, setChildMaker, setCreator, setDescription, setIconID, setLabel, setName, setParentObject, toString
-
-
-
-
Constructor Detail
-
DocumentDataNode
public DocumentDataNode(XMLDocument xdoc)
-
DocumentDataNode
public DocumentDataNode(javax.xml.transform.Source xsrc) throws NoSuchDataException
- Throws:
NoSuchDataException
-
-
Method Detail
-
allowsChildren
public boolean allowsChildren()
Description copied from class:DefaultDataNode
The DefaultDataNode implementation of this method returns false.- Specified by:
allowsChildren
in interfaceDataNode
- Overrides:
allowsChildren
in classDefaultDataNode
- Returns:
true
if the node is of a type which can have child nodes,false
otherwise
-
getNodeTLA
public java.lang.String getNodeTLA()
Description copied from class:DefaultDataNode
The DefaultDataNode implementation returns the string "...".- Specified by:
getNodeTLA
in interfaceDataNode
- Overrides:
getNodeTLA
in classDefaultDataNode
- Returns:
- "..."
-
getNodeType
public java.lang.String getNodeType()
Description copied from interface:DataNode
Returns a short sentence indicating what kind of node this is. The return value should be just a few words. As a rough guideline it should indicate what the implementing class is.- Specified by:
getNodeType
in interfaceDataNode
- Overrides:
getNodeType
in classDefaultDataNode
- Returns:
- a short description of the type of this
DataNode
-
getPathSeparator
public java.lang.String getPathSeparator()
Description copied from class:DefaultDataNode
Returns a default separator string.- Specified by:
getPathSeparator
in interfaceDataNode
- Overrides:
getPathSeparator
in classDefaultDataNode
- Returns:
- "."
-
checkTopElement
protected void checkTopElement(java.lang.String localName, java.lang.String namespaceURI) throws NoSuchDataException
- Throws:
NoSuchDataException
-
checkTopLocalName
protected void checkTopLocalName(java.lang.String localName) throws NoSuchDataException
- Throws:
NoSuchDataException
-
getChildIterator
protected java.util.Iterator getChildIterator(org.w3c.dom.Node parentNode)
-
getChildIterator
public java.util.Iterator getChildIterator()
Description copied from class:DefaultDataNode
The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren()
is false).- Specified by:
getChildIterator
in interfaceDataNode
- Overrides:
getChildIterator
in classDefaultDataNode
- Returns:
- an
Iterator
over the children. Each object iterated over should be aDataNode
. Behaviour is undefined if this method is called on an object for whichallowsChildren
returnsfalse
.
-
configureDetail
public void configureDetail(DetailViewer dv)
Description copied from class:DefaultDataNode
No custom configuration is performed.- Specified by:
configureDetail
in interfaceDataNode
- Overrides:
configureDetail
in classDefaultDataNode
- Parameters:
dv
- the detail viewer which this node is given an opportunity to configure
-
getDocument
protected javax.xml.transform.dom.DOMSource getDocument() throws java.io.IOException, org.xml.sax.SAXException
Returns a DOMSource corresponding to the XMLDocument underlying this data node. Its node will be a Document node. If the DOM is not already available a parse will be performed to construct it.- Throws:
java.io.IOException
org.xml.sax.SAXException
-
-