public abstract class FunctionalExtraction extends DimExtractionFn
ExtractionFn.ExtractionType| Constructor and Description |
|---|
FunctionalExtraction(com.google.common.base.Function<String,String> extractionFunction,
boolean retainMissingValue,
String replaceMissingValueWith,
boolean injective)
The general constructor which handles most of the logic for extractions which can be expressed as a function of string-->string
|
| Modifier and Type | Method and Description |
|---|---|
String |
apply(String value)
The "extraction" function.
|
ExtractionFn.ExtractionType |
getExtractionType()
A dim extraction can be of one of two types, renaming or rebucketing.
|
String |
getReplaceMissingValueWith() |
boolean |
isInjective() |
boolean |
isRetainMissingValue() |
boolean |
preservesOrdering()
Offers information on whether the extraction will preserve the original ordering of the values.
|
apply, applyclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetCacheKeypublic FunctionalExtraction(com.google.common.base.Function<String,String> extractionFunction, boolean retainMissingValue, String replaceMissingValueWith, boolean injective)
extractionFunction - The function to call when doing the extraction. The function must be able to accept a null input.retainMissingValue - Boolean value on if functions which result in `null` should use the original value or should be kept as `null`replaceMissingValueWith - String value to replace missing values with (instead of `null`)injective - If this function always has 1:1 renames and the domain has the same cardinality of the input, this should be true and enables optimized query paths.public boolean isRetainMissingValue()
public String getReplaceMissingValueWith()
public boolean isInjective()
@Nullable public String apply(@Nullable String value)
ExtractionFn
Like ExtractionFn.apply(Object), the empty string is considered invalid output for this method and it should
instead return null.
value - the original value of the dimensionpublic boolean preservesOrdering()
ExtractionFnSome optimizations of queries is possible if ordering is preserved. Null values *do* count towards ordering.
public ExtractionFn.ExtractionType getExtractionType()
ExtractionFnExtractionFn.ExtractionType declaring what kind of manipulation this function doesCopyright © 2011–2023 The Apache Software Foundation. All rights reserved.