Class DalResultStreamer
java.lang.Object
uk.ac.starlink.votable.TableContentHandler
uk.ac.starlink.vo.DalResultStreamer
- All Implemented Interfaces:
ContentHandler, uk.ac.starlink.votable.TableHandler
public class DalResultStreamer
extends uk.ac.starlink.votable.TableContentHandler
implements uk.ac.starlink.votable.TableHandler
SAX 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 -
Method Summary
Modifier and TypeMethodDescriptionvoidcharacters(char[] ch, int start, int length) voidendElement(String namespaceURI, String localName, String qName) voidendTable()booleanIndicates whether the DAL result was marked as overflowing (with QUERY_STATUS INFO).voidvoidstartElement(String namespaceURI, String localName, String qName, Attributes atts) voidstartTable(uk.ac.starlink.table.StarTable meta) static booleanstreamResultTable(InputSource saxsrc, uk.ac.starlink.table.TableSink sink) Streams a DAL result table from a SAX source to a table sink.Methods inherited from class uk.ac.starlink.votable.TableContentHandler
endDocument, endPrefixMapping, getLocator, getReadHrefTables, getTableHandler, ignorableWhitespace, processingInstruction, setDocumentLocator, setReadHrefTables, setTableHandler, skippedEntity, startDocument, startPrefixMappingMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ContentHandler
declaration
-
Constructor Details
-
DalResultStreamer
public DalResultStreamer(uk.ac.starlink.table.TableSink sink) Constructor.- Parameters:
sink- table destination
-
-
Method Details
-
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(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException - Specified by:
startElementin interfaceContentHandler- Overrides:
startElementin classuk.ac.starlink.votable.TableContentHandler- Throws:
SAXException
-
endElement
- Specified by:
endElementin interfaceContentHandler- Overrides:
endElementin classuk.ac.starlink.votable.TableContentHandler- Throws:
SAXException
-
characters
- Specified by:
charactersin interfaceContentHandler- Overrides:
charactersin classuk.ac.starlink.votable.TableContentHandler- Throws:
SAXException
-
startTable
- Specified by:
startTablein interfaceuk.ac.starlink.votable.TableHandler- Throws:
SAXException
-
rowData
- Specified by:
rowDatain interfaceuk.ac.starlink.votable.TableHandler- Throws:
SAXException
-
endTable
- Specified by:
endTablein interfaceuk.ac.starlink.votable.TableHandler- Throws:
SAXException
-
streamResultTable
public static boolean streamResultTable(InputSource saxsrc, uk.ac.starlink.table.TableSink sink) throws IOException, SAXException Streams 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:
IOExceptionSAXException
-