Package org.apache.cassandra.schema
Interface SchemaTransformation
-
- All Known Implementing Classes:
AlterKeyspaceStatement,AlterSchemaStatement,AlterTableStatement,AlterTableStatement.AlterColumn,AlterTypeStatement,AlterViewStatement,CreateAggregateStatement,CreateFunctionStatement,CreateIndexStatement,CreateKeyspaceStatement,CreateTableStatement,CreateTriggerStatement,CreateTypeStatement,CreateViewStatement,DropAggregateStatement,DropFunctionStatement,DropIndexStatement,DropKeyspaceStatement,DropTableStatement,DropTriggerStatement,DropTypeStatement,DropViewStatement
public interface SchemaTransformation
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static classSchemaTransformation.SchemaTransformationResultThe result of applying (on this node) a given schema transformation.
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Keyspacesapply(Keyspaces schema)Apply a statement transformation to a schema snapshot.default java.util.Optional<java.lang.Long>fixedTimestampMicros()If the transformation should be applied with a certain timestamp, this method should be overriden.
-
-
-
Method Detail
-
apply
Keyspaces apply(Keyspaces schema)
Apply a statement transformation to a schema snapshot.Implementing methods should be side-effect free (outside of throwing exceptions if the transformation cannot be successfully applied to the provided schema).
- Parameters:
schema- Keyspaces to base the transformation on- Returns:
- Keyspaces transformed by the statement
-
fixedTimestampMicros
default java.util.Optional<java.lang.Long> fixedTimestampMicros()
If the transformation should be applied with a certain timestamp, this method should be overriden. This is used bySchemaTransformations.updateSystemKeyspace(KeyspaceMetadata, long)when we need to set the fixed timestamp in order to preserve user settings.
-
-