00001 #ifndef DTKeyedConfigHandler_H 00002 #define DTKeyedConfigHandler_H 00003 00014 //---------------------- 00015 // Base Class Headers -- 00016 //---------------------- 00017 #include "CondCore/PopCon/interface/PopConSourceHandler.h" 00018 00019 //------------------------------------ 00020 // Collaborating Class Declarations -- 00021 //------------------------------------ 00022 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00023 #include "CondCore/DBCommon/interface/DbConnection.h" 00024 #include "CondFormats/DTObjects/interface/DTCCBConfig.h" 00025 #include <string> 00026 00027 namespace cond { 00028 class KeyList; 00029 } 00030 00031 //--------------- 00032 // C++ Headers -- 00033 //--------------- 00034 00035 00036 // --------------------- 00037 // -- Class Interface -- 00038 // --------------------- 00039 00040 class DTKeyedConfigHandler: public popcon::PopConSourceHandler<DTCCBConfig> { 00041 00042 public: 00043 00046 DTKeyedConfigHandler( const edm::ParameterSet& ps ); 00047 00050 virtual ~DTKeyedConfigHandler(); 00051 00054 00055 void getNewObjects(); 00056 std::string id() const; 00057 00058 static void setList( cond::KeyList* list ); 00059 00060 private: 00061 00062 bool copyData; 00063 int minBrickId; 00064 int maxBrickId; 00065 int minRunId; 00066 int maxRunId; 00067 00068 std::string dataTag; 00069 std::string onlineConnect; 00070 std::string onlineAuthentication; 00071 std::string brickContainer; 00072 DTCCBConfig* ccbConfig; 00073 00074 cond::DbConnection connection; 00075 cond::DbSession isession; 00076 void chkConfigList(); 00077 static bool sameConfigList( const std::vector<DTConfigKey>& cfgl, 00078 const std::vector<DTConfigKey>& cfgr ); 00079 00080 static cond::KeyList* keyList; 00081 00082 }; 00083 00084 00085 #endif // DTKeyedConfigHandler_H 00086 00087 00088 00089 00090 00091