Example #1
0
 def _calculate_gregorian_offset():
     local_epoch = _mktime((1970, 1, 1, 0, 0, 0, 0, 0, 0))
     local_epoch_anniversary = _mktime((1971, 1, 1, 0, 0, 0, 0, 0, 0))
     local_october_15th = _mktime((1970, 10, 15, 0, 0, 0, 0, 0, 0))
     seconds_per_year = local_epoch_anniversary - local_epoch
     return ((long(1970 - 1582) * long(seconds_per_year)) +
             long(local_october_15th))
Example #2
0
 def __init__(self, obj, micro_second=0):
     if isinstance( obj, _DateTimeStamp ):
         self._mktime = _mktime( TOSDB_DateTime._to_struct_time( obj ) )          
     elif isinstance( obj, _struct_time ):
         self._mktime = _mktime(obj)
     elif isinstance( obj, TOSDB_DateTime):
         self._mktime = obj._mktime
     else:
         raise TOSDB_DateTimeError( "invalid 'object' passed to __init__" )
Example #3
0
 def __init__(self, obj, micro_second=0):
     if isinstance(obj, _DateTimeStamp):
         self._mktime = _mktime(TOSDB_DateTime._to_struct_time(obj))
     elif isinstance(obj, _struct_time):
         self._mktime = _mktime(obj)
     elif isinstance(obj, TOSDB_DateTime):
         self._mktime = obj._mktime
     else:
         raise TOSDB_DateTimeError("invalid 'object' passed to __init__")
Example #4
0
 def utcoffset(self, dt):
     """datetime -> minutes east of UTC (negative for west of UTC)."""
     tt = _localtime(
         _mktime((dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second,
                  dt.weekday(), 0, -1)))
     if tt.tm_isdst > 0: return _dstoffset
     return _stdoffset
Example #5
0
 def dst(self, dt):
     """datetime -> DST offset in minutes east of UTC."""
     tt = _localtime(
         _mktime((dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second,
                  dt.weekday(), 0, -1)))
     if tt.tm_isdst > 0: return _dstdiff
     return _zero
Example #6
0
 def utcoffset(self, dt):
     """datetime -> minutes east of UTC (negative for west of UTC)."""
     tt = _localtime(
         _mktime((dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second,
                  dt.weekday(), 0, -1)))
     if tt.tm_isdst > 0: return _dstoffset
     return _stdoffset
Example #7
0
 def dst(self, dt):
     """datetime -> DST offset in minutes east of UTC."""
     tt = _localtime(
         _mktime((dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second,
                  dt.weekday(), 0, -1)))
     if tt.tm_isdst > 0: return _dstdiff
     return _zero
Example #8
0
 def datetime2timestamp(cls, m_datetime):
     '''datetime (python object) ==> timestamp
     - timestamp indicate miliseconds from 1970/01/01 08:00:00
     '''
     from time import mktime as _mktime
     t = _mktime(m_datetime.timetuple())
     return float(t*1000.0) + m_datetime.microsecond/1000.0
Example #9
0
 def _intervals_since_epoch(self, second, minute, hour, day, month, year):
     is_dst = self._tfunc().tm_isdst
     sfe = _mktime(
         _struct_time(
             [year, month, day, hour, minute, second, 0, 0, is_dst]))
     if sfe % self._isec:
         raise TOSDB_Error("invalid interval constructed")
     return int(sfe // self._isec)
Example #10
0
def datetime_to_time(date, time):
    """Take the date and time 4-tuples and return the time in seconds since
    the epoch as a floating point number."""
    if (255 in date) or (255 in time):
        raise RuntimeError("specific date and time required")

    time_tuple = (
        date[0]+1900, date[1], date[2],
        time[0], time[1], time[2],
        0, 0, -1,
        )
    return _mktime(time_tuple)
Example #11
0
def mktime(t9):
    """
    Call L{_mktime}, and if it raises L{OverflowError}, catch it and raise
    SkipTest instead.

    @param t9: A time as a 9-item tuple.
    @type t9: L{tuple}

    @return: A timestamp.
    @rtype: L{float}
    """
    try:
        return _mktime(t9)
    except OverflowError:
        raise SkipTest(
            "Platform cannot construct time zone for {0!r}"
            .format(t9)
        )
Example #12
0
 def tzname(self, dt):
     """datetime -> string name of time zone."""
     tt = _localtime(_mktime((dt.year, dt.month, dt.day,
              dt.hour, dt.minute, dt.second, dt.weekday(), 0, -1)))
     return _time.tzname[tt.tm_isdst > 0]
Example #13
0
def _gettimeofday():
    d=_now()
    return int(_mktime(d.timetuple())),d.microsecond
Example #14
0
 def _intervals_since_epoch(self, second, minute, hour, day, month, year):
     is_dst = self._tfunc().tm_isdst
     sfe = _mktime(_struct_time([year,month,day,hour,minute,second,0,0,is_dst]))
     if sfe % self._isec:
         raise TOSDB_Error("invalid interval constructed")        
     return int(sfe // self._isec)
Example #15
0
def _gettimeofday():
    d = _now()
    return int(_mktime(d.timetuple())), d.microsecond
Example #16
0
 def _calculate_gregorian_offset():
     local_epoch = _mktime((1970, 1, 1, 0, 0, 0, 0, 0, 0))
     local_epoch_anniversary = _mktime((1971, 1, 1, 0, 0, 0, 0, 0, 0))
     local_october_15th = _mktime((1970, 10, 15, 0, 0, 0, 0, 0, 0))
     seconds_per_year = local_epoch_anniversary - local_epoch
     return (long(1970 - 1582) * long(seconds_per_year)) + long(local_october_15th)