Interface ColumnLocation

All Superinterfaces:
com.fishlib.base.log.LogOutputAppendable, NamedImplementation, StringUtils.StringKeyedObject
All Known Subinterfaces:
DeephavenFormatColumnLocation, ParquetFormatColumnLocation<ATTR>
All Known Implementing Classes:
AbstractColumnLocation, LocalColumnLocation

public interface ColumnLocation extends StringUtils.StringKeyedObject, NamedImplementation, com.fishlib.base.log.LogOutputAppendable
Per-TableLocation, per-column key and state object.
  • Method Details

    • getTableLocation

      @NotNull TableLocation getTableLocation()
      Get the TableLocation enclosing this ColumnLocation.
      Returns:
      the TableLocation enclosing this ColumnLocation
    • getName

      @NotNull String 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
    • getFormat

      @FinalDefault default TableLocation.Format getFormat()
      Get the format that was used to persist this column location.
      Returns:
      The format for this column location
    • cast

      default <CL extends ColumnLocation> CL cast()
      Get this column location cast to the specified type
      Returns:
      this, with the appropriate cast applied
    • makeColumnRegionChar

      ColumnRegionChar<Attributes.Values> makeColumnRegionChar(@NotNull com.illumon.dataobjects.ColumnDefinition<?> columnDefinition)
      Create a ColumnRegionChar for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionChar for 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 a ColumnRegionByte for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionByte for 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 a ColumnRegionShort for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionShort for 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 a ColumnRegionInt for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionInt for 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 a ColumnRegionLong for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionLong for 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 a ColumnRegionFloat for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionFloat for 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 a ColumnRegionDouble for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      Returns:
      A ColumnRegionDouble for 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 io.deephaven.util.codec.ObjectDecoder<?> decoder, @NotNull SourceTableColumnInstructions instructions)
      Create a ColumnRegionObject for the specified column definition.
      Parameters:
      columnDefinition - The ColumnDefinition used to lookup type information
      decoder - an ObjectDecoder for producing values from the stored bytes at this location.
      Returns:
      A ColumnRegionObject for reading data from this ColumnLocation
      Throws:
      UnsupportedOperationException - If this ColumnLocation does not contain object data
    • getStringRepresentation

      default String getStringRepresentation()
      Specified by:
      getStringRepresentation in interface StringUtils.StringKeyedObject
    • append

      default com.fishlib.base.log.LogOutput append(@NotNull com.fishlib.base.log.LogOutput logOutput)
      Specified by:
      append in interface com.fishlib.base.log.LogOutputAppendable
    • toStringHelper

      default String toStringHelper()