Class ColumnRegionObject.StaticPageStore<DATA_TYPE,ATTR extends Any>
java.lang.Object
io.deephaven.engine.table.impl.sources.regioned.RegionedPageStore.Static<ATTR,ATTR,ColumnRegionObject<DATA_TYPE,ATTR>>
io.deephaven.engine.table.impl.sources.regioned.ColumnRegionObject.StaticPageStore<DATA_TYPE,ATTR>
- All Implemented Interfaces:
Page<ATTR>
,PageStore<ATTR,
,ATTR, ColumnRegionObject<DATA_TYPE, ATTR>> PagingChunkSource<ATTR>
,ChunkSource<ATTR>
,FillContextMaker
,GetContextMaker
,DefaultChunkSource<ATTR>
,DefaultChunkSource.SupportsContiguousGet<ATTR>
,ColumnRegion<ATTR>
,ColumnRegionObject<DATA_TYPE,
,ATTR> RegionedPageStore<ATTR,
,ATTR, ColumnRegionObject<DATA_TYPE, ATTR>> Releasable
- Enclosing interface:
- ColumnRegionObject<DATA_TYPE,
ATTR extends Any>
public static final class ColumnRegionObject.StaticPageStore<DATA_TYPE,ATTR extends Any>
extends RegionedPageStore.Static<ATTR,ATTR,ColumnRegionObject<DATA_TYPE,ATTR>>
implements ColumnRegionObject<DATA_TYPE,ATTR>
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.deephaven.engine.table.ChunkSource
ChunkSource.FillContext, ChunkSource.GetContext
Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.sources.regioned.ColumnRegionObject
ColumnRegionObject.Constant<DATA_TYPE,
ATTR extends Any>, ColumnRegionObject.DictionaryKeysWrapper, ColumnRegionObject.Null<DATA_TYPE, ATTR extends Any>, ColumnRegionObject.SelfDictionaryRegion<DATA_TYPE, ATTR extends Any>, ColumnRegionObject.StaticPageStore<DATA_TYPE, ATTR extends Any> Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.DefaultChunkSource
DefaultChunkSource.SupportsContiguousGet<ATTR extends Any>, DefaultChunkSource.WithPrev<ATTR extends Any>
Nested classes/interfaces inherited from interface io.deephaven.engine.page.Page
Page.WithDefaults<ATTR extends Any>, Page.WithDefaultsForRepeatingValues<ATTR extends Any>
Nested classes/interfaces inherited from interface io.deephaven.engine.table.impl.sources.regioned.RegionedPageStore
RegionedPageStore.Parameters, RegionedPageStore.Static<ATTR extends Any,
INNER_ATTR extends ATTR, REGION_TYPE extends Page<INNER_ATTR>> -
Field Summary
Fields inherited from interface io.deephaven.engine.table.ChunkSource
DEFAULT_FILL_INSTANCE, ZERO_LENGTH_CHUNK_SOURCE_ARRAY
-
Constructor Summary
ConstructorDescriptionStaticPageStore
(@NotNull RegionedPageStore.Parameters parameters, @NotNull ColumnRegionObject<DATA_TYPE, ATTR>[] regions) -
Method Summary
Modifier and TypeMethodDescriptionboolean
gatherDictionaryValuesRowSet
(RowSet.SearchIterator keysToVisit, RowSequence.Iterator knownKeys, @NotNull RowSetBuilderSequential sequentialBuilder) Optional method that should only be used on regions returned byColumnRegionObject.getDictionaryValuesRegion()
.getObject
(long elementIndex) Get a single object from this region.getObject
(@NotNull ChunkSource.FillContext context, long elementIndex) Get a single object from this region.void
Invalidate the region -- any further reads that cannot be completed consistently and correctly will fail.supportsDictionaryFormat
(RowSet.SearchIterator keysToVisit) Check if this region can expose an alternate form as paired regions oflong
keys andDATA_TYPE
values covering all of its row keys inkeysToVisit
.Methods inherited from class io.deephaven.engine.table.impl.sources.regioned.RegionedPageStore.Static
getRegion, getRegionCount, parameters
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface io.deephaven.engine.table.impl.sources.regioned.ColumnRegion
firstRowOffset
Methods inherited from interface io.deephaven.engine.table.impl.sources.regioned.ColumnRegionObject
getChunkType
Methods inherited from interface io.deephaven.engine.table.impl.DefaultChunkSource
getChunkByFilling, makeGetContext
Methods inherited from interface io.deephaven.engine.table.FillContextMaker
makeFillContext
Methods inherited from interface io.deephaven.engine.table.GetContextMaker
makeGetContext
Methods inherited from interface io.deephaven.engine.page.Page
advanceToNextPage, advanceToNextPage, advanceToNextPageAndGetPositionDistance, firstRow, getRowOffset
Methods inherited from interface io.deephaven.engine.page.PageStore
doFillChunkAppend, fillChunk, fillChunkAppend, getChunk, getChunk
Methods inherited from interface io.deephaven.engine.page.PagingChunkSource
makeFillContext, maxRow
Methods inherited from interface io.deephaven.engine.table.impl.sources.regioned.RegionedPageStore
getPageContaining, getRegionIndex, lookupRegion, mask, regionMask, regionMaskNumBits
Methods inherited from interface io.deephaven.engine.table.Releasable
releaseCachedResources
-
Constructor Details
-
StaticPageStore
public StaticPageStore(@NotNull @NotNull RegionedPageStore.Parameters parameters, @NotNull @NotNull ColumnRegionObject<DATA_TYPE, ATTR>[] regions)
-
-
Method Details
-
invalidate
public void invalidate()Description copied from interface:ColumnRegion
Invalidate the region -- any further reads that cannot be completed consistently and correctly will fail.- Specified by:
invalidate
in interfaceColumnRegion<DATA_TYPE>
-
getObject
Description copied from interface:ColumnRegionObject
Get a single object from this region.- Specified by:
getObject
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Any> - Parameters:
elementIndex
- Element row key in the table's address space- Returns:
- The object value at the specified element row key
-
getObject
Description copied from interface:ColumnRegionObject
Get a single object from this region.- Specified by:
getObject
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Any> - Parameters:
context
- APagingContextHolder
to enable resource caching where suitable, with current region index pointing to this regionelementIndex
- Element row key in the table's address space- Returns:
- The object value at the specified element row key
-
supportsDictionaryFormat
Description copied from interface:ColumnRegionObject
Check if this region can expose an alternate form as paired regions oflong
keys andDATA_TYPE
values 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(RowSet.SearchIterator, RowSequence.Iterator, RowSetBuilderSequential)
.Use
ColumnRegionObject.getDictionaryKeysRegion()
to access the region of keys andColumnRegionObject.getDictionaryValuesRegion()
to access the region of values.- Specified by:
supportsDictionaryFormat
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Any> - Parameters:
keysToVisit
- Iterator positioned at the first relevant row key belonging to this region. Will be advanced to after this region iftrue
is returned. No guarantee is made iffalse
is returned.- Returns:
- A
RegionVisitResult
specifyingFAILED
if this region cannot supply a dictionary,CONTINUE
if it can andkeysToVisit
is not exhausted, andCOMPLETE
if it can andkeysToVisit
is exhausted
-
gatherDictionaryValuesRowSet
public boolean gatherDictionaryValuesRowSet(@NotNull RowSet.SearchIterator keysToVisit, @NotNull RowSequence.Iterator knownKeys, @NotNull @NotNull RowSetBuilderSequential sequentialBuilder) Description copied from interface:ColumnRegionObject
Optional method that should only be used on regions returned byColumnRegionObject.getDictionaryValuesRegion()
. Gathers row keys representing the dictionary values for this region, excluding those already known to the caller. This is used to supportsymbol table
access.- Specified by:
gatherDictionaryValuesRowSet
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Any> - Parameters:
keysToVisit
- A search iterator over the enclosing table address space (which must have the same regions at the same masks), positioned at a row key in this region. Used to identify regions to visit. Should be advanced to after this region as a side-effect.knownKeys
- An iterator over the previously-known row keys, positioned at the first known key in this region, or after the region's maximum key if no keys are known. Should be advanced to after this region as a side effect.sequentialBuilder
- Output builder; implementations should append ranges for row keys not found inknownKeys
- Returns:
- Whether
keysToVisit
has been exhausted
-
getDictionaryKeysRegion
- Specified by:
getDictionaryKeysRegion
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Any> - Returns:
- A dictionary keys region as specified by
ColumnRegionObject.supportsDictionaryFormat(RowSet.SearchIterator)
-
getDictionaryValuesRegion
- Specified by:
getDictionaryValuesRegion
in interfaceColumnRegionObject<DATA_TYPE,
ATTR extends Any> - Returns:
- A dictionary values region as specified by
ColumnRegionObject.supportsDictionaryFormat(RowSet.SearchIterator)
-