CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
IDatabaseSchema.cc
Go to the documentation of this file.
1 #include "IDatabaseSchema.h"
2 #include "OraDatabaseSchema.h"
3 #include "PoolDatabaseSchema.h"
4 
5 std::string ora::poolSchemaVersion(){
6  static std::string s_version("POOL");
7  return s_version;
8 }
9 
11  static std::string s_name("SCHEMA_VERSION");
12  return s_name;
13 }
14 
16  scopeName(""),
17  variableName(""),
18  variableType(""),
19  elementType(""),
20  tableName(""),
21  columns(){
22 }
23 
25  scopeName( rhs.scopeName ),
26  variableName( rhs.variableName ),
27  variableType( rhs.variableType ),
28  elementType( rhs.elementType ),
29  tableName( rhs.tableName ),
30  columns( rhs.columns ){
31 }
32 
34  scopeName = rhs.scopeName;
35  variableName = rhs.variableName;
36  variableType = rhs.variableType;
37  elementType = rhs.elementType;
38  tableName = rhs.tableName;
39  columns = rhs.columns;
40  return *this;
41 }
42 
44  static std::string s_scope("[]");
45  return s_scope;
46 }
47 
49  version( "" ),
50  elements(){
51 }
52 
53 ora::MappingRawData::MappingRawData( const std::string& vers ):
54  version( vers ),
55  elements(){
56 }
57 
59  std::map< int, MappingRawElement>::iterator iElem = elements.find( elementId );
60  if( iElem == elements.end() ){
61  iElem = elements.insert( std::make_pair( elementId, MappingRawElement() ) ).first;
62  }
63  return iElem->second;
64 }
65 
67  const std::string& classN,
68  unsigned int numberObj ):
69  id(contId),
70  className(classN),
71  numberOfObjects(numberObj){
72 }
73 
75  id(rhs.id),
76  className(rhs.className),
77  numberOfObjects(rhs.numberOfObjects){
78 }
79 
81  id = rhs.id;
82  className = rhs.className;
83  numberOfObjects = rhs.numberOfObjects;
84  return *this;
85 }
86 
87 
89  IDatabaseSchema* dbSchema = 0;
90  if( !OraDatabaseSchema::existsMainTable( schema ) ){
91  if( PoolDatabaseSchema::existsMainTable( schema ) ) dbSchema = new PoolDatabaseSchema( schema );
92  }
93  if( ! dbSchema ) dbSchema = new OraDatabaseSchema( schema );
94  return dbSchema;
95 }
96 
98  m_schema( schema ){
99 }
100 
102  return m_schema;
103 }
104 
static std::string versionParameterName()
MappingRawElement & addElement(int elementId)
std::vector< std::string > columns
list elements
Definition: asciidump.py:414
ContainerHeaderData(int contId, const std::string &classN, unsigned int numberObj)
std::string poolSchemaVersion()
static IDatabaseSchema * createSchemaHandle(coral::ISchema &schema)
static std::string emptyScope()
static bool existsMainTable(coral::ISchema &dbSchema)
coral::ISchema & storageSchema()
IDatabaseSchema(coral::ISchema &schema)
ContainerHeaderData & operator=(const ContainerHeaderData &rhs)
static bool existsMainTable(coral::ISchema &dbSchema)
MappingRawElement & operator==(const MappingRawElement &rhs)
std::string className(const T &t)
Definition: ClassName.h:30