|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectuk.ac.bbk.dcs.automed.evolution.schemaEvolution.SchemaEvolution
public class SchemaEvolution
Main class of the schema evolution package. Works by creating a new pathway, and then deletes the old pathway, if user wishes so. Cannot repair the pathway. For further information on schema evolution in AutoMed, see
Field Summary | |
---|---|
protected Schema[] |
dataSourceSchemas
The schemas that have the role of the data source schemas in the evolution setting |
protected Schema |
derivedSchema
The schema that has the role of the derived schema in the evolution setting |
static int |
EVOLUTION_TYPE_SCHEMA_AND_DATA
Evolution is both schema and data |
static int |
EVOLUTION_TYPE_SCHEMA_ONLY
Evolution is only schema, not data |
protected Transformation[] |
evolutionPathway
The pathways from the data source schemas to the derived schema |
protected int |
evolutionType
|
static int |
EVOLVED_SCHEMA_TYPE_DATASOURCE
Constant representing evolution of local (extensional) schema |
static int |
EVOLVED_SCHEMA_TYPE_DERIVED
Constant representing evolution of virtual (integrated) schema |
protected int |
evolvedSchemaType
|
protected static java.util.logging.Logger |
logger
|
protected Transformation[][] |
pathwaysToUnionSchemas
The pathways from the data source schemas to the union schemas |
protected Transformation[] |
pathwayToDerivedSchema
The pathway from one of the union schemas to the derived schema |
protected Schema[] |
unionSchemas
The schemas that have the role of the union schemas in the evolution setting |
Constructor Summary | |
---|---|
protected |
SchemaEvolution()
|
Method Summary | |
---|---|
Schema[] |
getDataSourceSchemas()
|
Schema |
getDerivedSchema()
|
Transformation[] |
getEvolutionPathway()
|
int |
getEvolutionType()
|
int |
getEvolvedSchemaType()
|
Transformation[][] |
getPathwaysToUnionSchemas()
|
Transformation[] |
getPathwayToDerivedSchema()
|
protected void |
processAddTransformation(Transformation t)
Processes an add transformation |
protected void |
processContractTransformation(Transformation t)
Processes a contract transformation |
static Schema |
processDataSourceSchemaEvolution(int evolutionType,
Schema derivedSchema,
Schema[] unionSchemas,
Transformation[][] pathwaysToUnionSchemas,
Transformation[] evolutionPathway,
java.util.Map domainKnowledge,
boolean removeDescendants,
boolean removeOldPathway)
Processes the evolution pathway of the data source schema. |
protected void |
processDeleteTransformation(Transformation t)
Processes a delete transformation |
static void |
processDerivedSchemaEvolution(int evolutionType,
Schema derivedSchema,
Schema[] unionSchemas,
Transformation[][] pathwaysToUnionSchemas,
Transformation[] evolutionPathway)
Processes the evolution pathway of the derived schema. |
protected void |
processEvolution()
Processes the evolution pathway one transformation at a time. |
protected void |
processExtendTransformation(Transformation t)
Processes an extend transformation |
protected void |
processIdentTransformation(Transformation t)
Processes an ident transformation |
protected void |
processNewPathways(Schema newDerivedSchema)
|
protected void |
processRenameTransformation(Transformation t)
Processes a rename transformation |
protected void |
setPathwayToDerivedSchema()
|
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static java.util.logging.Logger logger
protected Schema derivedSchema
protected Schema[] unionSchemas
protected Schema[] dataSourceSchemas
protected Transformation[][] pathwaysToUnionSchemas
protected Transformation[] pathwayToDerivedSchema
protected Transformation[] evolutionPathway
public static final int EVOLUTION_TYPE_SCHEMA_ONLY
public static final int EVOLUTION_TYPE_SCHEMA_AND_DATA
protected int evolutionType
public static final int EVOLVED_SCHEMA_TYPE_DERIVED
public static final int EVOLVED_SCHEMA_TYPE_DATASOURCE
protected int evolvedSchemaType
Constructor Detail |
---|
protected SchemaEvolution()
Method Detail |
---|
public static final void processDerivedSchemaEvolution(int evolutionType, Schema derivedSchema, Schema[] unionSchemas, Transformation[][] pathwaysToUnionSchemas, Transformation[] evolutionPathway) throws EvolutionException
evolutionType
- schema or schema and data evolutionderivedSchema
- the derived schema in this evolution settingunionSchemas
- the union schemas of the integration settingpathwaysToUnionSchemas
- the pathways from the data source schemas of this evolution setting to the union schemas of this evolution
settingevolutionPathway
- the pathway from the original data source or derived schema to the evolved data source or derived schema
EvolutionException
- an exception thrown while handling the evolution of a schemapublic static final Schema processDataSourceSchemaEvolution(int evolutionType, Schema derivedSchema, Schema[] unionSchemas, Transformation[][] pathwaysToUnionSchemas, Transformation[] evolutionPathway, java.util.Map domainKnowledge, boolean removeDescendants, boolean removeOldPathway) throws EvolutionException
evolutionType
- schema or schema and data evolutionderivedSchema
- the derived schema in this evolution settingunionSchemas
- the union schemas of the integration settingpathwaysToUnionSchemas
- the pathways from the data source schemas of this evolution setting to the union schemas of this evolution
settingevolutionPathway
- the pathway from the original data source or derived schema to the evolved data source or derived schemadomainKnowledge
- domain expert input regarding the semantics of constructs related to the evolution of the data source schemaremoveDescendants
- if true, Range Void Any descendants are to be removed from union and/or derived schemaremoveOldPathway
- if true, old pathway is to be removednewName
- if one or more new derived schemas are created during the evolution processing, newName is the name to be given
to the final derived schema
EvolutionException
- an exception thrown while handling the evolution of a schemaprotected void processNewPathways(Schema newDerivedSchema) throws EvolutionException
EvolutionException
protected final void processEvolution() throws EvolutionException
oldTs[]
- the evolution pathway (of the data source or the derived schema)
EvolutionException
protected void processAddTransformation(Transformation t) throws EvolutionException
t
- transformation to process
EvolutionException
protected void processDeleteTransformation(Transformation t) throws EvolutionException
t
- transformation to process
EvolutionException
protected void processExtendTransformation(Transformation t) throws EvolutionException
t
- transformation to process
EvolutionException
protected void processContractTransformation(Transformation t) throws EvolutionException
t
- transformation to process
EvolutionException
protected void processRenameTransformation(Transformation t)
t
- transformation to process
EvolutionException
protected void processIdentTransformation(Transformation t)
t
- transformation to processpublic final Schema getDerivedSchema()
getDerivedSchema
in interface EvolutionInterface
public final Schema[] getDataSourceSchemas()
getDataSourceSchemas
in interface EvolutionInterface
public final Transformation[][] getPathwaysToUnionSchemas()
getPathwaysToUnionSchemas
in interface EvolutionInterface
public final Transformation[] getPathwayToDerivedSchema()
getPathwayToDerivedSchema
in interface EvolutionInterface
public final Transformation[] getEvolutionPathway()
getEvolutionPathway
in interface EvolutionInterface
public int getEvolutionType()
getEvolutionType
in interface EvolutionInterface
EVOLUTION_TYPE_SCHEMA_ONLY
,EVOLUTION_TYPE_SCHEMA_AND_DATA
public int getEvolvedSchemaType()
getEvolvedSchemaType
in interface EvolutionInterface
EVOLVED_SCHEMA_TYPE_DERIVED
,EVOLVED_SCHEMA_TYPE_DATASOURCE
protected void setPathwayToDerivedSchema() throws EvolutionException
EvolutionException
|
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |