Class ColumnHolder<T>
java.lang.Object
io.deephaven.engine.table.impl.util.ColumnHolder<T>
Data to construct a data column.
-
Field Summary
FieldsModifier and TypeFieldDescriptionfinal Class<?>
The data's component type of the column.The data type of the column.final boolean
Should the result column be grouped (used for test data only).final String
The name of the column.static final ColumnHolder[]
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
ColumnHolder
(boolean chunkSentinel, String name, Class<?> dataType, Class<?> componentType, boolean grouped, Chunk<Values> chunkData) Construct a new set of column data with a specified type using a chunk.ColumnHolder
(String name, boolean grouped, byte... arrayData) Construct a new set of column data.ColumnHolder
(String name, boolean grouped, char... arrayData) Construct a new set of column data.ColumnHolder
(String name, boolean grouped, double... arrayData) Construct a new set of column data.ColumnHolder
(String name, boolean grouped, float... arrayData) Construct a new set of column data.ColumnHolder
(String name, boolean grouped, int... arrayData) Construct a new set of column data.ColumnHolder
(String name, boolean grouped, long... arrayData) Construct a new set of column data.ColumnHolder
(String name, boolean grouped, short... arrayData) Construct a new set of column data.ColumnHolder
(String name, Class<T> dataType, Class<?> componentType, boolean grouped, T... arrayData) Construct a new set of column data. -
Method Summary
Modifier and TypeMethodDescriptionstatic <T> ColumnHolder<T>
createColumnHolder
(String name, boolean grouped, T... data) Create a column holder from an array object, inferring the data type from the given array object.static ColumnHolder<Boolean>
getBooleanColumnHolder
(String name, boolean grouped, byte... data) Create a column holder for a Boolean column where the calues are represented as bytes.getChunk()
ColumnSource<?>
Gets a column source for the data.static ColumnHolder<Instant>
getInstantColumnHolder
(String name, boolean grouped, long... data) Create a column holder for an Instant column where the values are represented as longs.static ColumnHolder<Instant>
getInstantColumnHolder
(String name, boolean grouped, Chunk<Values> chunkData) Create a column holder for an Instant column where the values are represented as longs.getName()
static <T> ColumnHolder<T>
makeForChunk
(String name, Class<T> type, Class<?> componentType, boolean grouped, Chunk<Values> chunkData) int
size()
-
Field Details
-
ZERO_LENGTH_COLUMN_HOLDER_ARRAY
-
name
The name of the column. -
dataType
The data type of the column. -
componentType
The data's component type of the column. -
grouped
public final boolean groupedShould the result column be grouped (used for test data only).
-
-
Constructor Details
-
ColumnHolder
public ColumnHolder(String name, Class<T> dataType, Class<?> componentType, boolean grouped, T... arrayData) Construct a new set of column data.- Parameters:
name
- column namedataType
- column data typecomponentType
- column component type (for array or>
data types)arrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
Construct a new set of column data.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisearrayData
- column data
-
ColumnHolder
protected ColumnHolder(boolean chunkSentinel, String name, Class<?> dataType, Class<?> componentType, boolean grouped, Chunk<Values> chunkData) Construct a new set of column data with a specified type using a chunk. This overload allows the creation of a ColumnHolder where the official data type type does not match the data.- Parameters:
name
- column namedataType
- abstract data type for the columngrouped
- true if the column is grouped; false otherwisechunkData
- column data
-
-
Method Details
-
makeForChunk
-
getInstantColumnHolder
public static ColumnHolder<Instant> getInstantColumnHolder(String name, boolean grouped, long... data) Create a column holder for an Instant column where the values are represented as longs. Whatever process produces a table from this column holder should respect this and create the appropriate type of ColumnSource. Under normal conditions, this will bean InstantArraySource (seegetColumnSource()
).- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisedata
- column data (long integers representing nanos since the epoch)
-
getInstantColumnHolder
public static ColumnHolder<Instant> getInstantColumnHolder(String name, boolean grouped, Chunk<Values> chunkData) Create a column holder for an Instant column where the values are represented as longs. Whatever process produces a table from this column holder should respect this and create the appropriate type of ColumnSource. Under normal conditions, this will bean InstantArraySource (seegetColumnSource()
).- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisechunkData
- column data (long integers representing nanos since the epoch)
-
getBooleanColumnHolder
public static ColumnHolder<Boolean> getBooleanColumnHolder(String name, boolean grouped, byte... data) Create a column holder for a Boolean column where the calues are represented as bytes. The given byte array will be converted to a Boolean array.- Parameters:
name
- column namegrouped
- true if the column is grouped; false otherwisedata
- column data (byte values where 1 represents true, 0 represents false, and null otherwise)- Returns:
- a Boolean column holder
-
createColumnHolder
Create a column holder from an array object, inferring the data type from the given array object.- Parameters:
name
- The column namegrouped
- true if the column is grouped; false otherwisedata
- The data array- Returns:
- a column holder with a type matching the component type of the provided array
-
getName
-
getColumnSource
Gets a column source for the data. Other than the special case of Instant columns, this requires that the type specified match the component type of the actual data.- Returns:
- column source constructed with data from this column holder
-
getArrayData
-
getChunkData
-
getChunk
-
size
public int size()
-