CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_5_3_14/src/CondCore/ORA/interface/SchemaUtils.h

Go to the documentation of this file.
00001 #ifndef INCLUDE_ORA_SCHEMAUTILS_H
00002 #define INCLUDE_ORA_SCHEMAUTILS_H
00003 
00004 #include <string>
00005 #include <set>
00006 #include <memory>
00007 
00008 namespace coral {
00009   class ConnectionService;
00010   class ISessionProxy;
00011 }
00012 
00013 namespace ora {
00014 
00015   namespace SchemaUtils {
00016 
00017     void cleanUp( const std::string& connectionString, std::set<std::string> exclusionList=std::set<std::string>() );
00018 
00019   }  
00020 
00021   class Serializer {
00022   public:
00023     static const std::string& tableName();
00024 
00025   public:
00026     Serializer();
00027       
00028     virtual ~Serializer();
00029     
00030     void lock( const std::string& connectionString );
00031 
00032     void release();
00033 
00034   private:
00035 
00036     std::auto_ptr<coral::ConnectionService> m_connServ;
00037     std::auto_ptr<coral::ISessionProxy> m_session;
00038     bool m_lock;
00039     
00040   };
00041 
00042 }
00043 
00044 #endif
00045 
00046