Class ColumnRegionObject.DictionaryKeysWrapper
java.lang.Object
com.illumon.iris.db.v2.sources.regioned.ColumnRegionObject.DictionaryKeysWrapper
- All Implemented Interfaces:
ChunkSource<Attributes.DictionaryKeys>,DefaultChunkSource<Attributes.DictionaryKeys>,FillContextMaker,GetContextMaker,Page<Attributes.DictionaryKeys>,Page.WithDefaults<Attributes.DictionaryKeys>,PagingChunkSource<Attributes.DictionaryKeys>,ColumnRegion<Attributes.DictionaryKeys>,ColumnRegionLong<Attributes.DictionaryKeys>,Releasable
- Enclosing interface:
- ColumnRegionObject<T,
ATTR extends Attributes.Any>
public static final class ColumnRegionObject.DictionaryKeysWrapper
extends Object
implements ColumnRegionLong<Attributes.DictionaryKeys>, Page.WithDefaults<Attributes.DictionaryKeys>
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
ChunkSource.FillContext, ChunkSource.GetContext, ChunkSource.WithPrev<ATTR extends Attributes.Any>Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegionLong
ColumnRegionLong.Null<ATTR extends Attributes.Values>Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.DefaultChunkSource
DefaultChunkSource.SupportsContiguousGet<ATTR extends Attributes.Any>, DefaultChunkSource.WithPrev<ATTR extends Attributes.Any>Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.page.Page
Page.WithDefaults<ATTR extends Attributes.Any>, Page.WithDefaultsForRepeatingValues<ATTR extends Attributes.Any> -
Field Summary
Fields inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
DEFAULT_FILL_INSTANCE, ZERO_LENGTH_CHUNK_SOURCE_ARRAYFields inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegion
REGION_MASK -
Method Summary
Modifier and TypeMethodDescriptionbinSearchMatch(long firstKey, long lastKey, SortPair sortPair, Object[] keys) Given that this column is sorted, match the input keys using a binary search.chunkMatch(long regionFirstKey, OrderedKeys keysToFilter, boolean caseInsensitive, boolean invertMatch, Object[] keys) booleancouldInclude(Object[] keys) Check if the region could possibly include any of the keys we're searching forvoidfillChunkAppend(ChunkSource.FillContext context, WritableChunk<? super Attributes.DictionaryKeys> destination, OrderedKeys rowSequence) Appends the values referenced byorderKeysontodestination.longgetLong(long elementIndex) Get a single long from this region.longgetLong(ChunkSource.FillContext context, long elementIndex) Get a single long from this region.longlength()longmask()This mask is applied toOrderedKeyswhich are passed intoChunkSource.getChunk(ChunkSource.GetContext, OrderedKeys)andChunkSource.fillChunk(ChunkSource.FillContext, WritableChunk, OrderedKeys).Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
getChunkTypeMethods inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegion
firstRowOffset, specialMatch, supportsSpecialMatchingMethods inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegionLong
getNativeTypeMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.DefaultChunkSource
getChunk, getChunk, getChunkByFilling, makeFillContext, makeGetContextMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.FillContextMaker
makeFillContextMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.GetContextMaker
makeGetContextMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.Page
advanceToNextPage, advanceToNextPage, advanceToNextPageAndGetPositionDistance, firstRow, getRowOffset, lastRowMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.Page.WithDefaults
fillChunk, fillChunkAppendMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.PagingChunkSource
maxRowMethods inherited from interface com.illumon.iris.db.v2.sources.Releasable
releaseCachedResources
-
Method Details
-
length
public long length()- Specified by:
lengthin interfacePage<Attributes.DictionaryKeys>- Returns:
- the length of this page.
-
mask
public long mask()Description copied from interface:PagingChunkSourceThis mask is applied toOrderedKeyswhich are passed intoChunkSource.getChunk(ChunkSource.GetContext, OrderedKeys)andChunkSource.fillChunk(ChunkSource.FillContext, WritableChunk, OrderedKeys). This allows thePagingChunkSources to be cached, and reused even if they are properly relocated in key space.- Specified by:
maskin interfaceColumnRegion<Attributes.DictionaryKeys>- Specified by:
maskin interfacePagingChunkSource<Attributes.DictionaryKeys>- Returns:
- the mask for this page, which must be a bitmask representing the some number of lower order bits of a long.
-
getLong
public long getLong(long elementIndex) Description copied from interface:ColumnRegionLongGet a single long from this region.- Specified by:
getLongin interfaceColumnRegionLong<Attributes.DictionaryKeys>- Parameters:
elementIndex- Element (long) index in the table's address space- Returns:
- The long value at the specified element (long) index
-
getLong
Description copied from interface:ColumnRegionLongGet a single long from this region.- Specified by:
getLongin interfaceColumnRegionLong<Attributes.DictionaryKeys>- Parameters:
context- AColumnRegionFillContextto enable resource caching where suitable, with current region index pointing to this regionelementIndex- Element (long) index in the table's address space- Returns:
- The long value at the specified element (long) index
-
fillChunkAppend
public void fillChunkAppend(@NotNull ChunkSource.FillContext context, @NotNull WritableChunk<? super Attributes.DictionaryKeys> destination, @NotNull OrderedKeys rowSequence) Description copied from interface:Page.WithDefaultsAppends the values referenced byorderKeysontodestination.orderKeysare assumed to be entirely contained on thisPage.- Specified by:
fillChunkAppendin interfacePage.WithDefaults<Attributes.DictionaryKeys>
-
getLocation
- Specified by:
getLocationin interfaceColumnRegion<Attributes.DictionaryKeys>
-
binSearchMatch
public Index binSearchMatch(long firstKey, long lastKey, @NotNull SortPair sortPair, @NotNull Object[] keys) Description copied from interface:ColumnRegionGiven that this column is sorted, match the input keys using a binary search.- Specified by:
binSearchMatchin interfaceColumnRegion<Attributes.DictionaryKeys>- Parameters:
firstKey- The first key to searchlastKey- The last key to searchsortPair- the sorting definitionkeys- the keys to search for, in no particular order
-
couldInclude
Description copied from interface:ColumnRegionCheck if the region could possibly include any of the keys we're searching for- Specified by:
couldIncludein interfaceColumnRegion<Attributes.DictionaryKeys>- Parameters:
keys- the keys to search for- Returns:
- true if the region possibly contains the values
-
chunkMatch
public Index chunkMatch(long regionFirstKey, @NotNull OrderedKeys keysToFilter, boolean caseInsensitive, boolean invertMatch, @NotNull Object[] keys) - Specified by:
chunkMatchin interfaceColumnRegion<Attributes.DictionaryKeys>
-