public class BasicDBMetadata extends Object implements DBMetadata
| Modifier and Type | Field and Description |
|---|---|
protected Map<RelationID,RelationDefinition> |
relations |
| Modifier | Constructor and Description |
|---|---|
protected |
BasicDBMetadata(String driverName,
String driverVersion,
String databaseProductName,
String databaseVersion,
Map<RelationID,DatabaseRelationDefinition> tables,
Map<RelationID,RelationDefinition> relations,
List<DatabaseRelationDefinition> listOfTables,
QuotedIDFactory idfac) |
protected |
BasicDBMetadata(String driverName,
String driverVersion,
String databaseProductName,
String databaseVersion,
QuotedIDFactory idfac) |
| Modifier and Type | Method and Description |
|---|---|
protected <T extends RelationDefinition> |
add(T td,
Map<RelationID,T> schema)
Inserts a new data definition to this metadata object.
|
BasicDBMetadata |
clone()
Deprecated.
|
com.google.common.collect.ImmutableMap<RelationID,RelationDefinition> |
copyRelations()
Temporary solution to enable DBMetadata merging
|
com.google.common.collect.ImmutableMap<RelationID,DatabaseRelationDefinition> |
copyTables()
Temporary solution to enable DBMetadata merging
|
DatabaseRelationDefinition |
createDatabaseRelation(RelationID id)
creates a database table (which can also be a database view)
if the
|
void |
freeze()
After calling this method, the DBMetadata cannot be modified
|
DatabaseRelationDefinition |
getDatabaseRelation(RelationID id)
Retrieves the data definition object based on its name.
|
Collection<DatabaseRelationDefinition> |
getDatabaseRelations()
Retrieves the tables list form the metadata.
|
String |
getDbmsProductName() |
String |
getDbmsVersion() |
DBParameters |
getDBParameters()
New-gen interface
TODO: stop using the DBMetadata object in most of the code but DBParameters instead when needed
|
String |
getDriverName() |
String |
getDriverVersion() |
QuotedIDFactory |
getQuotedIDFactory()
Use DBParameters.getQuotedIDFactory() instead
|
RelationDefinition |
getRelation(RelationID name)
Retrieves the data definition object based on its name.
|
protected Map<RelationID,DatabaseRelationDefinition> |
getTables() |
com.google.common.collect.ImmutableMultimap<RelationPredicate,com.google.common.collect.ImmutableList<Integer>> |
getUniqueConstraints()
Generates a map for each predicate in the body of the rules in 'program'
that contains the Primary Key data for the predicates obtained from the
info in the metadata.
|
protected boolean |
isStillMutable() |
String |
printKeys() |
String |
toString() |
protected final Map<RelationID,RelationDefinition> relations
protected BasicDBMetadata(String driverName, String driverVersion, String databaseProductName, String databaseVersion, QuotedIDFactory idfac)
protected BasicDBMetadata(String driverName, String driverVersion, String databaseProductName, String databaseVersion, Map<RelationID,DatabaseRelationDefinition> tables, Map<RelationID,RelationDefinition> relations, List<DatabaseRelationDefinition> listOfTables, QuotedIDFactory idfac)
public DatabaseRelationDefinition createDatabaseRelation(RelationID id)
id - protected <T extends RelationDefinition> void add(T td, Map<RelationID,T> schema)
td - The data definition. It can be a DatabaseRelationDefinition or a
ParserViewDefinition object.public DatabaseRelationDefinition getDatabaseRelation(RelationID id)
DBMetadatagetDatabaseRelation in interface DBMetadatapublic RelationDefinition getRelation(RelationID name)
DBMetadatagetRelation in interface DBMetadatapublic Collection<DatabaseRelationDefinition> getDatabaseRelations()
DBMetadatagetDatabaseRelations in interface DBMetadatapublic void freeze()
DBMetadatafreeze in interface DBMetadatapublic String getDriverName()
getDriverName in interface DBMetadatapublic String getDriverVersion()
getDriverVersion in interface DBMetadatapublic String printKeys()
printKeys in interface DBMetadatapublic com.google.common.collect.ImmutableMultimap<RelationPredicate,com.google.common.collect.ImmutableList<Integer>> getUniqueConstraints()
DBMetadatagetUniqueConstraints in interface DBMetadatapublic String getDbmsProductName()
getDbmsProductName in interface DBMetadatapublic String getDbmsVersion()
public QuotedIDFactory getQuotedIDFactory()
DBMetadatagetQuotedIDFactory in interface DBMetadataprotected Map<RelationID,DatabaseRelationDefinition> getTables()
@Deprecated public BasicDBMetadata clone()
protected boolean isStillMutable()
public com.google.common.collect.ImmutableMap<RelationID,DatabaseRelationDefinition> copyTables()
DBMetadatacopyTables in interface DBMetadatapublic com.google.common.collect.ImmutableMap<RelationID,RelationDefinition> copyRelations()
DBMetadatacopyRelations in interface DBMetadatapublic DBParameters getDBParameters()
DBMetadatagetDBParameters in interface DBMetadataCopyright © 2009–2020 Free University of Bozen-Bolzano. All rights reserved.