CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Private Attributes
DateHandler Class Reference

#include <DateHandler.h>

Public Member Functions

 DateHandler (oracle::occi::Environment *env, oracle::occi::Connection *conn)
 
 DateHandler ()=delete
 
Tm dateToTm (oracle::occi::Date &date) const
 
oracle::occi::Date getCurrentDate ()
 
oracle::occi::Date getNegInfDate () const
 
Tm getNegInfTm () const
 
oracle::occi::Date getPlusInfDate () const
 
Tm getPlusInfTm () const
 
oracle::occi::Date maxDate ()
 
oracle::occi::Date minDate ()
 
oracle::occi::Date tmToDate (const Tm &inTm) const
 
 ~DateHandler ()
 

Private Attributes

oracle::occi::Connection * m_conn
 
oracle::occi::Environment * m_env
 
Tm NEG_INF
 
oracle::occi::Date NEG_INF_DATE
 
Tm PLUS_INF
 
oracle::occi::Date PLUS_INF_DATE
 

Detailed Description

Definition at line 7 of file DateHandler.h.

Constructor & Destructor Documentation

DateHandler::DateHandler ( oracle::occi::Environment *  env,
oracle::occi::Connection *  conn 
)
DateHandler::~DateHandler ( )

Definition at line 17 of file DateHandler.cc.

17 {}
DateHandler::DateHandler ( )
delete

Member Function Documentation

Tm DateHandler::dateToTm ( oracle::occi::Date &  date) const

Translate an oracle Date object to a Tm object

Definition at line 28 of file DateHandler.cc.

References SiStripPI::min, and LaserDQM_cfi::mon.

Referenced by RunCommentDat::fetchData(), FEConfigTimingInfo::fetchData(), FEConfigCokeInfo::fetchData(), FEConfigSpikeInfo::fetchData(), FEConfigFgrInfo::fetchData(), FEConfigLUTInfo::fetchData(), FEConfigWeightInfo::fetchData(), FEConfigOddWeightInfo::fetchData(), ODCond2ConfInfo::fetchData(), FEConfigPedInfo::fetchData(), FEConfigSlidingInfo::fetchData(), FEConfigLinInfo::fetchData(), ODRunConfigInfo::fetchData(), FEConfigMainInfo::fetchData(), RunList::fetchGlobalRunsByLocation(), FEConfigTimingInfo::fetchLastData(), FEConfigCokeInfo::fetchLastData(), FEConfigSpikeInfo::fetchLastData(), FEConfigLUTInfo::fetchLastData(), FEConfigLinInfo::fetchLastData(), FEConfigWeightInfo::fetchLastData(), FEConfigFgrInfo::fetchLastData(), FEConfigOddWeightInfo::fetchLastData(), FEConfigPedInfo::fetchLastData(), FEConfigSlidingInfo::fetchLastData(), MonRunList::fetchLastNRuns(), RunList::fetchLastNRuns(), MonRunList::fetchRuns(), RunList::fetchRuns(), RunList::fetchRunsByLocation(), DCSPTMTempList::fetchValuesForECID(), DCSPTMTempList::fetchValuesForECIDAndTime(), RunDCSMagnetDat::fillTheMap(), RunDCSLVDat::fillTheMap(), RunDCSHVDat::fillTheMap(), LMFCorrCoefDat::getCorrections(), LMFIOV::getParameters(), LMFRunIOV::getParameters(), LMFSeqDat::getParameters(), DCUIOV::setByID(), CaliIOV::setByID(), MODRunIOV::setByID(), FEConfigSpikeInfo::setByID(), FEConfigTimingInfo::setByID(), FEConfigCokeInfo::setByID(), MonRunIOV::setByID(), FEConfigLUTInfo::setByID(), FEConfigWeightInfo::setByID(), FEConfigSlidingInfo::setByID(), FEConfigOddWeightInfo::setByID(), FEConfigLinInfo::setByID(), RunIOV::setByID(), FEConfigPedInfo::setByID(), FEConfigFgrInfo::setByID(), ODRunConfigInfo::setByID(), FEConfigMainInfo::setByID(), RunIOV::setByRecentData(), MODRunIOV::setByRun(), MonRunIOV::setByRun(), RunIOV::setByRun(), DCUIOV::setByTm(), and CaliIOV::setByTm().

28  {
29  if (date.isNull()) {
30  return Tm();
31  }
32 
33  int year;
34  unsigned int mon; // month
35  unsigned int mday; // day of month
36  unsigned int hour;
37  unsigned int min; // minute
38  unsigned int sec; // second
39 
40  date.getDate(year, mon, mday, hour, min, sec);
41 
42  // work on the provided tm
43  struct tm retTm;
44  retTm.tm_year = year - 1900;
45  retTm.tm_mon = mon - 1;
46  retTm.tm_mday = mday;
47  retTm.tm_hour = hour;
48  retTm.tm_min = min;
49  retTm.tm_sec = sec;
50  retTm.tm_isdst = 0;
51  retTm.tm_wday = 0;
52  retTm.tm_yday = 0;
53 
54  mktime(&retTm); // calculates tm_wday and tm_yday
55 
56  return Tm(&retTm);
57 }
Definition: Tm.h:13
oracle::occi::Date DateHandler::getCurrentDate ( )
inline

Get the current system date

Definition at line 20 of file DateHandler.h.

References m_env.

20 { return oracle::occi::Date(oracle::occi::Date::getSystemDate(m_env)); }
oracle::occi::Environment * m_env
Definition: DateHandler.h:46
oracle::occi::Date DateHandler::getNegInfDate ( ) const
inline

Definition at line 14 of file DateHandler.h.

References NEG_INF_DATE.

14 { return NEG_INF_DATE; }
oracle::occi::Date NEG_INF_DATE
Definition: DateHandler.h:51
Tm DateHandler::getNegInfTm ( ) const
inline

Definition at line 12 of file DateHandler.h.

References NEG_INF.

12 { return NEG_INF; }
oracle::occi::Date DateHandler::getPlusInfDate ( ) const
inline

Definition at line 15 of file DateHandler.h.

References PLUS_INF_DATE.

15 { return PLUS_INF_DATE; }
oracle::occi::Date PLUS_INF_DATE
Definition: DateHandler.h:50
Tm DateHandler::getPlusInfTm ( ) const
inline
oracle::occi::Date DateHandler::maxDate ( )
inline

The maximum oracle Date

Definition at line 30 of file DateHandler.h.

References m_env.

30 { return oracle::occi::Date(m_env, 9999, 12, 31, 23, 59, 59); }
oracle::occi::Environment * m_env
Definition: DateHandler.h:46
oracle::occi::Date DateHandler::minDate ( )
inline

The minimum oracle Date

Definition at line 25 of file DateHandler.h.

References m_env.

25 { return oracle::occi::Date(m_env, 1970, 1, 1, 0, 0, 0); }
oracle::occi::Environment * m_env
Definition: DateHandler.h:46
Date DateHandler::tmToDate ( const Tm inTm) const

Translate a Tm object to a oracle Date object

Definition at line 19 of file DateHandler.cc.

References Tm::c_tm(), and Tm::isNull().

Referenced by DCUIOV::fetchID(), CaliIOV::fetchID(), MODRunIOV::fetchID(), MonRunIOV::fetchID(), RunIOV::fetchID(), LMFIOV::fetchIdSql(), LMFLmrSubIOV::fetchIdSql(), DCSPTMTempList::fetchValuesForECIDAndTime(), RunDCSHVDat::getBarrelRset(), RunDCSHVDat::getEndcapAnodeRset(), RunDCSHVDat::getEndcapDynodeRset(), LMFLmrSubIOV::getIOVIDsLaterThan(), DCUIOV::setByTm(), CaliIOV::setByTm(), RunIOV::updateEndTimeDB(), RunIOV::updateStartTimeDB(), DCUIOV::writeDB(), CaliIOV::writeDB(), MODRunIOV::writeDB(), ODCond2ConfInfo::writeDB(), RunIOV::writeDB(), MonRunIOV::writeDB(), LMFIOV::writeDBSql(), LMFRunIOV::writeDBSql(), LMFSeqDat::writeDBSql(), and LMFLmrSubIOV::writeDBSql().

19  {
20  if (inTm.isNull()) {
21  return Date();
22  } else {
23  struct tm ctm = inTm.c_tm();
24  return Date(m_env, ctm.tm_year + 1900, ctm.tm_mon + 1, ctm.tm_mday, ctm.tm_hour, ctm.tm_min, ctm.tm_sec);
25  }
26 }
struct tm c_tm() const
Definition: Tm.cc:42
oracle::occi::Environment * m_env
Definition: DateHandler.h:46
int isNull() const
Definition: Tm.cc:46

Member Data Documentation

oracle::occi::Connection* DateHandler::m_conn
private

Definition at line 45 of file DateHandler.h.

oracle::occi::Environment* DateHandler::m_env
private

Definition at line 46 of file DateHandler.h.

Referenced by getCurrentDate(), maxDate(), and minDate().

Tm DateHandler::NEG_INF
private

Definition at line 49 of file DateHandler.h.

Referenced by getNegInfTm().

oracle::occi::Date DateHandler::NEG_INF_DATE
private

Definition at line 51 of file DateHandler.h.

Referenced by getNegInfDate().

Tm DateHandler::PLUS_INF
private

Definition at line 48 of file DateHandler.h.

Referenced by getPlusInfTm().

oracle::occi::Date DateHandler::PLUS_INF_DATE
private

Definition at line 50 of file DateHandler.h.

Referenced by getPlusInfDate().