public class SettableDimensionValueSelector extends Object implements DimensionSelector, SettableColumnValueSelector<Object>
DimensionSelector.DimensionSelector.NullDimensionSelectorHolderCARDINALITY_UNKNOWNEMPTY_ARRAY| Constructor and Description |
|---|
SettableDimensionValueSelector() |
| Modifier and Type | Method and Description |
|---|---|
Class |
classOfObject() |
Object |
getObject() |
IndexedInts |
getRow()
Returns the indexed values at the current position in this DimensionSelector.
|
int |
getValueCardinality()
Value cardinality is the cardinality of the different occurring values.
|
IdLookup |
idLookup()
Returns
IdLookup if available for this DimensionSelector, or null. |
String |
lookupName(int id)
The Name is the String name of the actual field.
|
ValueMatcher |
makeValueMatcher(com.google.common.base.Predicate<String> predicate) |
ValueMatcher |
makeValueMatcher(String value) |
boolean |
nameLookupPossibleInAdvance()
Returns true if it is possible to
DimensionDictionarySelector.lookupName(int) by ids from 0 to DimensionDictionarySelector.getValueCardinality()
before the rows with those ids are returned. |
void |
setValueFrom(ColumnValueSelector<?> selector) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitconstant, constant, defaultGetObject, getDouble, getFloat, getLong, isNilSelector, isNullinspectRuntimeShapepublic void setValueFrom(ColumnValueSelector<?> selector)
setValueFrom in interface SettableColumnValueSelector<Object>public IndexedInts getRow()
DimensionSelectorIndexedInts object could generally be reused inside the implementation of
DimensionSelector, i. e. this method could always return the same object for the same selector. Users
of this API, such as Aggregator.aggregate(), BufferAggregator.aggregate(java.nio.ByteBuffer, int), AggregateCombiner.reset(org.apache.druid.segment.ColumnValueSelector),
AggregateCombiner.fold(org.apache.druid.segment.ColumnValueSelector) should be prepared for that and not storing the object
returned from this method in their state, assuming that the object will remain unchanged even when the position of
the selector changes. This may not be the case.getRow in interface DimensionSelectorpublic ValueMatcher makeValueMatcher(@Nullable String value)
makeValueMatcher in interface DimensionSelectorvalue - nullable dimension valuepublic ValueMatcher makeValueMatcher(com.google.common.base.Predicate<String> predicate)
makeValueMatcher in interface DimensionSelectorpublic int getValueCardinality()
DimensionDictionarySelectorgetValueCardinality in interface DimensionDictionarySelectorDimensionDictionarySelector.CARDINALITY_UNKNOWN if unknown.@Nullable public String lookupName(int id)
DimensionDictionarySelectorlookupName in interface DimensionDictionarySelectorid - id to lookup the field name forpublic boolean nameLookupPossibleInAdvance()
DimensionDictionarySelectorDimensionDictionarySelector.lookupName(int) by ids from 0 to DimensionDictionarySelector.getValueCardinality()
before the rows with those ids are returned.
Returns false if DimensionDictionarySelector.lookupName(int) could be called with ids, returned from the most recent row (or row
vector) returned by this DimensionSelector, but not earlier. If DimensionDictionarySelector.getValueCardinality() of this
selector additionally returns DimensionDictionarySelector.CARDINALITY_UNKNOWN, lookupName() couldn't be called with
ids, returned by not the most recent row (or row vector), i. e. names for ids couldn't be looked up "later". If
DimensionDictionarySelector.getValueCardinality() returns a non-negative number, lookupName() could be called with any ids,
returned from rows (or row vectors) returned since the creation of this DimensionSelector.
If DimensionDictionarySelector.lookupName(int) is called with an ineligible id, result is undefined: exception could be thrown, or
null returned, or some other random value.
nameLookupPossibleInAdvance in interface DimensionDictionarySelector@Nullable public IdLookup idLookup()
DimensionDictionarySelectorIdLookup if available for this DimensionSelector, or null.idLookup in interface DimensionDictionarySelector@Nullable public Object getObject()
getObject in interface BaseObjectColumnValueSelector<Object>public Class classOfObject()
classOfObject in interface BaseObjectColumnValueSelector<Object>Copyright © 2011–2020 The Apache Software Foundation. All rights reserved.