Package uk.ac.starlink.vo
Class DalResultStreamer
- java.lang.Object
-
- uk.ac.starlink.votable.TableContentHandler
-
- uk.ac.starlink.vo.DalResultStreamer
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler,uk.ac.starlink.votable.TableHandler
public class DalResultStreamer extends uk.ac.starlink.votable.TableContentHandler implements uk.ac.starlink.votable.TableHandlerSAX table handler for processing VOTable documents returned from DAL services. The result table has to be in a type="results" RESOURCE following DAL rules. The QUERY_STATUS INFO elements are understood, and a table marked with error status causes an exception to be thrown by the SAX parser. A successful parse streams the table data to a supplied sink.- Since:
- 10 Apr 2013
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Constructor Description DalResultStreamer(uk.ac.starlink.table.TableSink sink)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcharacters(char[] ch, int start, int length)voidendElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName)voidendTable()booleangetOverflow()Indicates whether the DAL result was marked as overflowing (with QUERY_STATUS INFO).voidrowData(java.lang.Object[] row)voidstartElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts)voidstartTable(uk.ac.starlink.table.StarTable meta)static booleanstreamResultTable(org.xml.sax.InputSource saxsrc, uk.ac.starlink.table.TableSink sink)Streams a DAL result table from a SAX source to a table sink.
-
-
-
Method Detail
-
getOverflow
public boolean getOverflow()
Indicates whether the DAL result was marked as overflowing (with QUERY_STATUS INFO). Will be set or not set after a successful parse.- Returns:
- true iff an overflow marker has been encountered
-
startElement
public void startElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes atts) throws org.xml.sax.SAXException- Specified by:
startElementin interfaceorg.xml.sax.ContentHandler- Overrides:
startElementin classuk.ac.starlink.votable.TableContentHandler- Throws:
org.xml.sax.SAXException
-
endElement
public void endElement(java.lang.String namespaceURI, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXException- Specified by:
endElementin interfaceorg.xml.sax.ContentHandler- Overrides:
endElementin classuk.ac.starlink.votable.TableContentHandler- Throws:
org.xml.sax.SAXException
-
characters
public void characters(char[] ch, int start, int length) throws org.xml.sax.SAXException- Specified by:
charactersin interfaceorg.xml.sax.ContentHandler- Overrides:
charactersin classuk.ac.starlink.votable.TableContentHandler- Throws:
org.xml.sax.SAXException
-
startTable
public void startTable(uk.ac.starlink.table.StarTable meta) throws org.xml.sax.SAXException- Specified by:
startTablein interfaceuk.ac.starlink.votable.TableHandler- Throws:
org.xml.sax.SAXException
-
rowData
public void rowData(java.lang.Object[] row) throws org.xml.sax.SAXException- Specified by:
rowDatain interfaceuk.ac.starlink.votable.TableHandler- Throws:
org.xml.sax.SAXException
-
endTable
public void endTable() throws org.xml.sax.SAXException- Specified by:
endTablein interfaceuk.ac.starlink.votable.TableHandler- Throws:
org.xml.sax.SAXException
-
streamResultTable
public static boolean streamResultTable(org.xml.sax.InputSource saxsrc, uk.ac.starlink.table.TableSink sink) throws java.io.IOException, org.xml.sax.SAXExceptionStreams a DAL result table from a SAX source to a table sink.- Parameters:
saxsrc- SAX event sourcesink- table destination- Returns:
- true iff the result was marked as overflowed
- Throws:
java.io.IOExceptionorg.xml.sax.SAXException
-
-