public class Vosi11TapMetaReader extends 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 and Description |
---|---|
static class |
Vosi11TapMetaReader.DetailMode
Enumeration for detail-preference mode of table metadata queries.
|
Constructor and Description |
---|
Vosi11TapMetaReader(URL tablesetUrl,
MetaNameFixer fixer,
ContentCoding coding,
Vosi11TapMetaReader.DetailMode detailMode)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
String |
getMeans()
Returns a textual indication of the method or protocol
this reader uses to acquire TAP metadata.
|
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(URL tablesetUrl, MetaNameFixer fixer, 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 String getMeans()
TapMetaReader
getMeans
in interface TapMetaReader
public String getSource()
TapMetaReader
getSource
in interface TapMetaReader
public SchemaMeta[] readSchemas() throws IOException
TapMetaReader
May be slow.
readSchemas
in interface TapMetaReader
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 callUnsupportedOperationException
- alwayspublic ColumnMeta[] readColumns(TableMeta table) throws IOException
TapMetaReader
May be slow. May throw UnsupportedOperationException if not needed.
readColumns
in interface TapMetaReader
table
- table containing columns; not altered by callIOException
public ForeignMeta[] readForeignKeys(TableMeta table) throws IOException
TapMetaReader
May be slow. May throw UnsupportedOperationException if not needed.
readForeignKeys
in interface TapMetaReader
table
- table containing columns; not altered by callIOException
Copyright © 2024 Central Laboratory of the Research Councils. All Rights Reserved.