|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--uk.ac.starlink.table.Tables
Utility class for miscellaneous table-related functionality.
Field Summary | |
static DefaultValueInfo |
DEC_INFO
ValueInfo representing Declination. |
static ValueInfo |
NULL_VALUE_INFO
ValueInfo which may be used as part of a column's metadata to indicate a special value (preferably a Number
that should be interpreted as a null (blank). |
static DefaultValueInfo |
RA_INFO
ValueInfo representing Right Ascension. |
Constructor Summary | |
Tables()
|
Method Summary | |
static int |
checkedLongToInt(long lval)
Convenience method to get an int value from a long. |
static void |
checkTable(StarTable table)
Diagnostic method which tests the invariants of a StarTable. |
static StarTable |
deleteColumn(StarTable startab,
int icol)
Returns a table equivalent to the original but with a given column deleted. |
static ColumnInfo[] |
getColumnInfos(StarTable startab)
Convenience method to return an array of all the column headers in a given table. |
static String[] |
getElementLabels(int[] shape)
Returns an array of strings suitable as labels or label suffixes for elements of an array as returned by ValueInfo.getShape() . |
static boolean |
isBlank(Object value)
Indicates whether a given value is conventionally regarded as a blank value. |
static StarTable |
randomTable(StarTable startab)
Returns a table based on a given table and guaranteed to have random access. |
static StarTable |
sortTable(StarTable table,
int[] colIndices,
boolean up,
boolean nullsLast)
Returns a sorted version of a table. |
static void |
streamStarTable(StarTable source,
TableSink sink)
Copies the data and metadata from a StarTable into a table sink. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final ValueInfo NULL_VALUE_INFO
Number
that should be interpreted as a null (blank).
This should only be used on nullable columns, and really only
on ones with a contentClass which is an integer (or possibly boolean)
type; for other types, there is usually a value which can
conventionally be understood to mean blank.
Note this is here as a standard key to use when software components
wish to communicate this information; the table system does not
guarantee to honour instances of this value in a column's
auxiliary data. It is the job of a StarTable instance to ensure
that a null is returned from the table interrogation methods
if that is what is meant.
public static final DefaultValueInfo RA_INFO
public static final DefaultValueInfo DEC_INFO
Constructor Detail |
public Tables()
Method Detail |
public static StarTable randomTable(StarTable startab) throws IOException
This convenience method is equivalent to calling StoragePolicy.getDefaultPolicy().randomTable(startab).
IOException
public static ColumnInfo[] getColumnInfos(StarTable startab)
startab
- the table being enquired about
public static StarTable deleteColumn(StarTable startab, int icol)
startab
- the table from which to delete a columnicol
- the index of the column to be deleted
IndexOutOfBoundsException
- if startab has no column
at icolpublic static void streamStarTable(StarTable source, TableSink sink) throws IOException
source
- table to be copiedsink
- table destination
IOException
public static void checkTable(StarTable table) throws IOException
That a table passes this test does not guarantee that the table has no bugs. This method should not generally be used in production code, since it may be expensive in time and/or memory.
table
- table to test
AssertionError
- if an invariant is violated
IOException
- if there is an I/O errorpublic static boolean isBlank(Object value)
value
- value to test
public static StarTable sortTable(StarTable table, int[] colIndices, boolean up, boolean nullsLast) throws IOException
table
- table to sort - must be random accesscolIndices
- indices of the columns which are to act as sort
keys; first element is primary key etcup
- true for sorting into ascending order, false for
descending ordernullsLast
- true if blank values should be considered
last in the collation order, false if they should
be considered first
IOException
- if table.isRandom is not truepublic static int checkedLongToInt(long lval)
IllegalArgumentException
- if the conversion cannot be donepublic static String[] getElementLabels(int[] shape)
ValueInfo.getShape()
.
If the given shape cannot be decomposed into a fixed
size array, returns null.
shape
- vector giving dimensions of an array value
|
Copyright © 2004 CLRC: Central Laboratory of the Research Councils. All rights reserved. | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |