Package uk.ac.starlink.vo
Class VizierTapMetaReader
- java.lang.Object
-
- uk.ac.starlink.vo.VizierTapMetaReader
-
- All Implemented Interfaces:
TapMetaReader
public class VizierTapMetaReader extends java.lang.Object implements TapMetaReader
TapMetaReader implementation that works with VizieR's non-standard tableset endpoint. The /tables endpoint gives you table-less schemas, and you can get the table documents by appending the table name to the tables URL. Details of what's quoted when seem to be in flux at time of writing, so the implementation may need adjustment.- Since:
- 14 May 2015
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Constructor Description VizierTapMetaReader(java.net.URL tablesetUrl, MetaNameFixer fixer, uk.ac.starlink.util.ContentCoding coding)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.StringgetMeans()Returns a textual indication of the method or protocol this reader uses to acquire TAP metadata.java.lang.StringgetSource()Returns a textual indication of where the metadata is coming from, typically a URL.ColumnMeta[]readColumns(TableMeta table)Acquires metadata about columns in a given table from a TAP service.ForeignMeta[]readForeignKeys(TableMeta table)Acquires metadata about foreign keys in a given table from a TAP service.SchemaMeta[]readSchemas()Acquires metadata about schemas in a TAP service.TableMeta[]readTables(SchemaMeta schema)Acquires metadata about tables in a given schema from a TAP service.
-
-
-
Constructor Detail
-
VizierTapMetaReader
public VizierTapMetaReader(java.net.URL tablesetUrl, MetaNameFixer fixer, uk.ac.starlink.util.ContentCoding coding)Constructor.- Parameters:
tablesetUrl- URL of TAPVizieR service followed by /tablesfixer- object that fixes up syntactically incorrect table/column names; if null no fixing is done; has no effect for compliant VODataService documentscoding- configures HTTP content-coding
-
-
Method Detail
-
readSchemas
public SchemaMeta[] readSchemas() throws java.io.IOException
Description copied from interface:TapMetaReaderAcquires metadata about schemas in a TAP service.May be slow.
- Specified by:
readSchemasin interfaceTapMetaReader- Returns:
- schema metadata array
- Throws:
java.io.IOException
-
readColumns
public ColumnMeta[] readColumns(TableMeta table) throws java.io.IOException
Description copied from interface:TapMetaReaderAcquires metadata about columns in a given table from a TAP service.May be slow. May throw UnsupportedOperationException if not needed.
- Specified by:
readColumnsin interfaceTapMetaReader- Parameters:
table- table containing columns; not altered by call- Returns:
- column metadata array
- Throws:
java.io.IOException
-
readForeignKeys
public ForeignMeta[] readForeignKeys(TableMeta table) throws java.io.IOException
Description copied from interface:TapMetaReaderAcquires metadata about foreign keys in a given table from a TAP service.May be slow. May throw UnsupportedOperationException if not needed.
- Specified by:
readForeignKeysin interfaceTapMetaReader- Parameters:
table- table containing columns; not altered by call- Returns:
- foreign key metadata array
- Throws:
java.io.IOException
-
readTables
public TableMeta[] readTables(SchemaMeta schema)
Description copied from interface:TapMetaReaderAcquires metadata about tables in a given schema from a TAP service.May be slow. May throw UnsupportedOperationException if not needed.
- Specified by:
readTablesin interfaceTapMetaReader- Parameters:
schema- schema containing tables; not altered by call- Returns:
- table metadata array
- Throws:
java.lang.UnsupportedOperationException- always
-
getSource
public java.lang.String getSource()
Description copied from interface:TapMetaReaderReturns a textual indication of where the metadata is coming from, typically a URL.- Specified by:
getSourcein interfaceTapMetaReader- Returns:
- address of metadata
-
getMeans
public java.lang.String getMeans()
Description copied from interface:TapMetaReaderReturns a textual indication of the method or protocol this reader uses to acquire TAP metadata.- Specified by:
getMeansin interfaceTapMetaReader- Returns:
- short description of metadata acquisition method
-
-