public class JoinStarTable extends AbstractStarTable
While this table is active, the columns that the constituent tables had at the time of its construction shouldn't change their characteristics in incompatible ways or disappear. It's OK to add new columns though.
Constructor and Description |
---|
JoinStarTable(StarTable[] tables)
Constructs a new JoinStarTable from a list of constituent tables.
|
JoinStarTable(StarTable[] tables,
JoinFixAction[] fixCols)
Constructs a new JoinStarTable from a list of constituent tables,
optionally renaming duplicated column names.
|
Modifier and Type | Method and Description |
---|---|
void |
close()
Closes all the constituent tables.
|
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. |
int |
getColumnCount()
Returns the number of columns in this table.
|
ColumnInfo |
getColumnInfo(int icol)
Returns the object describing the data in a given column.
|
java.lang.Object[] |
getRow(long irow)
The
AbstractStarTable implementation of this method
constructs a row by repeated invocation of AbstractStarTable.getCell(long, int) . |
RowAccess |
getRowAccess()
Returns an object which can provide random access to this
table's data, if random access is implemented.
|
long |
getRowCount()
Returns the number of rows in this table, if known.
|
RowSequence |
getRowSequence()
Returns an object which can iterate over all the rows in the table
sequentially.
|
java.util.List<StarTable> |
getTables()
Returns an unmodifiable list of the constituent tables providing the
base data for this join table.
|
boolean |
isRandom()
The
AbstractStarTable implementation of this method
returns false . |
checkedLongToInt, getColumnAuxDataInfos, getName, getParameters, getRowSplittable, getURL, setName, setParameters, setURL
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getParameterByName, setParameter
public JoinStarTable(StarTable[] tables, JoinFixAction[] fixCols)
tables
- array of constituent table objects providing the
data and metadata for a new joined tablefixCols
- actions to be taken in modifying column names from
the originals (may be null for no action)public JoinStarTable(StarTable[] tables)
tables
- array of constituent table objects providing the
data and metadata for a new joined tablepublic java.util.List<StarTable> getTables()
public int getColumnCount()
StarTable
getColumnCount
in interface StarTable
getColumnCount
in class AbstractStarTable
public long getRowCount()
StarTable
getRowCount
in interface StarTable
getRowCount
in class AbstractStarTable
public ColumnInfo getColumnInfo(int icol)
StarTable
getColumnInfo
in interface StarTable
getColumnInfo
in class AbstractStarTable
icol
- the column for which header information is requiredicol
public boolean isRandom()
AbstractStarTable
AbstractStarTable
implementation of this method
returns false
.isRandom
in interface StarTable
isRandom
in class AbstractStarTable
true
if table random access methods are availablepublic java.lang.Object getCell(long irow, int icol) throws java.io.IOException
AbstractStarTable
AbstractStarTable
implementation of this method
throws an UnsupportedOperationException
,
since unless otherwise provided there is no random access.getCell
in interface StarTable
getCell
in class AbstractStarTable
irow
- the index of the cell's rowicol
- the index of the cell's columnjava.io.IOException
- if there is an error reading the datapublic java.lang.Object[] getRow(long irow) throws java.io.IOException
AbstractStarTable
AbstractStarTable
implementation of this method
constructs a row by repeated invocation of AbstractStarTable.getCell(long, int)
.getRow
in interface StarTable
getRow
in class AbstractStarTable
irow
- the index of the row to retrieveirow
java.io.IOException
- if there is an error reading the datapublic RowSequence getRowSequence() throws java.io.IOException
StarTable
getRowSequence
in interface StarTable
getRowSequence
in class AbstractStarTable
java.io.IOException
- if there is an error providing accesspublic RowAccess getRowAccess() throws java.io.IOException
StarTable
getRowAccess
in interface StarTable
getRowAccess
in class AbstractStarTable
java.io.IOException
- if there is an error setting up accesspublic void close() throws java.io.IOException
close
in interface java.io.Closeable
close
in interface java.lang.AutoCloseable
close
in interface StarTable
close
in class AbstractStarTable
java.io.IOException