Class CardinalityVectorProcessorFactory
- java.lang.Object
-
- org.apache.druid.query.aggregation.cardinality.vector.CardinalityVectorProcessorFactory
-
- All Implemented Interfaces:
VectorColumnProcessorFactory<CardinalityVectorProcessor>
public class CardinalityVectorProcessorFactory extends Object implements VectorColumnProcessorFactory<CardinalityVectorProcessor>
-
-
Field Summary
Fields Modifier and Type Field Description static CardinalityVectorProcessorFactory
INSTANCE
-
Constructor Summary
Constructors Constructor Description CardinalityVectorProcessorFactory()
-
Method Summary
-
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.VectorColumnProcessorFactory
useDictionaryEncodedSelector
-
-
-
-
Field Detail
-
INSTANCE
public static final CardinalityVectorProcessorFactory INSTANCE
-
-
Method Detail
-
makeSingleValueDimensionProcessor
public CardinalityVectorProcessor makeSingleValueDimensionProcessor(ColumnCapabilities capabilities, SingleValueDimensionVectorSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called only ifTypeSignature.getType()
is STRING and the underlying column always has a single value per row. Note that for STRING-typed columns where the dictionary does not exist or is not expected to be useful,VectorColumnProcessorFactory.makeObjectProcessor(org.apache.druid.segment.column.ColumnCapabilities, org.apache.druid.segment.vector.VectorObjectSelector)
may be called instead. To handle all string inputs properly, processors must implement all three methods (single-value, multi-value, object).- Specified by:
makeSingleValueDimensionProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
-
makeMultiValueDimensionProcessor
public CardinalityVectorProcessor makeMultiValueDimensionProcessor(ColumnCapabilities capabilities, MultiValueDimensionVectorSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called only ifTypeSignature.getType()
is STRING and the underlying column may have multiple values per row. Note that for STRING-typed columns where the dictionary does not exist or is not expected to be useful,VectorColumnProcessorFactory.makeObjectProcessor(org.apache.druid.segment.column.ColumnCapabilities, org.apache.druid.segment.vector.VectorObjectSelector)
may be called instead. To handle all string inputs properly, processors must implement all three methods (single-value, multi-value, object).- Specified by:
makeMultiValueDimensionProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
-
makeFloatProcessor
public CardinalityVectorProcessor makeFloatProcessor(ColumnCapabilities capabilities, VectorValueSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called whenTypeSignature.getType()
is FLOAT.- Specified by:
makeFloatProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
-
makeDoubleProcessor
public CardinalityVectorProcessor makeDoubleProcessor(ColumnCapabilities capabilities, VectorValueSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called whenTypeSignature.getType()
is DOUBLE.- Specified by:
makeDoubleProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
-
makeLongProcessor
public CardinalityVectorProcessor makeLongProcessor(ColumnCapabilities capabilities, VectorValueSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called whenTypeSignature.getType()
is LONG.- Specified by:
makeLongProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
-
makeArrayProcessor
public CardinalityVectorProcessor makeArrayProcessor(ColumnCapabilities capabilities, VectorObjectSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called whenTypeSignature.getType()
is ARRAY.- Specified by:
makeArrayProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
-
makeObjectProcessor
public CardinalityVectorProcessor makeObjectProcessor(ColumnCapabilities capabilities, VectorObjectSelector selector)
Description copied from interface:VectorColumnProcessorFactory
Called whenTypeSignature.getType()
is COMPLEX. May also be called for STRING typed columns in cases where the dictionary does not exist or is not expected to be useful.- Specified by:
makeObjectProcessor
in interfaceVectorColumnProcessorFactory<CardinalityVectorProcessor>
- See Also:
for details on what can appear here when type is STRING
-
-