Package com.illumon.iris.db.v2.locations
Interface ColumnLocation<TLT extends TableLocation>
- All Superinterfaces:
com.fishlib.base.log.LogOutputAppendable,NamedImplementation,StringUtils.StringKeyedObject
- All Known Subinterfaces:
DeephavenFormatColumnLocation<TLT>,ParquetFormatColumnLocation<ATTR,TLT>
- All Known Implementing Classes:
AbstractColumnLocation,LocalColumnLocation
public interface ColumnLocation<TLT extends TableLocation> extends StringUtils.StringKeyedObject, NamedImplementation, com.fishlib.base.log.LogOutputAppendable
Per-TableLocation, per-column key and state object.
-
Method Summary
Modifier and Type Method Description default com.fishlib.base.log.LogOutputappend(com.fishlib.base.log.LogOutput logOutput)default DeephavenFormatColumnLocation<TLT>asDeephavenFormat()Get this column location cast to theTableLocation.Format.DEEPHAVENformat sub-interface.default ParquetFormatColumnLocation<Attributes.Values,TLT>asParquetFormat()Get this column location cast to theTableLocation.Format.PARQUETformat sub-interface.booleanexists()Check for existence of this ColumnLocation.default TableLocation.FormatgetFormat()Get the format that was used to persist this column location.<METADATA_TYPE>
METADATA_TYPEgetMetadata(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Get the metadata object stored with this column, or null if no such data exists.StringgetName()Get the column name for this ColumnLocation.default StringgetStringRepresentation()TLTgetTableLocation()Get theTableLocationenclosing this ColumnLocation.ColumnRegionByte<Attributes.Values>makeColumnRegionByte(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionBytefor the specified column definition.ColumnRegionChar<Attributes.Values>makeColumnRegionChar(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionCharfor the specified column definition.ColumnRegionDouble<Attributes.Values>makeColumnRegionDouble(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionDoublefor the specified column definition.ColumnRegionFloat<Attributes.Values>makeColumnRegionFloat(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionFloatfor the specified column definition.ColumnRegionInt<Attributes.Values>makeColumnRegionInt(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionIntfor the specified column definition.ColumnRegionLong<Attributes.Values>makeColumnRegionLong(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionLongfor the specified column definition.<TYPE> ColumnRegionObject<TYPE,Attributes.Values>makeColumnRegionObject(com.illumon.dataobjects.ColumnDefinition<TYPE> columnDefinition, ObjectDecoder<?> decoder, ColumnRegionObjectCached.CacheFactory<TYPE,?> cacheFactory)Create aColumnRegionObjectfor the specified column definition.ColumnRegionShort<Attributes.Values>makeColumnRegionShort(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionShortfor the specified column definition.default StringtoStringHelper()
-
Method Details
-
getTableLocation
Get theTableLocationenclosing this ColumnLocation.- Returns:
- the
TableLocationenclosing this ColumnLocation
-
getName
Get the column name for this ColumnLocation.- Returns:
- the column name for this ColumnLocation
-
exists
boolean exists()Check for existence of this ColumnLocation.- Returns:
- True iff the ColumnLocation actually exists
-
getMetadata
@Nullable <METADATA_TYPE> METADATA_TYPE getMetadata(com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Get the metadata object stored with this column, or null if no such data exists.
This is typically a value to range map (grouping metadata). The value to range map, if non-null, is a map from unique (boxed) column values for this location to the associated ranges in which they occur. Ranges are either 2-element int[]s, or 2-element long[]s.
- Returns:
- The metadata stored with this column, or null if no such data exists
-
getFormat
Get the format that was used to persist this column location.- Returns:
- The format for this column location
-
asDeephavenFormat
Get this column location cast to theTableLocation.Format.DEEPHAVENformat sub-interface.- Returns:
this, with the appropriate cast applied
-
asParquetFormat
Get this column location cast to theTableLocation.Format.PARQUETformat sub-interface.- Returns:
this, with the appropriate cast applied
-
makeColumnRegionChar
ColumnRegionChar<Attributes.Values> makeColumnRegionChar(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionCharfor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionCharfor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain char data
-
makeColumnRegionByte
ColumnRegionByte<Attributes.Values> makeColumnRegionByte(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionBytefor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionBytefor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain byte data
-
makeColumnRegionShort
ColumnRegionShort<Attributes.Values> makeColumnRegionShort(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionShortfor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionShortfor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain short data
-
makeColumnRegionInt
ColumnRegionInt<Attributes.Values> makeColumnRegionInt(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionIntfor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionIntfor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain int data
-
makeColumnRegionLong
ColumnRegionLong<Attributes.Values> makeColumnRegionLong(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionLongfor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionLongfor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain long data
-
makeColumnRegionFloat
ColumnRegionFloat<Attributes.Values> makeColumnRegionFloat(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionFloatfor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionFloatfor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain float data
-
makeColumnRegionDouble
ColumnRegionDouble<Attributes.Values> makeColumnRegionDouble(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)Create aColumnRegionDoublefor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type information- Returns:
- A
ColumnRegionDoublefor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain double data
-
makeColumnRegionObject
<TYPE> ColumnRegionObject<TYPE,Attributes.Values> makeColumnRegionObject(@NotNull com.illumon.dataobjects.ColumnDefinition<TYPE> columnDefinition, @NotNull ObjectDecoder<?> decoder, @Nullable ColumnRegionObjectCached.CacheFactory<TYPE,?> cacheFactory)Create aColumnRegionObjectfor the specified column definition.- Parameters:
columnDefinition- TheColumnDefinitionused to lookup type informationdecoder- anObjectDecoderfor producing values from the stored bytes at this location.- Returns:
- A
ColumnRegionObjectfor reading data from this ColumnLocation - Throws:
UnsupportedOperationException- If this ColumnLocation does not contain object data
-
getStringRepresentation
- Specified by:
getStringRepresentationin interfaceStringUtils.StringKeyedObject
-
append
default com.fishlib.base.log.LogOutput append(@NotNull com.fishlib.base.log.LogOutput logOutput)- Specified by:
appendin interfacecom.fishlib.base.log.LogOutputAppendable
-
toStringHelper
-