uk.ac.ic.doc.automed.wrappers
Class QueryCacheWrapperFactory

java.lang.Object
  extended by uk.ac.ic.doc.automed.wrappers.AutoMedWrapperFactory
      extended by uk.ac.ic.doc.automed.wrappers.SQLWrapperFactory
          extended by uk.ac.ic.doc.automed.wrappers.QueryCacheWrapperFactory

public class QueryCacheWrapperFactory
extends SQLWrapperFactory

A high-level wrapper factory for creating QueryCacheWrapper instances. We consider a query cache as an SQL data source.

Author:
Duc M Le dmle@doc.ic.ac.uk

Field Summary
 
Fields inherited from class uk.ac.ic.doc.automed.wrappers.SQLWrapperFactory
automed, AUTOMED_SQL_MODEL_COLUMN, AUTOMED_SQL_MODEL_FOREIGN_KEY, AUTOMED_SQL_MODEL_INDEX, AUTOMED_SQL_MODEL_NOTNULL_CONSTRAINT, AUTOMED_SQL_MODEL_PRIMARY_KEY, AUTOMED_SQL_MODEL_TABLE, COLUMN_POSITION, DATA_SIZE, DATA_TYPE, FOREIGN_KEY, INDEX, justTableName, NONSCALAR_COMPOUND_KEY, NULL_CONSTRAINT, primary_key, PRIMARY_KEY, ROOT_TYPE_NAME, SCHEMA_AWARE, SCHEMA_MERGING, source_background_colour, sql, SQL_MODEL_FOREIGN_KEY, SQL_MODEL_INDEX, SQL_MODEL_PRIMARY_KEY, SQL_MODEL_TABLE, table, tableSchemeLength
 
Fields inherited from class uk.ac.ic.doc.automed.wrappers.AutoMedWrapperFactory
automedModelName, baseName, empty, factoryInUse, modelName, SOURCE_PREFIX
 
Constructor Summary
QueryCacheWrapperFactory()
           
 
Method Summary
 Schema createAutoMedSchema(AutoMedWrapper wrapper, java.lang.String schemaName)
          Create a new AutoMed-oriented schema for the cache by summarising the BAV rules of all distinct schema objects used in the materialised views
protected  AutoMedWrapper newAutoMedWrapper()
          Return a new instance of the QueryCacheWrapper
protected  void populateSchema(AutoMedWrapper wrapper)
          Nothing done here
 
Methods inherited from class uk.ac.ic.doc.automed.wrappers.SQLWrapperFactory
createAutoMedModel, createModel, getAutoMedModel, getColumnDetailsSchemeLength, getDefaultSchemaName, getFeatureNames, getModel, getSQLTableReference, getTableDetailsSchemeLength, setFeatures
 
Methods inherited from class uk.ac.ic.doc.automed.wrappers.AutoMedWrapperFactory
clearFeatures, getAttributeDomains, getAutoMedModelName, getFeatures, getModelBaseName, getModelName, isFeatureInUse, safeIQL, setAttributeDomains, setFeatures, setModelBaseName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

QueryCacheWrapperFactory

public QueryCacheWrapperFactory()
Method Detail

populateSchema

protected void populateSchema(AutoMedWrapper wrapper)
                       throws DataSourceException
Nothing done here

Overrides:
populateSchema in class SQLWrapperFactory
Throws:
DataSourceException

createAutoMedSchema

public Schema createAutoMedSchema(AutoMedWrapper wrapper,
                                  java.lang.String schemaName)
                           throws IntegrityException,
                                  NotFoundException
Create a new AutoMed-oriented schema for the cache by summarising the BAV rules of all distinct schema objects used in the materialised views

Overrides:
createAutoMedSchema in class SQLWrapperFactory
Parameters:
wrapper - A wrapper containing the source oriented Schema from which the AutoMed oriented Schema should be produced.
schemaName - name of the new AutoMed construct oriented schema that is to be created from the source oriented schema. This schema must not yet exist.
Throws:
IntegrityException - if schemaName already exists.
NotFoundException - if you have not previously wrapped the datasource as a source oriented schema, using either #AutoMedWrapper.getSchema(String) or #AutoMedWrapper.selectNewAutoMedWrapper

newAutoMedWrapper

protected AutoMedWrapper newAutoMedWrapper()
Return a new instance of the QueryCacheWrapper

Overrides:
newAutoMedWrapper in class SQLWrapperFactory