Package uk.ac.starlink.vo

# Class GlotsServiceFinder

java.lang.Object
uk.ac.starlink.vo.GlotsServiceFinder

All Implemented Interfaces:
  `TapServiceFinder`

public class GlotsServiceFinder extends Object implements TapServiceFinder
TapServiceFinder implementation that uses the GloTS schema maintained (at time of writing) at the GAVO Data Center. GloTS is a non-standard registry containing metadata gathered by hook or by crook from all known registered TAP services.

It is not very respectable to use this resource; the correct way to find out this kind of thing is using the standard interfaces of the IVOA Registry. However, at time of writing (June 2015) the Registry does not contain sufficiently detailed metadata (in particular, lists of table names and descriptions for each service) to do the job, while GloTS does.

Since:
  30 Jun 2015
Author:
  Mark Taylor

## Nested Class Summary

## Nested classes/interfaces inherited from interface uk.ac.starlink.vo.TapServiceFinder

`TapServiceFinder.Constraint, TapServiceFinder.Service, TapServiceFinder.Table, TapServiceFinder.Target`

## Field Summary

Fields
Modifier and Type
Field
Description
`static final String`
`GAVO_DC_TAP_URL`

## Constructor Summary

Constructors
Constructor
Description
`GlotsServiceFinder()`
Constructs a default instance.
`GlotsServiceFinder(TapService glotsService, uk.ac.starlink.util.ContentCoding coding)`
Constructs an instance with custom configuration.

## Method Summary

Modifier and Type
Method
Description
`TapServiceFinder.Service[]`
`readAllServices()`
Reads basic metadata about all known TAP services.
`TapServiceFinder.Table[]`
`readSelectedTables(TapServiceFinder.Constraint constraint)`
Locates a list of tables from a global list of all known tables served by all known TAP services that satisfy a given constraint.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Field Details

### GAVO_DC_TAP_URL

public static final String GAVO_DC_TAP_URL

See Also:
  - Constant Field Values

## Constructor Details

### GlotsServiceFinder

public GlotsServiceFinder()
Constructs a default instance.

### GlotsServiceFinder

public GlotsServiceFinder(TapService glotsService, uk.ac.starlink.util.ContentCoding coding)
Constructs an instance with custom configuration.

Parameters:
  `glotsService` - TAP service description for a service containing GloTS tables
  `coding` - controls HTTP-level compression during TAP queries

## Method Details

### readAllServices

public TapServiceFinder.Service[] readAllServices() throws IOException
Description copied from interface: `TapServiceFinder`
Reads basic metadata about all known TAP services. May be slow.

Specified by:
  `readAllServices` in interface `TapServiceFinder`
Returns:
  list of TAP services
Throws:
  `IOException`

### readSelectedTables

public TapServiceFinder.Table[] readSelectedTables(TapServiceFinder.Constraint constraint) throws IOException
Description copied from interface: `TapServiceFinder`
Locates a list of tables from a global list of all known tables served by all known TAP services that satisfy a given constraint.

Specified by:
  `readSelectedTables` in interface `TapServiceFinder`
Parameters:
  `constraint` - object indicating the tables of interest
Returns:
  list of tables matching constraint
Throws:
  `IOException`