public class FrameColumnSelectorFactory extends Object implements ColumnSelectorFactory, RowIdSupplier
| Modifier and Type | Field and Description |
|---|---|
static String |
ROW_MEMORY_COLUMN
Name of the virtual column that contains
MemoryRange for direct access to row memory. |
static String |
ROW_SIGNATURE_COLUMN
Name of the virtual column that contains the
RowSignature of frames from this
ColumnSelectorFactory. |
INIT| Constructor and Description |
|---|
FrameColumnSelectorFactory(Frame frame,
RowSignature frameSignature,
List<FieldReader> fieldReaders,
ReadableFrameRowPointer rowPointer) |
| Modifier and Type | Method and Description |
|---|---|
ColumnCapabilities |
getColumnCapabilities(String column)
Returns capabilities of a particular column, if known.
|
long |
getRowId()
Returns a number that uniquely identifies the current position of some underlying cursor.
|
RowIdSupplier |
getRowIdSupplier()
Returns a
RowIdSupplier that allows callers to detect whether the selectors returned by this
factory have moved or not. |
ColumnValueSelector |
makeColumnValueSelector(String columnName)
Returns ColumnValueSelector corresponding to the given column name, or
NilColumnValueSelector if the
column with such name is absent. |
DimensionSelector |
makeDimensionSelector(DimensionSpec dimensionSpec) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetColumnCapabilitiesWithDefault, getTypeareNumeric, areNumeric, areSameTypes, areSameTypes, areScalar, areScalar, canVectorize, canVectorizepublic static final String ROW_SIGNATURE_COLUMN
RowSignature of frames from this
ColumnSelectorFactory. This is necessary because callers need it to verify that ROW_MEMORY_COLUMN
is usable, but the interface does not provide a natural way to retrieve the underlying signature.
Guaranteed not to appear in the frame itself due to FrameWriterUtils.findDisallowedFieldNames(org.apache.druid.segment.column.RowSignature) checks.public static final String ROW_MEMORY_COLUMN
MemoryRange for direct access to row memory.
Guaranteed not to appear in the frame itself due to FrameWriterUtils.findDisallowedFieldNames(org.apache.druid.segment.column.RowSignature) checks.public FrameColumnSelectorFactory(Frame frame, RowSignature frameSignature, List<FieldReader> fieldReaders, ReadableFrameRowPointer rowPointer)
public DimensionSelector makeDimensionSelector(DimensionSpec dimensionSpec)
makeDimensionSelector in interface ColumnSelectorFactorypublic ColumnValueSelector makeColumnValueSelector(String columnName)
ColumnSelectorFactoryNilColumnValueSelector if the
column with such name is absent.makeColumnValueSelector in interface ColumnSelectorFactory@Nullable public RowIdSupplier getRowIdSupplier()
ColumnSelectorFactoryRowIdSupplier that allows callers to detect whether the selectors returned by this
factory have moved or not. Useful for selectors that wrap other selectors, such as virtual columns,
as it allows them to cache their outputs.getRowIdSupplier in interface ColumnSelectorFactorypublic long getRowId()
RowIdSuppliergetRowId in interface RowIdSupplier@Nullable public ColumnCapabilities getColumnCapabilities(String column)
ColumnSelectorFactorygetColumnCapabilities in interface ColumnInspectorgetColumnCapabilities in interface ColumnSelectorFactorycolumn - column nameCopyright © 2011–2022 The Apache Software Foundation. All rights reserved.