Class JDBCTableScheme

java.lang.Object
uk.ac.starlink.table.jdbc.JDBCTableScheme
All Implemented Interfaces:
Documented, TableScheme

public class JDBCTableScheme extends Object implements TableScheme, Documented
TableScheme for intepreting JDBC-type URLs. The full specification ("jdbc:..." - no leading colon) is a JDBC URL as used by the JDBC system.

For historical reasons, the JDBCAuthenticator used by this scheme is managed by an associated StarTableFactory, which must be supplied at construction time.

Since:
20 Jul 2020
Author:
Mark Taylor
  • Constructor Details

    • JDBCTableScheme

      public JDBCTableScheme(StarTableFactory tfact)
      Constructor.
      Parameters:
      tfact - table factory
  • 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 IOException
      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:
      IOException - if there is some other error in creating the table