# Class TestTableScheme

java.lang.Object
uk.ac.starlink.table.TestTableScheme

All Implemented Interfaces:
  `Documented, TableScheme`

public class TestTableScheme extends Object implements TableScheme, Documented
TableScheme implementation for test data.

Since:
  26 Apr 2021
Author:
  Mark Taylor

## Constructor Summary

Constructors
Constructor
Description
`TestTableScheme()`

## Method Summary

Modifier and Type
Method
Description
`StarTable`
`createTable(String spec)`
Turns a scheme-specific specification into a table.
`String`
`getExampleSpecification()`
Returns a scheme-specific specification string suitable for use in examples.
`String`
`getSchemeName()`
Returns the name of this scheme.
`String`
`getSchemeUsage()`
Returns a short, plain-text usage string.
`String`
`getXmlDescription()`
Returns user-directed documentation in XML format.

### Methods inherited from class Object

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

## Constructor Details

### TestTableScheme

public TestTableScheme()

## Method Details

### getSchemeName

public String getSchemeName()
Description copied from interface: `TableScheme`
Returns the name of this scheme. This string must be alphanumeric and should be short. It will be used between the colons in a table specification.

Specified by:
  `getSchemeName` in interface `TableScheme`
Returns:
  scheme name

### getSchemeUsage

public String getSchemeUsage()
Description copied from interface: `TableScheme`
Returns a short, plain-text usage string. This should just represent the legal syntax for the specification string.

Specified by:
  `getSchemeUsage` in interface `TableScheme`
Returns:
  usage syntax

### getExampleSpecification

public String getExampleSpecification()
Description copied from interface: `TableScheme`
Returns a scheme-specific specification string suitable for use in examples. It should return a table short enough to appear in textual documentation. If no suitable example is available, null may be returned.

Specified by:
  `getExampleSpecification` in interface `TableScheme`
Returns:
  scheme-specific specification (scheme name part not included), or null

### getXmlDescription

public String getXmlDescription()
Description copied from interface: `Documented`
Returns user-directed documentation in XML format.

The output should be a sequence of one or more <P> elements, using XHTML-like XML. Since rendering may be done in a number of contexts however, use of the full range of XHTML elements is discouraged. Where possible, the content should stick to simple markup such as the elements P, A, UL, OL, LI, DL, DT, DD EM, STRONG, I, B, CODE, TT, PRE.

Specified by:
  `getXmlDescription` in interface `Documented`
Returns:
  XML description of this object

### createTable

public StarTable createTable(String spec) throws TableFormatException
Description copied from interface: `TableScheme`
Turns a scheme-specific specification into a table. In case of any error, an exception should be thrown.

Specified by:
  `createTable` in interface `TableScheme`
Parameters:
  `spec` - scheme-specific table specification (scheme name part is not included)
Returns:
  created table, not null
Throws:
  `TableFormatException` - if the format of the specification is syntactically incorrect (will typically provoke an error containing the schemeUsage string)