Class RegionedColumnSourceObject.AsValues<T,D>
java.lang.Object
com.illumon.iris.db.v2.sources.AbstractColumnSource<DATA_TYPE>
com.illumon.iris.db.v2.sources.regioned.RegionedColumnSourceBase<DATA_TYPE,ATTR,REGION_TYPE>
com.illumon.iris.db.v2.sources.regioned.RegionedColumnSourceObject<T,Attributes.Values>
com.illumon.iris.db.v2.sources.regioned.RegionedColumnSourceObject.AsValues<T,D>
- All Implemented Interfaces:
LongSizedDataStructure,ChunkSource<Attributes.Values>,ChunkSource.WithPrev<Attributes.Values>,DefaultChunkSource<Attributes.Values>,DefaultChunkSource.SupportsContiguousGet<Attributes.Values>,DefaultChunkSource.WithPrev<Attributes.Values>,FillContextMaker,GetContextMaker,PageStore<Attributes.Values,,Attributes.Values, ColumnRegionObject<T, Attributes.Values>> PagingChunkSource<Attributes.Values>,ColumnSource<T>,ColumnSourceGetDefaults.ForObject<T>,ElementSource<T>,ImmutableColumnSource<T>,MakeRegion<Attributes.Values,,ColumnRegionObject<T, Attributes.Values>> RegionedColumnSource<T>,RegionedPageStore<Attributes.Values,,Attributes.Values, ColumnRegionObject<T, Attributes.Values>> Releasable,SizedColumnSource<T>,TupleExporter<T>,TupleSource<T>,Serializable
- Direct Known Subclasses:
RegionedColumnSourceObjectWithDictionary
- Enclosing class:
- RegionedColumnSourceObject<T,
ATTR extends Attributes.Values>
public static class RegionedColumnSourceObject.AsValues<T,D>
extends RegionedColumnSourceObject<T,Attributes.Values>
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.illumon.iris.db.v2.sources.regioned.RegionedColumnSourceObject
RegionedColumnSourceObject.AsValues<T,D>, RegionedColumnSourceObject.FillContext Nested classes/interfaces inherited from class com.illumon.iris.db.v2.sources.AbstractColumnSource
AbstractColumnSource.DefaultedImmutable<DATA_TYPE>, AbstractColumnSource.DefaultedMutable<DATA_TYPE>, AbstractColumnSource.IsSerializableNested classes/interfaces inherited from interface com.illumon.iris.db.v2.sources.chunk.ChunkSource
ChunkSource.GetContext, ChunkSource.WithPrev<ATTR extends Attributes.Any>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.regioned.RegionedPageStore
RegionedPageStore.Helper, RegionedPageStore.Static<ATTR extends Attributes.Values,INNER_ATTR extends ATTR, REGION_TYPE extends ColumnRegion<INNER_ATTR>> -
Field Summary
Fields inherited from class com.illumon.iris.db.v2.sources.regioned.RegionedColumnSourceBase
USE_PARALLEL, USE_PUSHDOWNFields inherited from class com.illumon.iris.db.v2.sources.AbstractColumnSource
componentType, typeFields 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.chunk.ChunkSource.WithPrev
ZERO_LENGTH_CHUNK_SOURCE_WITH_PREV_ARRAYFields inherited from interface com.illumon.iris.db.v2.sources.ColumnSource
ZERO_LENGTH_COLUMN_SOURCE_ARRAYFields inherited from interface com.illumon.iris.db.v2.sources.regioned.RegionedColumnSource
ELEMENT_INDEX_TO_SUB_REGION_ELEMENT_INDEX_MASK, MAXIMUM_REGION_COUNT, REGION_CAPACITY_IN_ELEMENTS, REGION_INDEX_ADDRESS_BITS, SUB_REGION_ELEMENT_INDEX_ADDRESS_BITSFields inherited from interface com.illumon.iris.db.v2.sources.regioned.RegionedPageStore
REGION_MASK, REGION_MASK_NUM_BITS -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintaddRegion(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, ColumnLocation columnLocation, SourceTableColumnInstructions instructions) Add a region to this regioned column source.get(long elementIndex) Get the value from the source.final ColumnRegionObject<T,Attributes.Values> getRegion(int regionIndex) Map from a region index to its corresponding region.final intGet the number of regions.makeFillContext(int chunkCapacity, SharedContext sharedContext) Allocate a newChunkSource.FillContextfor filling chunks from thisFillContextMaker, typically aChunkSource.makeRegion(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, ColumnLocation columnLocation, SourceTableColumnInstructions instructions, int regionIndex) Get a new or re-usable column region appropriate for this source.voidRelease any resources held for caching purposes.Methods inherited from class com.illumon.iris.db.v2.sources.regioned.RegionedColumnSourceBase
disableGrouping, doMatchWithGrouping, fillChunk, fillPrevChunk, matchMethods inherited from class com.illumon.iris.db.v2.sources.AbstractColumnSource
allowsReinterpret, canUseGrouping, defaultFillChunk, doReinterpret, getComponentType, getGroupingBuilder, getGroupingProvider, getNativeType, getType, hasGrouping, hasGrouping, isSerializable, matchWithGrouping, reinterpret, setGroupingProviderMethods 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.chunk.ChunkSource.WithPrev
fillPrevChunkMethods inherited from interface com.illumon.iris.db.v2.sources.ColumnSource
allowsReinterpret, cast, createPreviousTuple, createTuple, createTupleFromValues, exportElement, exportElement, exportToExternalKey, getColumnSources, getComponentType, getGroupingBuilder, getGroupingProvider, getNativeType, getPrevSource, getType, hasGrouping, hasGrouping, match, reinterpret, releaseCachedResources, setGroupingProvider, startTrackingPrevValuesMethods inherited from interface com.illumon.iris.db.v2.sources.ColumnSourceGetDefaults.ForObject
getBoolean, getByte, getChar, getDouble, getFloat, getInt, getLong, getShortMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.DefaultChunkSource
getChunkByFilling, makeGetContextMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.DefaultChunkSource.WithPrev
getPrevChunk, getPrevChunk, getPrevChunkByFillingMethods 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.ImmutableColumnSource
getPrev, getPrevBoolean, getPrevByte, getPrevChar, getPrevDouble, getPrevFloat, getPrevInt, getPrevLong, getPrevShort, isImmutableMethods inherited from interface com.illumon.iris.db.util.LongSizedDataStructure
intSize, intSizeMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.PageStore
doFillChunkAppend, fillChunkAppend, getChunk, getChunkMethods inherited from interface com.illumon.iris.db.v2.sources.chunk.page.PagingChunkSource
maxRowMethods inherited from interface com.illumon.iris.db.v2.sources.regioned.RegionedPageStore
getPageContaining, lookupRegion, mask, sizeMethods inherited from interface com.illumon.iris.db.v2.tuples.TupleExporter
exportElementReinterpretedMethods inherited from interface com.illumon.iris.db.v2.tuples.TupleSource
createTupleFromReinterpretedValues
-
Constructor Details
-
AsValues
-
AsValues
-
-
Method Details
-
get
Description copied from interface:ElementSourceGet the value from the source. This may return boxed values for basic types.- Parameters:
elementIndex- the location in index space to get the value from.- Returns:
- the value at the index, potentially null.
-
makeRegion
public ColumnRegionObject<T,Attributes.Values> makeRegion(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, @NotNull ColumnLocation columnLocation, @NotNull SourceTableColumnInstructions instructions, int regionIndex) Description copied from interface:MakeRegionGet a new or re-usable column region appropriate for this source.- Parameters:
columnDefinition- TheColumnDefinitioncolumnLocation- TheColumnLocationregionIndex- The index of the region to add.- Returns:
- A new or re-usable column region appropriate for this source and the supplied parameters. A null value may be returned, which should be interpreted to mean use a special null column, which has size() 0 and is full of the appropriate "null" value for the column's type.
-
addRegion
@OverridingMethodsMustInvokeSuper public int addRegion(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, @NotNull ColumnLocation columnLocation, @NotNull SourceTableColumnInstructions instructions) Description copied from interface:RegionedColumnSourceAdd a region to this regioned column source. Elements in this region are ordered after elements in other regions added previously.- Specified by:
addRegionin interfaceRegionedColumnSource<DATA_TYPE>- Parameters:
columnDefinition- The column definition for this column source (potentially varies by region)columnLocation- The column location for the region being added- Returns:
- The index assigned to the added region
-
getRegionCount
public final int getRegionCount()Description copied from interface:RegionedPageStoreGet the number of regions.- Specified by:
getRegionCountin interfaceRegionedPageStore<DATA_TYPE,ATTR extends Attributes.Values, REGION_TYPE extends ColumnRegion<ATTR>> - Returns:
- The number of regions that have been added
-
getRegion
Description copied from interface:RegionedPageStoreMap from a region index to its corresponding region.- Specified by:
getRegionin interfaceRegionedPageStore<DATA_TYPE,ATTR extends Attributes.Values, REGION_TYPE extends ColumnRegion<ATTR>> - Parameters:
regionIndex- The region index- Returns:
- The region for the supplied region index
-
releaseCachedResources
@OverridingMethodsMustInvokeSuper public void releaseCachedResources()Description copied from interface:ColumnSourceRelease any resources held for caching purposes. Implementations need not guarantee that concurrent accesses are correct, as the purpose of this method is to ensure cleanup for column sources that will no longer be used.- Specified by:
releaseCachedResourcesin interfaceColumnSource<DATA_TYPE>- Specified by:
releaseCachedResourcesin interfaceReleasable
-
getNullRegion
-