public abstract class AbstractStarTable extends java.lang.Object implements StarTable
Constructor and Description |
---|
AbstractStarTable() |
Modifier and Type | Method and Description |
---|---|
static int |
checkedLongToInt(long lval)
Convenience method to get an int value from a long.
|
void |
close()
The AbstractStarTable implementation of this method
does nothing.
|
java.lang.Object |
getCell(long irow,
int icol)
The AbstractStarTable implementation of this method throws an
UnsupportedOperationException, since unless otherwise
provided there is no random access.
|
java.util.List<ValueInfo> |
getColumnAuxDataInfos()
Goes through the table columns (ColumnInfo objects)
and picks out all the AuxData items which exist, generalising
where necessary and returning a union of them in
alphabetical order by name.
|
abstract int |
getColumnCount()
Returns the number of columns in this table.
|
abstract ColumnInfo |
getColumnInfo(int icol)
Returns the object describing the data in a given column.
|
java.lang.String |
getName()
Returns the name of this table, if it has one.
|
java.util.List<DescribedValue> |
getParameters()
Returns a list of table parameters, that is metadata items
which pertain to the entire table.
|
java.lang.Object[] |
getRow(long irow)
The AbstractStarTable implementation of this method
constructs a row by repeated invocation of
getCell(long, int) . |
RowAccess |
getRowAccess()
Returns an object which can provide random access to this
table's data, if random access is implemented.
|
abstract long |
getRowCount()
Returns the number of rows in this table, if known.
|
abstract RowSequence |
getRowSequence()
Returns an object which can iterate over all the rows in the table
sequentially.
|
RowSplittable |
getRowSplittable()
Returns a default splittable which relies on table random access
if available, or otherwise provides only sequential access (no splits).
|
java.net.URL |
getURL()
Returns the URL of this table, if it has one.
|
boolean |
isRandom()
The AbstractStarTable implementation of this method
returns false.
|
void |
setName(java.lang.String name)
Sets the name for this table.
|
void |
setParameters(java.util.List<DescribedValue> parameters)
Sets the list of table parameters, that is items which pertain
to the entire table.
|
void |
setURL(java.net.URL url)
Sets the URL for this table.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParameterByName, setParameter
public java.util.List<ValueInfo> getColumnAuxDataInfos()
getColumnAuxDataInfos
in interface StarTable
DefaultValueInfo.getAuxData()
public java.util.List<DescribedValue> getParameters()
StarTable
getParameters
in interface StarTable
public void setParameters(java.util.List<DescribedValue> parameters)
DescribedValue
object.parameters
- a List of DescribedValues pertaining
to this tablepublic java.lang.String getName()
StarTable
public void setName(java.lang.String name)
public java.net.URL getURL()
StarTable
public void setURL(java.net.URL url)
public static int checkedLongToInt(long lval)
Tables.checkedLongToInt(long)
.public boolean isRandom()
public RowAccess getRowAccess() throws java.io.IOException
StarTable
getRowAccess
in interface StarTable
java.io.IOException
- if there is an error setting up accesspublic RowSplittable getRowSplittable() throws java.io.IOException
It is often possible to provide a better implementation than this.
getRowSplittable
in interface StarTable
Tables.getDefaultRowSplittable(this)
java.io.IOException
RowRunner
public java.lang.Object getCell(long irow, int icol) throws java.io.IOException
public java.lang.Object[] getRow(long irow) throws java.io.IOException
getCell(long, int)
.public void close() throws java.io.IOException
public abstract ColumnInfo getColumnInfo(int icol)
StarTable
getColumnInfo
in interface StarTable
icol
- the column for which header information is requiredpublic abstract int getColumnCount()
StarTable
getColumnCount
in interface StarTable
public abstract long getRowCount()
StarTable
getRowCount
in interface StarTable
public abstract RowSequence getRowSequence() throws java.io.IOException
StarTable
getRowSequence
in interface StarTable
java.io.IOException
- if there is an error providing access