Go to the documentation of this file.00001 #include "OnlineDB/EcalCondDB/interface/LMFRunTag.h"
00002
00003 using namespace std;
00004 using namespace oracle::occi;
00005
00006 LMFRunTag::LMFRunTag() : LMFUnique()
00007 {
00008 setClassName("LMFRunTag");
00009 m_stringFields["gen_tag"] = "default";
00010 m_intFields["version"] = 1;
00011 }
00012
00013 LMFRunTag::LMFRunTag(oracle::occi::Environment* env,
00014 oracle::occi::Connection* conn) : LMFUnique(env, conn)
00015 {
00016 setClassName("LMFRunTag");
00017 m_stringFields["gen_tag"] = "default";
00018 m_intFields["version"] = 1;
00019 }
00020
00021 LMFRunTag::LMFRunTag(EcalDBConnection *c) : LMFUnique(c) {
00022 setClassName("LMFRunTag");
00023 m_stringFields["gen_tag"] = "default";
00024 m_intFields["version"] = 1;
00025 }
00026
00027 LMFRunTag::~LMFRunTag()
00028 {
00029 }
00030
00031 string LMFRunTag::getGeneralTag() const
00032 {
00033 return getString("gen_tag");
00034 }
00035
00036 LMFRunTag& LMFRunTag::setGeneralTag(const string &genTag)
00037 {
00038 setString("gen_tag", genTag);
00039 return *this;
00040 }
00041
00042 LMFRunTag& LMFRunTag::setVersion(int v) {
00043 setInt("version", v);
00044 return *this;
00045 }
00046
00047 int LMFRunTag::getVersion() const {
00048 return getInt("version");
00049 }
00050
00051 std::string LMFRunTag::fetchIdSql(Statement *stmt) {
00052 std::string sql = "SELECT tag_id FROM lmf_run_tag WHERE "
00053 "gen_tag = :1 AND version = :2";
00054 stmt->setSQL(sql);
00055 stmt->setString(1, getGeneralTag());
00056 stmt->setInt(2, getVersion());
00057 return sql;
00058 }
00059
00060 std::string LMFRunTag::setByIDSql(Statement *stmt, int id)
00061 {
00062 std::string sql = "SELECT gen_tag, version FROM lmf_run_tag "
00063 "WHERE tag_id = :1";
00064 stmt->setSQL(sql);
00065 stmt->setInt(1, id);
00066 return sql;
00067 }
00068
00069 void LMFRunTag::getParameters(ResultSet *rset) {
00070 setString("gen_tag", rset->getString(1));
00071 setInt("version", rset->getInt(2));
00072 }
00073
00074 LMFUnique * LMFRunTag::createObject() const {
00075 LMFRunTag *t = new LMFRunTag;
00076 t->setConnection(m_env, m_conn);
00077 return t;
00078 }
00079
00080 std::string LMFRunTag::fetchAllSql(Statement *stmt) const {
00081 std::string sql = "SELECT TAG_ID FROM LMF_RUN_TAG";
00082 stmt->setSQL(sql);
00083 return sql;
00084 }
00085
00086 bool LMFRunTag::isValid() {
00087 bool ret = true;
00088 if (getVersion() <= 0) {
00089 ret = false;
00090 }
00091 if (getGeneralTag().length() <= 0) {
00092 ret = false;
00093 }
00094 return ret;
00095 }