Package com.illumon.iris.db.schema
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 Summary
Modifier and TypeMethodDescriptiondefault com.fishlib.base.log.LogOutput
append
(com.fishlib.base.log.LogOutput logOutput) Get an unmodifiable map of column names to column descriptions.getMergeCodecName
(String mergeFormat) For the specified merge format, return the defined codec name, if any.int
Get the StorageType as an integer enum value.getTableType
(boolean intraday) Get the table type for this schema, depending on if it was an intraday table or not.getTableTypeV2
(boolean intraday) Get the table type for this schema, depending on if it was an intraday table or not.
-
Method Details
-
getNamespace
- Returns:
- The namespace of the table
-
getTableName
- Returns:
- The name of the table
-
getDefaultMergeFormat
- Returns:
- the preferred merge storage format
-
getMergeCodecName
For the specified merge format, return the defined codec name, if any.- Parameters:
mergeFormat
- the merge format- Returns:
- the codec name, if defined
-
getNamespaceSet
- Returns:
- The
NamespaceSet
to which this schema belongs
-
getStorageType
int getStorageType()Get the StorageType as an integer enum value.- Returns:
- the storage type
-
getTableType
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
- ImplNote:
- This method's table type inference does not account for new
table types
; in particular, for User tables. To do so, usegetTableTypeV2(boolean)
instead. This method is not scheduled for removal, but should only be used within Legacy workers or infrastructure code.
-
getTableTypeV2
Get the table type for this schema, depending on if it was an intraday table or not. The intraday setting is used even for User table types.- Parameters:
intraday
- true if the returned type should reflect an intraday table- Returns:
- The table type
-
getVersion
- Returns:
- The version of this schema
-
getTableDefinition
- Returns:
- The
TableDefinition
corresponding to this Schema
-
getTableDescription
- Returns:
- The table description from the schema.
-
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 interfacecom.fishlib.base.log.LogOutputAppendable
-