utils.py
branchtls-sprint
changeset 1016 26387b836099
parent 709 b21ee900c732
child 1024 bb96289257bf
equal deleted inserted replaced
1014:4792a1bb72a9 1016:26387b836099
     6 """
     6 """
     7 __docformat__ = "restructuredtext en"
     7 __docformat__ = "restructuredtext en"
     8 
     8 
     9 import locale
     9 import locale
    10 from md5 import md5
    10 from md5 import md5
       
    11 from datetime import datetime, timedelta
    11 from time import time
    12 from time import time
    12 from random import randint, seed
    13 from random import randint, seed
    13 
    14 
       
    15 try:
       
    16     strptime = datetime.strptime
       
    17 except AttributeError: # py < 2.5
       
    18     from time import strptime as time_strptime
       
    19     def strptime(value, format):
       
    20         return datetime(*time_strptime(value, format)[:6])
       
    21     
    14 # initialize random seed from current time
    22 # initialize random seed from current time
    15 seed()
    23 seed()
    16 
    24 
    17 def make_uid(key):
    25 def make_uid(key):
    18     """forge a unique identifier"""
    26     """forge a unique identifier"""
    36     :param include: None (means no exclusion) or a function taking a
    44     :param include: None (means no exclusion) or a function taking a
    37                     date as parameter, and returning True if the date
    45                     date as parameter, and returning True if the date
    38                     should be included.
    46                     should be included.
    39     """
    47     """
    40     date = begin
    48     date = begin
       
    49     incr = timedelta(incr, 0, 0)
    41     while date <= end:
    50     while date <= end:
    42         if include is None or include(date): 
    51         if include is None or include(date): 
    43             yield date
    52             yield date
    44         date += incr
    53         date += incr
    45 
    54