public class CassandraSchemaHandler
extends org.datanucleus.store.schema.AbstractStoreSchemaHandler
| Constructor and Description |
|---|
CassandraSchemaHandler(CassandraStoreManager storeMgr) |
| Modifier and Type | Method and Description |
|---|---|
void |
createDatabase(String catalogName,
String schemaName,
Properties props,
Object connection)
Method to create a database (keyspace) in Cassandra.
|
protected String |
createIndexCQL(String indexName,
String schemaName,
String tableName,
String columnName,
org.datanucleus.metadata.IndexMetaData idxmd) |
protected void |
createSchemaForClass(org.datanucleus.metadata.AbstractClassMetaData cmd,
com.datastax.driver.core.Session session,
org.datanucleus.ClassLoaderResolver clr,
List<String> tableStmts,
List<String> constraintStmts)
Method to generate the necessary CQL to create the schema (table/indexes) for the specified class.
|
void |
createSchemaForClasses(Set<String> classNames,
Properties props,
Object connection) |
void |
deleteDatabase(String catalogName,
String schemaName,
Properties props,
Object connection)
Method to drop a database (keyspace) in Cassandra.
|
void |
deleteSchemaForClasses(Set<String> classNames,
Properties props,
Object connection) |
protected com.datastax.driver.core.ColumnMetadata |
getColumnMetadataForColumn(com.datastax.driver.core.TableMetadata tmd,
org.datanucleus.store.schema.table.Column col) |
protected com.datastax.driver.core.ColumnMetadata |
getColumnMetadataForColumnName(com.datastax.driver.core.TableMetadata tmd,
String colName) |
protected com.datastax.driver.core.IndexMetadata |
getIndexMetadataForColumn(com.datastax.driver.core.TableMetadata tmd,
String colName) |
static com.datastax.driver.core.KeyspaceMetadata |
getKeyspaceMetadata(com.datastax.driver.core.Session session,
String schemaName) |
static com.datastax.driver.core.TableMetadata |
getTableMetadata(com.datastax.driver.core.Session session,
String schemaName,
String tableName) |
protected String |
getTypeNameForColumn(com.datastax.driver.core.ColumnMetadata colmd) |
void |
validateSchema(Set<String> classNames,
Properties props,
Object connection) |
clear, getSchemaData, getStoreManager, isAutoCreateColumns, isAutoCreateConstraints, isAutoCreateDatabase, isAutoCreateTables, isAutoCreateWarnOnError, isAutoDeleteColumns, isValidateColumns, isValidateConstraints, isValidateTablespublic CassandraSchemaHandler(CassandraStoreManager storeMgr)
public void createDatabase(String catalogName, String schemaName, Properties props, Object connection)
createDatabase in interface org.datanucleus.store.schema.StoreSchemaHandlercreateDatabase in class org.datanucleus.store.schema.AbstractStoreSchemaHandlercatalogName - UnusedschemaName - Name of the schemaprops - Any properties defining the new keyspacepublic void createSchemaForClasses(Set<String> classNames, Properties props, Object connection)
createSchemaForClasses in interface org.datanucleus.store.schema.StoreSchemaHandlercreateSchemaForClasses in class org.datanucleus.store.schema.AbstractStoreSchemaHandlerprotected void createSchemaForClass(org.datanucleus.metadata.AbstractClassMetaData cmd,
com.datastax.driver.core.Session session,
org.datanucleus.ClassLoaderResolver clr,
List<String> tableStmts,
List<String> constraintStmts)
cmd - Metadata for the classsession - Session to use for checking of existence in datastoreclr - ClassLoader resolvertableStmts - List to add any table CQL statements toconstraintStmts - List to add any constraint CQL statements topublic void deleteDatabase(String catalogName, String schemaName, Properties props, Object connection)
deleteDatabase in interface org.datanucleus.store.schema.StoreSchemaHandlerdeleteDatabase in class org.datanucleus.store.schema.AbstractStoreSchemaHandlercatalogName - UnusedschemaName - Name of the schema (keyspace).props - Any properties controlling deletionconnection - Connection to use (null implies this will obtain its own connection)public void deleteSchemaForClasses(Set<String> classNames, Properties props, Object connection)
deleteSchemaForClasses in interface org.datanucleus.store.schema.StoreSchemaHandlerdeleteSchemaForClasses in class org.datanucleus.store.schema.AbstractStoreSchemaHandlerpublic void validateSchema(Set<String> classNames, Properties props, Object connection)
validateSchema in interface org.datanucleus.store.schema.StoreSchemaHandlervalidateSchema in class org.datanucleus.store.schema.AbstractStoreSchemaHandlerprotected String createIndexCQL(String indexName, String schemaName, String tableName, String columnName, org.datanucleus.metadata.IndexMetaData idxmd)
public static com.datastax.driver.core.TableMetadata getTableMetadata(com.datastax.driver.core.Session session,
String schemaName,
String tableName)
public static com.datastax.driver.core.KeyspaceMetadata getKeyspaceMetadata(com.datastax.driver.core.Session session,
String schemaName)
protected String getTypeNameForColumn(com.datastax.driver.core.ColumnMetadata colmd)
protected com.datastax.driver.core.ColumnMetadata getColumnMetadataForColumn(com.datastax.driver.core.TableMetadata tmd,
org.datanucleus.store.schema.table.Column col)
protected com.datastax.driver.core.ColumnMetadata getColumnMetadataForColumnName(com.datastax.driver.core.TableMetadata tmd,
String colName)
protected com.datastax.driver.core.IndexMetadata getIndexMetadataForColumn(com.datastax.driver.core.TableMetadata tmd,
String colName)
Copyright © 2020. All rights reserved.