Class DeferredColumnRegionObject<T,ATTR extends Attributes.Any>
java.lang.Object
com.illumon.iris.db.v2.sources.regioned.DeferredColumnRegionBase<ATTR,ColumnRegionObject<T,ATTR>>
com.illumon.iris.db.v2.sources.regioned.DeferredColumnRegionObject<T,ATTR>
- All Implemented Interfaces:
ChunkSource<ATTR>,FillContextMaker,GetContextMaker,Page<ATTR>,PagingChunkSource<ATTR>,ColumnRegion<ATTR>,ColumnRegionObject<T,ATTR>,Releasable
public class DeferredColumnRegionObject<T,ATTR extends Attributes.Any> extends DeferredColumnRegionBase<ATTR,ColumnRegionObject<T,ATTR>> implements ColumnRegionObject<T,ATTR>
ColumnRegionShort implementation for deferred regions, i.e. regions that will be properly constructed on
first access.-
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.ColumnRegion
ColumnRegion.Null<ATTR extends Attributes.Any>Nested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegionObject
ColumnRegionObject.DictionaryKeysWrapper, ColumnRegionObject.IntDictionaryKeysWrapper, ColumnRegionObject.Null<T,ATTR extends Attributes.Any>, ColumnRegionObject.StaticPageStore<DATA_TYPE,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_ARRAY -
Method Summary
Modifier and Type Method Description ColumnRegionLong<Attributes.DictionaryKeys>getDictionaryKeysRegion()Get a view of this region as long dictionary keys.ColumnRegionInt<Attributes.DictionaryKeys>getDictionaryKeysRegionInt()Get a view of this region as int dictionary keys.ChunkTypegetDictionaryRegionType()ColumnRegionObject<T,ATTR>getDictionaryValuesRegion()Get a view of this region as dictionary values.TgetObject(long elementIndex)Get a single object from this region.TgetObject(ChunkSource.FillContext context, long elementIndex)Get a single object from this region.RegionVisitResultsupportsDictionaryFormat(ReadOnlyIndex.SearchIterator keysToVisit)Check if this region can expose an alternate form as paired regions oflongkeys andDATA_TYPEvalues covering all of its row keys inkeysToVisit.Methods inherited from class com.illumon.iris.db.v2.sources.regioned.DeferredColumnRegionBase
fillChunk, fillChunkAppend, getChunk, getChunk, getNativeType, getResultRegion, length, makeFillContext, makeGetContext, releaseCachedResourcesMethods 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
fillChunk, getChunk, getChunk, getChunkTypeMethods inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegion
firstRowOffset, maskMethods inherited from interface com.illumon.iris.db.v2.sources.regioned.ColumnRegionObject
gatherDictionaryValuesRowSet, getNativeType, skipCacheMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.FillContextMaker
makeFillContext, makeFillContextMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.GetContextMaker
makeGetContext, makeGetContextMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.Page
advanceToNextPage, advanceToNextPage, advanceToNextPageAndGetPositionDistance, firstRow, getRowOffset, lastRow, lengthMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.PagingChunkSource
fillChunkAppend, maxRow
-
Method Details
-
getObject
Description copied from interface:ColumnRegionObjectGet a single object from this region.- Specified by:
getObjectin interfaceColumnRegionObject<T,ATTR extends Attributes.Any>- Parameters:
elementIndex- Element (object) index in the table's address space- Returns:
- The object value at the specified element (object) index
-
getObject
Description copied from interface:ColumnRegionObjectGet a single object from this region.- Specified by:
getObjectin interfaceColumnRegionObject<T,ATTR extends Attributes.Any>- Parameters:
context- AColumnRegionFillContextto enable resource caching where suitable, with current region index pointing to this regionelementIndex- Element (object) index in the table's address space- Returns:
- The object value at the specified element (object) index
-
getDictionaryRegionType
- Specified by:
getDictionaryRegionTypein interfaceColumnRegionObject<T,ATTR extends Attributes.Any>
-
getDictionaryKeysRegion
Description copied from interface:ColumnRegionObjectGet a view of this region as long dictionary keys.- Specified by:
getDictionaryKeysRegionin interfaceColumnRegionObject<T,ATTR extends Attributes.Any>- Returns:
- A dictionary keys region as specified by
ColumnRegionObject.supportsDictionaryFormat(Index.SearchIterator)
-
getDictionaryKeysRegionInt
Description copied from interface:ColumnRegionObjectGet a view of this region as int dictionary keys.- Specified by:
getDictionaryKeysRegionIntin interfaceColumnRegionObject<T,ATTR extends Attributes.Any>- Returns:
- A dictionary keys region as specified by
ColumnRegionObject.supportsDictionaryFormat(Index.SearchIterator)
-
getDictionaryValuesRegion
Description copied from interface:ColumnRegionObjectGet a view of this region as dictionary values.- Specified by:
getDictionaryValuesRegionin interfaceColumnRegionObject<T,ATTR extends Attributes.Any>- Returns:
- A dictionary values region as specified by
ColumnRegionObject.supportsDictionaryFormat(Index.SearchIterator)
-
supportsDictionaryFormat
public RegionVisitResult supportsDictionaryFormat(@NotNull ReadOnlyIndex.SearchIterator keysToVisit)Description copied from interface:ColumnRegionObjectCheck if this region can expose an alternate form as paired regions oflongkeys andDATA_TYPEvalues covering all of its row keys inkeysToVisit.Both alternate regions must use the same or smaller row key space as this one. Indices fetched from the keys region must represent valid element indices in the values region. Values regions must support
ColumnRegionObject.gatherDictionaryValuesRowSet(Index.SearchIterator, Index.Iterator, Index.SequentialBuilder).Use
ColumnRegionObject.getDictionaryKeysRegion()to access the region of keys andColumnRegionObject.getDictionaryValuesRegion()to access the region of values.- Specified by:
supportsDictionaryFormatin interfaceColumnRegionObject<T,ATTR extends Attributes.Any>- Parameters:
keysToVisit- Iterator positioned at the first relevant row key belonging to this region. Will be advanced to after this region iftrueis returned. No guarantee is made iffalseis returned.- Returns:
- A
RegionVisitResultspecifyingFAILEDif this region cannot supply a dictionary,CONTINUEif it can andkeysToVisitis not exhausted, andCOMPLETEif it can andkeysToVisitis exhausted
-