Rosetta
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
basic::database::schema_generator::Schema Class Reference

#include <Schema.hh>

Public Member Functions

 Schema (std::string const &table_name)
 
 Schema (std::string const &table_name, PrimaryKey const &primary_key)
 
 Schema (Schema const &src)
 
void add_foreign_key (ForeignKey key)
 
void add_column (Column column)
 
void add_constraint (ConstraintOP constraint)
 
void add_index (Index index)
 
std::string print (utility::sql_database::sessionOP db_session) const
 
void write (utility::sql_database::sessionOP db_session)
 

Protected Member Functions

std::string table_schema_statements (utility::sql_database::sessionOP db_session) const
 
std::string table_init_statements (utility::sql_database::sessionOP db_session) const
 
void check_table_and_perform_write (utility::sql_database::sessionOP db_session, std::string const &schema_statement, std::string const &init_statements) const
 

Private Member Functions

void init ()
 

Private Attributes

std::string table_name_
 
PrimaryKey primary_key_
 
Columns columns_
 
utility::vector1< ForeignKeyforeign_keys_
 
utility::vector1< ConstraintOPconstraints_
 
utility::vector1< Indexindices_
 

Constructor & Destructor Documentation

◆ Schema() [1/3]

basic::database::schema_generator::Schema::Schema ( std::string const &  table_name)

References init().

◆ Schema() [2/3]

basic::database::schema_generator::Schema::Schema ( std::string const &  table_name,
PrimaryKey const &  primary_key 
)

References init().

◆ Schema() [3/3]

basic::database::schema_generator::Schema::Schema ( Schema const &  src)

Member Function Documentation

◆ add_column()

void basic::database::schema_generator::Schema::add_column ( Column  column)

◆ add_constraint()

void basic::database::schema_generator::Schema::add_constraint ( ConstraintOP  constraint)

References constraints_.

◆ add_foreign_key()

void basic::database::schema_generator::Schema::add_foreign_key ( ForeignKey  key)

◆ add_index()

void basic::database::schema_generator::Schema::add_index ( Index  index)

References indices_.

◆ check_table_and_perform_write()

void basic::database::schema_generator::Schema::check_table_and_perform_write ( utility::sql_database::sessionOP  db_session,
std::string const &  schema_statement,
std::string const &  init_statements 
) const
protected

◆ init()

void basic::database::schema_generator::Schema::init ( )
private

◆ print()

std::string basic::database::schema_generator::Schema::print ( utility::sql_database::sessionOP  db_session) const

◆ table_init_statements()

std::string basic::database::schema_generator::Schema::table_init_statements ( utility::sql_database::sessionOP  db_session) const
protected

◆ table_schema_statements()

std::string basic::database::schema_generator::Schema::table_schema_statements ( utility::sql_database::sessionOP  db_session) const
protected

◆ write()

void basic::database::schema_generator::Schema::write ( utility::sql_database::sessionOP  db_session)

Member Data Documentation

◆ columns_

Columns basic::database::schema_generator::Schema::columns_
private

◆ constraints_

utility::vector1<ConstraintOP> basic::database::schema_generator::Schema::constraints_
private

◆ foreign_keys_

utility::vector1<ForeignKey> basic::database::schema_generator::Schema::foreign_keys_
private

◆ indices_

utility::vector1<Index> basic::database::schema_generator::Schema::indices_
private

◆ primary_key_

PrimaryKey basic::database::schema_generator::Schema::primary_key_
private

Referenced by init(), and table_schema_statements().

◆ table_name_

std::string basic::database::schema_generator::Schema::table_name_
private

The documentation for this class was generated from the following files: