Package uk.ac.starlink.table.formats
Class DocumentedTableBuilder
- java.lang.Object
-
- uk.ac.starlink.table.formats.DocumentedTableBuilder
-
- All Implemented Interfaces:
Documented
,DocumentedIOHandler
,TableBuilder
- Direct Known Subclasses:
AsciiTableBuilder
,CsvTableBuilder
,IpacTableBuilder
,MrtTableBuilder
,TstTableBuilder
,WDCTableBuilder
public abstract class DocumentedTableBuilder extends java.lang.Object implements TableBuilder, DocumentedIOHandler
Partial TableBuilder implementation that adds some behaviour useful when auto-generating XML user documentation for I/O handlers.- Since:
- 18 Sep 2020
- Author:
- Mark Taylor
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
DocumentedTableBuilder(java.lang.String[] extensions)
Constructor.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract boolean
canStream()
Indicates whether this handler can read tables from a stream.java.lang.String[]
getExtensions()
Returns the list of filename extensions recognised by this handler.boolean
looksLikeFile(java.lang.String filename)
Indicates whether the given location string is of a familiar form for this builder.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface uk.ac.starlink.table.Documented
getXmlDescription
-
Methods inherited from interface uk.ac.starlink.table.formats.DocumentedIOHandler
docIncludesExample, readText
-
Methods inherited from interface uk.ac.starlink.table.TableBuilder
canImport, getFormatName, makeStarTable, streamStarTable
-
-
-
-
Method Detail
-
getExtensions
public java.lang.String[] getExtensions()
Description copied from interface:DocumentedIOHandler
Returns the list of filename extensions recognised by this handler.- Specified by:
getExtensions
in interfaceDocumentedIOHandler
- Returns:
- lower-cased filename extension strings, no "." characters
-
looksLikeFile
public boolean looksLikeFile(java.lang.String filename)
Description copied from interface:TableBuilder
Indicates whether the given location string is of a familiar form for this builder. Implementations should returntrue
if there is a good chance that a file with the givenlocation
can be interpreted by this reader, for instance if it has a suitable file extension.This method may be used to guess, on a best-efforts basis, whether this builder is suitable for reading a file from a given location. Attempts may still be made to read inputs for which this method returns false. It is less important for builders that can recognise files by magic number, which is generally preferable to using filenames.
- Specified by:
looksLikeFile
in interfaceTableBuilder
- Parameters:
filename
- the location string, such as a filename or URL (not null)- Returns:
- true iff there is a good chance that the named input can be interpreted by this reader
-
canStream
public abstract boolean canStream()
Indicates whether this handler can read tables from a stream.- Returns:
- true iff this handler can read from streams
-
-