36 using std::istringstream;
40 const long SimpleTimeParser::_sSecsInMin = 60
L;
41 const long SimpleTimeParser::_sSecsInHour = 60
L * SimpleTimeParser::_sSecsInMin;
42 const long SimpleTimeParser::_sSecsInDay = 24
L * SimpleTimeParser::_sSecsInHour;
43 const long SimpleTimeParser::_sSecsInWeek = 7
L * SimpleTimeParser::_sSecsInDay;
44 const long SimpleTimeParser::_sSecsInMonth = 31
L * SimpleTimeParser::_sSecsInDay;
45 const long SimpleTimeParser::_sSecsInYear = 365
L * SimpleTimeParser::_sSecsInDay;
47 map< string, long > SimpleTimeParser::_sParseTable = std::map<string,long>();
48 bool SimpleTimeParser::_sInited =
false;
85 std::map< std::string, long >::iterator foundIt = _sParseTable.find(units);
86 if (foundIt == _sParseTable.end())
92 seconds *= foundIt->second;
107 SimpleTimeParser::initParseTable()
118 _sParseTable[
"s"] = 1
L;
119 _sParseTable[
"sec"] = 1
L;
120 _sParseTable[
"secs"] = 1
L;
121 _sParseTable[
"second"] = 1
L;
122 _sParseTable[
"seconds"] = 1
L;
124 _sParseTable[
"m"] = _sSecsInMin;
125 _sParseTable[
"min"] = _sSecsInMin;
126 _sParseTable[
"mins"] = _sSecsInMin;
127 _sParseTable[
"minute"] = _sSecsInMin;
128 _sParseTable[
"minutes"] = _sSecsInMin;
130 _sParseTable[
"h"] = _sSecsInHour;
131 _sParseTable[
"hour"] = _sSecsInHour;
132 _sParseTable[
"hours"] = _sSecsInHour;
134 _sParseTable[
"day"] = _sSecsInDay;
135 _sParseTable[
"days"] = _sSecsInDay;
137 _sParseTable[
"week"] = _sSecsInWeek;
138 _sParseTable[
"weeks"] = _sSecsInWeek;
140 _sParseTable[
"month"] = _sSecsInMonth;
141 _sParseTable[
"months"] = _sSecsInMonth;
143 _sParseTable[
"year"] = _sSecsInYear;
144 _sParseTable[
"years"] = _sSecsInYear;
Helper class for temporarily hijacking an existing dhi to load a DDX response for one particular file...
static bool parseIntoSeconds(long &seconds, const std::string &duration)
Parse the string in duration and to calculate the (approximate) number of seconds it represents...