Package org.apache.druid.segment.virtual
Class VirtualizedColumnSelectorFactory
- java.lang.Object
-
- org.apache.druid.segment.virtual.VirtualizedColumnInspector
-
- org.apache.druid.segment.virtual.VirtualizedColumnSelectorFactory
-
- All Implemented Interfaces:
Expr.InputBindingInspector
,ColumnInspector
,ColumnSelectorFactory
public class VirtualizedColumnSelectorFactory extends VirtualizedColumnInspector implements ColumnSelectorFactory
ColumnSelectorFactory
which can create selectors for both virtual and non-virtual columns
-
-
Field Summary
-
Fields inherited from class org.apache.druid.segment.virtual.VirtualizedColumnInspector
baseInspector, virtualColumns
-
-
Constructor Summary
Constructors Constructor Description VirtualizedColumnSelectorFactory(ColumnSelectorFactory baseFactory, VirtualColumns virtualColumns)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description RowIdSupplier
getRowIdSupplier()
Returns aRowIdSupplier
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, orNilColumnValueSelector
if the column with such name is absent.DimensionSelector
makeDimensionSelector(DimensionSpec dimensionSpec)
-
Methods inherited from class org.apache.druid.segment.virtual.VirtualizedColumnInspector
getColumnCapabilities
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.segment.ColumnInspector
getColumnCapabilitiesWithDefault, getType
-
Methods inherited from interface org.apache.druid.segment.ColumnSelectorFactory
getColumnCapabilities
-
Methods inherited from interface org.apache.druid.math.expr.Expr.InputBindingInspector
areNumeric, areNumeric, areSameTypes, areSameTypes, areScalar, areScalar, canVectorize, canVectorize
-
-
-
-
Constructor Detail
-
VirtualizedColumnSelectorFactory
public VirtualizedColumnSelectorFactory(ColumnSelectorFactory baseFactory, VirtualColumns virtualColumns)
-
-
Method Detail
-
makeDimensionSelector
public DimensionSelector makeDimensionSelector(DimensionSpec dimensionSpec)
- Specified by:
makeDimensionSelector
in interfaceColumnSelectorFactory
-
makeColumnValueSelector
public ColumnValueSelector<?> makeColumnValueSelector(String columnName)
Description copied from interface:ColumnSelectorFactory
Returns ColumnValueSelector corresponding to the given column name, orNilColumnValueSelector
if the column with such name is absent.- Specified by:
makeColumnValueSelector
in interfaceColumnSelectorFactory
-
getRowIdSupplier
@Nullable public RowIdSupplier getRowIdSupplier()
Description copied from interface:ColumnSelectorFactory
Returns aRowIdSupplier
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.- Specified by:
getRowIdSupplier
in interfaceColumnSelectorFactory
-
-