TapMetaReader
public class Vosi11TapMetaReader extends java.lang.Object implements TapMetaReader
Services may return tables without column and foreign key metadata
(table elements have no column children). If such a table is retrieved,
the detailed metadata may be obtained from a child URL /tables/(table-name).
The service may accept a detail
parameter for the /tables URL,
with possible values min
or max
(that is /tables?detail=min
or /tables?detail=max)
to give it a non-binding hint about whether detail is returned
in child tables.
Modifier and Type | Class | Description |
---|---|---|
static class |
Vosi11TapMetaReader.DetailMode |
Enumeration for detail-preference mode of table metadata queries.
|
Constructor | Description |
---|---|
Vosi11TapMetaReader(java.net.URL tablesetUrl,
MetaNameFixer fixer,
uk.ac.starlink.util.ContentCoding coding,
Vosi11TapMetaReader.DetailMode detailMode) |
Constructor.
|
Modifier and Type | Method | Description |
---|---|---|
java.lang.String |
getMeans() |
Returns a textual indication of the method or protocol
this reader uses to acquire TAP metadata.
|
java.lang.String |
getSource() |
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.
|
public Vosi11TapMetaReader(java.net.URL tablesetUrl, MetaNameFixer fixer, uk.ac.starlink.util.ContentCoding coding, Vosi11TapMetaReader.DetailMode detailMode)
tablesetUrl
- URL of VOSI1.1-like TAP tableset servicefixer
- 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-codingdetailMode
- detail modepublic java.lang.String getMeans()
TapMetaReader
getMeans
in interface TapMetaReader
public java.lang.String getSource()
TapMetaReader
getSource
in interface TapMetaReader
public SchemaMeta[] readSchemas() throws java.io.IOException
TapMetaReader
May be slow.
readSchemas
in interface TapMetaReader
java.io.IOException
public TableMeta[] readTables(SchemaMeta schema)
TapMetaReader
May be slow. May throw UnsupportedOperationException if not needed.
readTables
in interface TapMetaReader
schema
- schema containing tables; not altered by calljava.lang.UnsupportedOperationException
public ColumnMeta[] readColumns(TableMeta table) throws java.io.IOException
TapMetaReader
May be slow. May throw UnsupportedOperationException if not needed.
readColumns
in interface TapMetaReader
table
- table containing columns; not altered by calljava.io.IOException
public ForeignMeta[] readForeignKeys(TableMeta table) throws java.io.IOException
TapMetaReader
May be slow. May throw UnsupportedOperationException if not needed.
readForeignKeys
in interface TapMetaReader
table
- table containing columns; not altered by calljava.io.IOException
Copyright © 2018 Central Laboratory of the Research Councils. All Rights Reserved.