Class RegionedColumnSourceObject<T,ATTR extends Attributes.Values>

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,ATTR>
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,ATTR,ColumnRegionObject<T,ATTR>>, PagingChunkSource<Attributes.Values>, ColumnSource<T>, ColumnSourceGetDefaults.ForObject<T>, ElementSource<T>, ImmutableColumnSource<T>, MakeRegion<ATTR,ColumnRegionObject<T,ATTR>>, RegionedColumnSource<T>, RegionedPageStore<Attributes.Values,ATTR,ColumnRegionObject<T,ATTR>>, Releasable, SizedColumnSource<T>, TupleExporter<T>, TupleSource<T>, Serializable
Direct Known Subclasses:
RegionedColumnSourceObject.AsValues

public abstract class RegionedColumnSourceObject<T,ATTR extends Attributes.Values> extends RegionedColumnSourceBase<DATA_TYPE,ATTR,REGION_TYPE> implements ColumnSourceGetDefaults.ForObject<T>
See Also:
  • Method Details

    • addRegion

      @OverridingMethodsMustInvokeSuper public int addRegion(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition, @NotNull ColumnLocation columnLocation, @NotNull SourceTableColumnInstructions instructions)
      Description copied from interface: RegionedColumnSource
      Add a region to this regioned column source. Elements in this region are ordered after elements in other regions added previously.
      Specified by:
      addRegion in interface RegionedColumnSource<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: RegionedPageStore
      Get the number of regions.
      Specified by:
      getRegionCount in interface RegionedPageStore<DATA_TYPE,ATTR extends Attributes.Values,REGION_TYPE extends ColumnRegion<ATTR>>
      Returns:
      The number of regions that have been added
    • getRegion

      public ColumnRegionObject<T,ATTR> getRegion(int regionIndex)
      Description copied from interface: RegionedPageStore
      Map from a region index to its corresponding region.
      Specified by:
      getRegion in interface RegionedPageStore<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: ColumnSource
      Release 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:
      releaseCachedResources in interface ColumnSource<DATA_TYPE>
      Specified by:
      releaseCachedResources in interface Releasable
    • getNullRegion

      @NotNull public final ColumnRegionObject<T,ATTR> getNullRegion()