Interface MultiTableBuilder

All Superinterfaces:
TableBuilder

public interface MultiTableBuilder extends TableBuilder
Interface for objects which can construct an array of StarTables from a data resource. In most cases, this interface should be implemented by objects which also implement TableBuilder, but which additionally know how to read more than one table at a time.
Since:
22 Oct 2009
Author:
Mark Taylor
  • Method Details

    • makeStarTables

      TableSequence makeStarTables(uk.ac.starlink.util.DataSource datsrc, StoragePolicy storagePolicy) throws IOException
      Constructs a sequence of StarTables based on a given DataSource. If the source is not recognised or this object does not know how to make tables from it, then a TableFormatException should be thrown. If this builder thinks it should be able to handle the source but an error occurs during processing, an IOException can be thrown.

      If the position of the data source is not null, then this method should return a sequence containing a single table, the one which would be returned by the makeStarTable method with that position.

      Parameters:
      datsrc - the DataSource containing the table resource
      storagePolicy - a StoragePolicy object which may be used to supply scratch storage if the builder needs it
      Returns:
      an array of StarTables read from datsrc
      Throws:
      TableFormatException - if the table is not of a kind that can be handled by this handler
      IOException - if an unexpected I/O error occurs during processing