Package com.illumon.iris.db.schema
Interface Schema
- All Superinterfaces:
com.fishlib.base.log.LogOutputAppendable
,Serializable
,TableDefinitionSchema
- All Known Subinterfaces:
MutableSchema
,SchemaXml
- All Known Implementing Classes:
CopyTableSchema
,InvalidSchema
,Schema.AbstractSchema
,Schema.Delegating
This defines a complete schema, including
TableDefinitionSchema
and
additional metadata for import and logging.-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic class
Implement behaviors common to all implementations.static class
Delegate all method calls to an implementation object. -
Method Summary
Modifier and TypeMethodDescriptionGet all top level attributes for this schema.getAttributeValue
(String attributeName) Get the value for the named attribute.Get the set of Data Indexes for this table.Return the extended storage for this schemaGet an immutable copy of thisSchema
.getImportSource
(String type, String sourceName) Get theImportSource
with the given type and name.Get all definedImportSource
s.getImportSources
(String type) Get allImportSource
s of the given type.Get an immutable list of the Listeners for this schema.Get an immutable list of the Loggers for this schema.Get a mutable copy of thisSchema
.Get the partitioning key formula for this schema.Get an immutable Validator for this schema.boolean
Returns true if this schema has any Listeners or LoggerListeners.boolean
Returns true if this schema has any Loggers or LoggerListeners.Methods inherited from interface com.illumon.iris.db.schema.TableDefinitionSchema
append, getColumnDescriptions, getDefaultMergeFormat, getMergeCodecName, getNamespace, getNamespaceSet, getStorageType, getTableDefinition, getTableDescription, getTableName, getTableType, getTableTypeV2, getVersion
-
Method Details
-
getMutable
Get a mutable copy of thisSchema
. The returned copy is guaranteed to be decoupled from this instance, That is, changes to the returnedmutable
instance will not affect this instance.- Returns:
- A mutable copy of this
Schema
.
-
getImmutable
Get an immutable copy of thisSchema
. May return itself if it is already immutable.- Returns:
- An immutable copy of this schema.
-
getImportSources
Get all definedImportSource
s.- Returns:
- all defined import sources, might be empty
-
getImportSources
Get allImportSource
s of the given type.- Parameters:
type
- the import source type- Returns:
- all import sources of the given type, may be null.
-
getImportSource
Get theImportSource
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 typesourceName
- the import source name, may be null- Returns:
- the identified import source, or null if not found
-
getAttributes
Get all top level attributes for this schema.- Returns:
- a map containing all attributes set for this schema. Might be empty.
-
getAttributeValue
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
Get the partitioning key formula for this schema.- Returns:
- the partitioning key formula if set, else null
-
hasLoggers
boolean hasLoggers()Returns true if this schema has any Loggers or LoggerListeners.- Returns:
- true if this schema has any Loggers or LoggerListeners
-
hasListeners
boolean hasListeners()Returns true if this schema has any Listeners or LoggerListeners.- Returns:
- true if this schema has any Listeners or LoggerListeners
-
getLoggers
Get an immutable list of the Loggers for this schema. This includes LoggerListeners.- Returns:
- an immutable list of Loggers
-
getListeners
Get an immutable list of the Listeners for this schema. This includes LoggerListeners.- Returns:
- an immutable list of Listeners
-
getValidator
Get an immutable Validator for this schema.- Returns:
- a Validators if configured, or null
-
getDataIndexSets
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
-
getExtendedStorage
Return the extended storage for this schema- Returns:
- an ExtendedStorage if present, or null
-