Interface TableDefinitionSchema

All Superinterfaces:
com.fishlib.base.log.LogOutputAppendable
All Known Subinterfaces:
MutableSchema, Schema, SchemaXml
All Known Implementing Classes:
CopyTableSchema, InvalidSchema, Schema.AbstractSchema, Schema.Delegating

public interface TableDefinitionSchema
extends com.fishlib.base.log.LogOutputAppendable
An immutable schema that defines a particular table.
  • Method Details

    • getNamespace

      @NotNull String getNamespace()
      Returns:
      The namespace of the table
    • getTableName

      @NotNull String getTableName()
      Returns:
      The name of the table
    • getDefaultMergeFormat

      @NotNull Database.StorageFormat getDefaultMergeFormat()
      Returns:
      the preferred merge storage format
    • getMergeCodecName

      @Nullable String getMergeCodecName​(@NotNull String mergeFormat)
      For the specified merge format, return the defined codec name, if any.
      Parameters:
      mergeFormat - the merge format
      Returns:
      the codec name, if defined
    • getNamespaceSet

      @NotNull NamespaceSet getNamespaceSet()
      Returns:
      The NamespaceSet to which this schema belongs
    • getTableType

      @NotNull TableType getTableType​(boolean intraday)
      Get the table type for this schema, depending on if it was an intraday table or not. Note that the intraday setting is ignored for User table types.
      Parameters:
      intraday - true if the returned type should reflect an intraday table
      Returns:
      The table type
    • getVersion

      @NotNull SchemaVersion getVersion()
      Returns:
      The version of this schema
    • getTableDefinition

      @NotNull TableDefinition getTableDefinition()
      Returns:
      The TableDefinition corresponding to this Schema
    • getTableDescription

      @NotNull String getTableDescription()
      Returns:
      The table description from the schema.
    • getColumnDescriptions

      @NotNull Map<String,​String> getColumnDescriptions()
      Get an unmodifiable map of column names to column descriptions. The map may not contain any columns that don't have descriptions.
      Returns:
      A map of column names to column descriptions
    • append

      default com.fishlib.base.log.LogOutput append​(com.fishlib.base.log.LogOutput logOutput)
      Specified by:
      append in interface com.fishlib.base.log.LogOutputAppendable