Package org.apache.druid.segment.filter
Class JavaScriptFilter
- java.lang.Object
-
- org.apache.druid.segment.filter.JavaScriptFilter
-
-
Constructor Summary
Constructors Constructor Description JavaScriptFilter(String dimension, JavaScriptDimFilter.JavaScriptPredicateFactory predicate, FilterTuning filterTuning)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancanVectorizeMatcher(ColumnInspector inspector)Returns true if this filter can produce a vectorized matcher from its "makeVectorMatcher" method.booleanequals(Object o)BitmapColumnIndexgetBitmapColumnIndex(ColumnIndexSelector selector)Returns aBitmapColumnIndexif this filter supports using a bitmap index for filtering for the given inputColumnIndexSelector.Set<String>getRequiredColumns()Set of columns used by a filter.inthashCode()ValueMatchermakeMatcher(ColumnSelectorFactory factory)Get aValueMatcherthat applies this filter to row values.VectorValueMatchermakeVectorMatcher(VectorColumnSelectorFactory factory)Get aVectorValueMatcherthat applies this filter to row vectors.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.druid.query.filter.Filter
makeFilterBundle, rewriteRequiredColumns, supportsRequiredColumnRewrite
-
-
-
-
Constructor Detail
-
JavaScriptFilter
public JavaScriptFilter(String dimension, JavaScriptDimFilter.JavaScriptPredicateFactory predicate, FilterTuning filterTuning)
-
-
Method Detail
-
getBitmapColumnIndex
@Nullable public BitmapColumnIndex getBitmapColumnIndex(ColumnIndexSelector selector)
Description copied from interface:FilterReturns aBitmapColumnIndexif this filter supports using a bitmap index for filtering for the given inputColumnIndexSelector. TheBitmapColumnIndexcan be used to compute into a bitmap indicating rows that match this filter resultBitmapColumnIndex.computeBitmapResult(BitmapResultFactory, boolean), or examine details about the index prior to computing it, viaBitmapColumnIndex.getIndexCapabilities().- Specified by:
getBitmapColumnIndexin interfaceFilter- Parameters:
selector- Object used to create BitmapColumnIndex- Returns:
- BitmapColumnIndex that can build ImmutableBitmap of matched row numbers
-
makeMatcher
public ValueMatcher makeMatcher(ColumnSelectorFactory factory)
Description copied from interface:FilterGet aValueMatcherthat applies this filter to row values.- Specified by:
makeMatcherin interfaceFilter- Parameters:
factory- Object used to create ValueMatchers- Returns:
- ValueMatcher that applies this filter to row values.
-
makeVectorMatcher
public VectorValueMatcher makeVectorMatcher(VectorColumnSelectorFactory factory)
Description copied from interface:FilterGet aVectorValueMatcherthat applies this filter to row vectors.- Specified by:
makeVectorMatcherin interfaceFilter- Parameters:
factory- Object used to create ValueMatchers- Returns:
- VectorValueMatcher that applies this filter to row vectors.
-
canVectorizeMatcher
public boolean canVectorizeMatcher(ColumnInspector inspector)
Description copied from interface:FilterReturns true if this filter can produce a vectorized matcher from its "makeVectorMatcher" method.- Specified by:
canVectorizeMatcherin interfaceFilter- Parameters:
inspector- Supplies type information for the selectors this filter will match against
-
getRequiredColumns
public Set<String> getRequiredColumns()
Description copied from interface:FilterSet of columns used by a filter.- Specified by:
getRequiredColumnsin interfaceFilter
-
-