dke.smwp.db
Class DB_Parameter

java.lang.Object
  |
  +--dke.smwp.db.DB_Table
        |
        +--dke.smwp.db.DB_Parameter

public class DB_Parameter
extends DB_Table

database handling for creating, initializing and deleting parameter relations.

used by following parameters:

Version:
1.0
Author:
Werner Enser

Field Summary
private  ConnectionPool _connectionPool
          connection object handle
 
Constructor Summary
DB_Parameter()
          default constructor
 
Method Summary
 void createTable(java.lang.String table_name, java.util.ArrayList columns, java.util.ArrayList primaryKeys, java.util.ArrayList foreignKeys)
          create relation for ValueParameter (RV<>), or PredicateParameter (RP<>), or Fragmenation Relation (FR<>)
 void initializeDerived(FragmentationRelation fr, FragmentationRelation fragBase_fr, FragmentationRelation derivBase_fr)
          initializes Fragmentation Relation fr of an Derived Fragment Class by gathering tuple-data from the Fragmentation Relation fragBase_fr of Fragment Base Class and Fragmentation Relation derivBase_fr of Derivation Base Class
 void initializePrimary(FragmentationRelation fr, FragmentationRelation fr_base, PredicateParameter param, java.lang.String fragmentPredicate_pf)
          initializes primary Fragmentation Relation fr which is based upon base Fragmentation Relation fr_base and Predicate Parameter param; the fragment selection predicate fragmentParameter_pf is used as filter for fr;
 void initializePrimary(FragmentationRelation fr, FragmentationRelation fr_base, ValueParameter param, java.lang.String fragmentPredicate_pf)
          initialize Fragmentation Relation fr (of Primary Fragment Class) which is based upon base Fragmentation Relation fr_base and Value Parameter param; the cartesian product from the relations fr_base and is inserted into fr; the fragment selection predicate fragmentParameter_pf is used as filter for fr;
 void initializeTable(java.lang.String fc_table_name, java.lang.String param_name, java.lang.String rr_table_name, java.lang.String rr_attr_name)
          initialize ValueParameter relation (RV<>) (the value parameter relation contains exactly ONE column)
 void insertPredicateParameter(java.lang.String targetRelation, java.lang.String labelValue, java.lang.String predicateValue)
          inserts initial data into the Predicate Parameter relation;
 
Methods inherited from class dke.smwp.db.DB_Table
columnExists, dropTable, getColumn, getColumns, getColumns, getForeignKeys, getPrimaryKeys, stingReplace, tableExists
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

_connectionPool

private ConnectionPool _connectionPool
connection object handle
Constructor Detail

DB_Parameter

public DB_Parameter()
default constructor
Method Detail

createTable

public void createTable(java.lang.String table_name,
                        java.util.ArrayList columns,
                        java.util.ArrayList primaryKeys,
                        java.util.ArrayList foreignKeys)
                 throws java.sql.SQLException
create relation for ValueParameter (RV<>), or PredicateParameter (RP<>), or Fragmenation Relation (FR<>)
Parameters:
table_name - name of the table which is to be created
columns - collection containing Column objects
primaryKeys - collection containing column names which are primary key
foreignKeys - collection containing ForeignKeyConstraint objects
Throws:
java.sql.SQLException - fails to create table

initializeTable

public void initializeTable(java.lang.String fc_table_name,
                            java.lang.String param_name,
                            java.lang.String rr_table_name,
                            java.lang.String rr_attr_name)
                     throws java.sql.SQLException
initialize ValueParameter relation (RV<>) (the value parameter relation contains exactly ONE column)
Parameters:
fc_table_name - source table from where data is fetched
param_name - column name from source table
rr_table_name - target table in which data is inserted
rr_attr_name - column name from target table
Throws:
java.sql.SQLException - failed to fetch meta-data; sql insert statement statement failed

initializeDerived

public void initializeDerived(FragmentationRelation fr,
                              FragmentationRelation fragBase_fr,
                              FragmentationRelation derivBase_fr)
                       throws java.sql.SQLException
initializes Fragmentation Relation fr of an Derived Fragment Class by gathering tuple-data from the Fragmentation Relation fragBase_fr of Fragment Base Class and Fragmentation Relation derivBase_fr of Derivation Base Class
Parameters:
fr - target Fragmentation Relation (which is to be initialized)
fragBase_fr - Fragmentation Relation from Fragmentation Base Class (source relation)
derivBase_fr - Fragmentation Relation from Derivation Base Class (source relation)
Throws:
java.sql.SQLException - inserting initial data failed

initializePrimary

public void initializePrimary(FragmentationRelation fr,
                              FragmentationRelation fr_base,
                              PredicateParameter param,
                              java.lang.String fragmentPredicate_pf)
                       throws java.sql.SQLException
initializes primary Fragmentation Relation fr which is based upon base Fragmentation Relation fr_base and Predicate Parameter param;

the fragment selection predicate fragmentParameter_pf is used as filter for fr;

Parameters:
fr - target Fragmentation Relation (which is to be initialized)
fr_base - base Fragmentation Relation (source relation)
param - parameter added to fr_base, which results in fr
fragmentPredicate_pf - fragment selection predicate, which is a filter for target fragmentation relation
Throws:
java.sql.SQLException - fetching meta-data failed, inserting initial data failed

initializePrimary

public void initializePrimary(FragmentationRelation fr,
                              FragmentationRelation fr_base,
                              ValueParameter param,
                              java.lang.String fragmentPredicate_pf)
                       throws java.sql.SQLException
initialize Fragmentation Relation fr (of Primary Fragment Class) which is based upon base Fragmentation Relation fr_base and Value Parameter param;

the cartesian product from the relations fr_base and is inserted into fr;

the fragment selection predicate fragmentParameter_pf is used as filter for fr;

Parameters:
fr - Fragmentation Relation which is to be initialized
fr_base - base Fragmentation Relation (source relation)
param - parameter
fragmentPredicate_pf - fragment selection parameter - filter for initializing target fragmentation relation
Throws:
java.sql.SQLException - fetching meta-data failed, inserting initial data failed

insertPredicateParameter

public void insertPredicateParameter(java.lang.String targetRelation,
                                     java.lang.String labelValue,
                                     java.lang.String predicateValue)
                              throws java.sql.SQLException
inserts initial data into the Predicate Parameter relation;
Parameters:
targetRelation - relation in which the data is to be inserted
labelValue - value of column label
predicateValue - value of column predicate
Throws:
java.sql.SQLException - target relation is not Predicate Parameter relation; insert script failed;