Package org.apache.druid.segment.filter
Class PredicateValueMatcherFactory
- java.lang.Object
-
- org.apache.druid.segment.filter.PredicateValueMatcherFactory
-
- All Implemented Interfaces:
ColumnProcessorFactory<ValueMatcher>
public class PredicateValueMatcherFactory extends Object implements ColumnProcessorFactory<ValueMatcher>
CreatesValueMatcher
that apply a predicate to each value.
-
-
Constructor Summary
Constructors Constructor Description PredicateValueMatcherFactory(DruidPredicateFactory predicateFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ColumnType
defaultType()
This default type will be used when the underlying column has an unknown type.ValueMatcher
makeArrayProcessor(BaseObjectColumnValueSelector<?> selector, ColumnCapabilities columnCapabilities)
ValueMatcher
makeComplexProcessor(BaseObjectColumnValueSelector<?> selector)
Create a processor for a complex column.ValueMatcher
makeDimensionProcessor(DimensionSelector selector, boolean multiValue)
Create a processor for a string column.ValueMatcher
makeDoubleProcessor(BaseDoubleColumnValueSelector selector)
Create a processor for a double column.ValueMatcher
makeFloatProcessor(BaseFloatColumnValueSelector selector)
Create a processor for a float column.ValueMatcher
makeLongProcessor(BaseLongColumnValueSelector selector)
Create a processor for a long column.
-
-
-
Constructor Detail
-
PredicateValueMatcherFactory
public PredicateValueMatcherFactory(DruidPredicateFactory predicateFactory)
-
-
Method Detail
-
defaultType
public ColumnType defaultType()
Description copied from interface:ColumnProcessorFactory
This default type will be used when the underlying column has an unknown type. This allows a column processor factory to specify what type it prefers to deal with (the most 'natural' type for whatever it is doing) when all else is equal.- Specified by:
defaultType
in interfaceColumnProcessorFactory<ValueMatcher>
-
makeDimensionProcessor
public ValueMatcher makeDimensionProcessor(DimensionSelector selector, boolean multiValue)
Description copied from interface:ColumnProcessorFactory
Create a processor for a string column.- Specified by:
makeDimensionProcessor
in interfaceColumnProcessorFactory<ValueMatcher>
- Parameters:
selector
- dimension selectormultiValue
- whether the selector *might* have multiple values
-
makeFloatProcessor
public ValueMatcher makeFloatProcessor(BaseFloatColumnValueSelector selector)
Description copied from interface:ColumnProcessorFactory
Create a processor for a float column.- Specified by:
makeFloatProcessor
in interfaceColumnProcessorFactory<ValueMatcher>
- Parameters:
selector
- float selector
-
makeDoubleProcessor
public ValueMatcher makeDoubleProcessor(BaseDoubleColumnValueSelector selector)
Description copied from interface:ColumnProcessorFactory
Create a processor for a double column.- Specified by:
makeDoubleProcessor
in interfaceColumnProcessorFactory<ValueMatcher>
- Parameters:
selector
- double selector
-
makeLongProcessor
public ValueMatcher makeLongProcessor(BaseLongColumnValueSelector selector)
Description copied from interface:ColumnProcessorFactory
Create a processor for a long column.- Specified by:
makeLongProcessor
in interfaceColumnProcessorFactory<ValueMatcher>
- Parameters:
selector
- long selector
-
makeArrayProcessor
public ValueMatcher makeArrayProcessor(BaseObjectColumnValueSelector<?> selector, @Nullable ColumnCapabilities columnCapabilities)
- Specified by:
makeArrayProcessor
in interfaceColumnProcessorFactory<ValueMatcher>
- Parameters:
selector
- array selectorcolumnCapabilities
- information about the underlying column to match. Null here just means the capabilities are unknown, and not necessarily indicative that the column doesn't exist
-
makeComplexProcessor
public ValueMatcher makeComplexProcessor(BaseObjectColumnValueSelector<?> selector)
Description copied from interface:ColumnProcessorFactory
Create a processor for a complex column.- Specified by:
makeComplexProcessor
in interfaceColumnProcessorFactory<ValueMatcher>
- Parameters:
selector
- object selector
-
-