Package org.apache.druid.segment.nested
Class VariantColumnAndIndexSupplier
- java.lang.Object
-
- org.apache.druid.segment.nested.VariantColumnAndIndexSupplier
-
- All Implemented Interfaces:
com.google.common.base.Supplier<NestedCommonFormatColumn>
,Supplier<NestedCommonFormatColumn>
,ColumnIndexSupplier
public class VariantColumnAndIndexSupplier extends Object implements com.google.common.base.Supplier<NestedCommonFormatColumn>, ColumnIndexSupplier
-
-
Constructor Summary
Constructors Constructor Description VariantColumnAndIndexSupplier(ColumnType logicalType, Byte variantTypeSetByte, com.google.common.base.Supplier<? extends Indexed<ByteBuffer>> stringDictionarySupplier, com.google.common.base.Supplier<FixedIndexed<Long>> longDictionarySupplier, com.google.common.base.Supplier<FixedIndexed<Double>> doubleDictionarySupplier, com.google.common.base.Supplier<FrontCodedIntArrayIndexed> arrayDictionarySupplier, com.google.common.base.Supplier<FixedIndexed<Integer>> arrayElementDictionarySupplier, com.google.common.base.Supplier<ColumnarInts> encodedValueColumnSupplier, GenericIndexed<ImmutableBitmap> valueIndexes, GenericIndexed<ImmutableBitmap> elementIndexes, BitmapFactory bitmapFactory, ColumnConfig columnConfig, int numRows)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> T
as(Class<T> clazz)
Try to get a column 'index' of the specified type.NestedCommonFormatColumn
get()
Byte
getVariantTypeSetByte()
static VariantColumnAndIndexSupplier
read(ColumnType logicalType, ByteOrder byteOrder, BitmapSerdeFactory bitmapSerdeFactory, ByteBuffer bb, ColumnBuilder columnBuilder, ColumnConfig columnConfig)
-
-
-
Constructor Detail
-
VariantColumnAndIndexSupplier
public VariantColumnAndIndexSupplier(ColumnType logicalType, @Nullable Byte variantTypeSetByte, com.google.common.base.Supplier<? extends Indexed<ByteBuffer>> stringDictionarySupplier, com.google.common.base.Supplier<FixedIndexed<Long>> longDictionarySupplier, com.google.common.base.Supplier<FixedIndexed<Double>> doubleDictionarySupplier, com.google.common.base.Supplier<FrontCodedIntArrayIndexed> arrayDictionarySupplier, com.google.common.base.Supplier<FixedIndexed<Integer>> arrayElementDictionarySupplier, com.google.common.base.Supplier<ColumnarInts> encodedValueColumnSupplier, GenericIndexed<ImmutableBitmap> valueIndexes, GenericIndexed<ImmutableBitmap> elementIndexes, BitmapFactory bitmapFactory, ColumnConfig columnConfig, int numRows)
-
-
Method Detail
-
read
public static VariantColumnAndIndexSupplier read(ColumnType logicalType, ByteOrder byteOrder, BitmapSerdeFactory bitmapSerdeFactory, ByteBuffer bb, ColumnBuilder columnBuilder, ColumnConfig columnConfig)
-
get
public NestedCommonFormatColumn get()
- Specified by:
get
in interfacecom.google.common.base.Supplier<NestedCommonFormatColumn>
- Specified by:
get
in interfaceSupplier<NestedCommonFormatColumn>
-
as
@Nullable public <T> T as(Class<T> clazz)
Description copied from interface:ColumnIndexSupplier
Try to get a column 'index' of the specified type. If the index of the desired type is not available, this method will return null. If the value is non-null, the index may be used for the eventual construction of anOffset
to form the basis of aCursor
(orVectorOffset
andVectorCursor
) which can greatly reduce the total number of rows which need to be scanned and processed. Objects returned by this method are not thread-safe.- Specified by:
as
in interfaceColumnIndexSupplier
-
-