uk.ac.starlink.datanode.nodes
Class DocumentDataNode

java.lang.Object
  extended by uk.ac.starlink.datanode.nodes.DefaultDataNode
      extended by 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
DocumentDataNode(Source xsrc)
           
DocumentDataNode(XMLDocument xdoc)
           
 
Method Summary
 boolean allowsChildren()
          The DefaultDataNode implementation of this method returns false.
protected  void checkTopElement(String localName, String namespaceURI)
           
protected  void checkTopLocalName(String localName)
           
 void configureDetail(DetailViewer dv)
          No custom configuration is performed.
 Iterator getChildIterator()
          The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren() is false).
protected  Iterator getChildIterator(Node parentNode)
           
protected  DOMSource getDocument()
          Returns a DOMSource corresponding to the XMLDocument underlying this data node.
 String getNodeTLA()
          The DefaultDataNode implementation returns the string "...".
 String getNodeType()
          Returns a short sentence indicating what kind of node this is.
 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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DocumentDataNode

public DocumentDataNode(XMLDocument xdoc)

DocumentDataNode

public DocumentDataNode(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 interface DataNode
Overrides:
allowsChildren in class DefaultDataNode
Returns:
true if the node is of a type which can have child nodes, false otherwise

getNodeTLA

public String getNodeTLA()
Description copied from class: DefaultDataNode
The DefaultDataNode implementation returns the string "...".

Specified by:
getNodeTLA in interface DataNode
Overrides:
getNodeTLA in class DefaultDataNode
Returns:
"..."

getNodeType

public 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 interface DataNode
Overrides:
getNodeType in class DefaultDataNode
Returns:
a short description of the type of this DataNode

getPathSeparator

public String getPathSeparator()
Description copied from class: DefaultDataNode
Returns a default separator string.

Specified by:
getPathSeparator in interface DataNode
Overrides:
getPathSeparator in class DefaultDataNode
Returns:
"."

checkTopElement

protected void checkTopElement(String localName,
                               String namespaceURI)
                        throws NoSuchDataException
Throws:
NoSuchDataException

checkTopLocalName

protected void checkTopLocalName(String localName)
                          throws NoSuchDataException
Throws:
NoSuchDataException

getChildIterator

protected Iterator getChildIterator(Node parentNode)

getChildIterator

public Iterator getChildIterator()
Description copied from class: DefaultDataNode
The DefaultDataNode implementation of this method throws UnsupportedOperationException (DefaultDataNode.allowsChildren() is false).

Specified by:
getChildIterator in interface DataNode
Overrides:
getChildIterator in class DefaultDataNode
Returns:
an Iterator over the children. Each object iterated over should be a DataNode. Behaviour is undefined if this method is called on an object for which allowsChildren returns false.

configureDetail

public void configureDetail(DetailViewer dv)
Description copied from class: DefaultDataNode
No custom configuration is performed.

Specified by:
configureDetail in interface DataNode
Overrides:
configureDetail in class DefaultDataNode
Parameters:
dv - the detail viewer which this node is given an opportunity to configure

getDocument

protected DOMSource getDocument()
                         throws IOException,
                                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:
IOException
SAXException


Copyright © 2015 Central Laboratory of the Research Councils. All Rights Reserved.