Class Schema.Delegating

java.lang.Object
com.illumon.iris.db.schema.Schema.AbstractSchema
com.illumon.iris.db.schema.Schema.Delegating
All Implemented Interfaces:
com.fishlib.base.log.LogOutputAppendable, Schema, TableDefinitionSchema, Serializable
Direct Known Subclasses:
CopyTableSchema
Enclosing interface:
Schema

public abstract static class Schema.Delegating
extends Schema.AbstractSchema
Delegate all method calls to an implementation object. This is designed to be overloaded.
See Also:
Serialized Form
  • Constructor Details

    • Delegating

      protected Delegating​(Schema delegate)
      Access is for extending classes.
      Parameters:
      delegate - delegate to this Schema
  • Method Details

    • getDelegate

      protected Schema getDelegate()
    • getNamespace

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

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

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

      @Nullable public String getMergeCodecName​(@NotNull String mergeFormat)
      Description copied from interface: TableDefinitionSchema
      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 public NamespaceSet getNamespaceSet()
      Returns:
      The NamespaceSet to which this schema belongs
    • getTableType

      @NotNull public TableType getTableType​(boolean intraday)
      Description copied from interface: TableDefinitionSchema
      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 public SchemaVersion getVersion()
      Returns:
      The version of this schema
    • getTableDefinition

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

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

      @NotNull public Map<String,​String> getColumnDescriptions()
      Description copied from interface: TableDefinitionSchema
      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
    • getImportSources

      @NotNull public List<ImportSource> getImportSources()
      Description copied from interface: Schema
      Get all defined ImportSources.
      Returns:
      all defined import sources, might be empty
    • getImportSources

      @NotNull public List<ImportSource> getImportSources​(@NotNull String type)
      Description copied from interface: Schema
      Get all ImportSources of the given type.
      Parameters:
      type - the import source type
      Returns:
      all import sources of the given type, may be null.
    • getImportSource

      @Nullable public ImportSource getImportSource​(@NotNull String type, @Nullable String sourceName)
      Description copied from interface: Schema
      Get the ImportSource with the given type and name. The first matching ImportSource is returned, where it is possible to have more than one. If sourceName is null, the first import source of the specified type will be returned.
      Parameters:
      type - the import source type
      sourceName - the import source name, may be null
      Returns:
      the identified import source, or null if not found
    • getAttributes

      @NotNull public Map<String,​String> getAttributes()
      Description copied from interface: Schema
      Get all top level attributes for this schema.
      Returns:
      a map containing all attributes set for this schema. Might be empty.
    • getAttributeValue

      @Nullable public String getAttributeValue​(@NotNull String attributeName)
      Description copied from interface: Schema
      Get the value for the named attribute.
      Parameters:
      attributeName - the attribute to fetch
      Returns:
      the value for the attribute, or null if it is not set
    • getPartitionKeyFormula

      @Nullable public String getPartitionKeyFormula()
      Description copied from interface: Schema
      Get the partitioning key formula for this schema.
      Returns:
      the partitioning key formula if set, else null
    • hasLoggers

      public boolean hasLoggers()
      Description copied from interface: Schema
      Returns true if this schema has any Loggers or LoggerListeners.
      Returns:
      true if this schema has any Loggers or LoggerListeners
    • hasListeners

      public boolean hasListeners()
      Description copied from interface: Schema
      Returns true if this schema has any Listeners or LoggerListeners.
      Returns:
      true if this schema has any Listeners or LoggerListeners
    • getLoggers

      @NotNull public List<Logger> getLoggers()
      Description copied from interface: Schema
      Get an immutable list of the Loggers for this schema. This includes LoggerListeners.
      Returns:
      an immutable list of Loggers
    • getListeners

      @NotNull public List<Listener> getListeners()
      Description copied from interface: Schema
      Get an immutable list of the Listeners for this schema. This includes LoggerListeners.
      Returns:
      an immutable list of Listeners
    • getValidator

      @Nullable public Validator getValidator()
      Description copied from interface: Schema
      Get an immutable Validator for this schema.
      Returns:
      a Validators if configured, or null
    • getDataIndexSets

      @NotNull public List<String[]> getDataIndexSets()
      Description copied from interface: Schema
      Get the set of Data Indexes for this table. Each element in the list is a set of columns which produce a key for which the table has been indexed by.
      Returns:
      a list of Data Index sets