1 # Author: Trevor Perrin
2 # See the LICENSE file for legal information regarding use of this file.
6 #Functions for manipulating datetime objects
9 year, month, day = s.split("-")
10 day, tail = day[:2], day[2:]
11 hour, minute, second = tail[1:].split(":")
13 year, month, day = int(year), int(month), int(day)
14 hour, minute, second = int(hour), int(minute), int(second)
15 return createDateClass(year, month, day, hour, minute, second)
19 from datetime import datetime, timedelta
21 #Helper functions for working with a date/time class
22 def createDateClass(year, month, day, hour, minute, second):
23 return datetime(year, month, day, hour, minute, second)
25 def printDateClass(d):
26 #Split off fractional seconds, append 'Z'
27 return d.isoformat().split(".")[0]+"Z"
30 return datetime.utcnow()
32 def getHoursFromNow(hours):
33 return datetime.utcnow() + timedelta(hours=hours)
35 def getMinutesFromNow(minutes):
36 return datetime.utcnow() + timedelta(minutes=minutes)
38 def isDateClassExpired(d):
39 return d < datetime.utcnow()
41 def isDateClassBefore(d1, d2):
45 #Jython 2.1 is missing lots of python 2.3 stuff,
46 #which we have to emulate here:
50 def createDateClass(year, month, day, hour, minute, second):
51 c = java.util.Calendar.getInstance()
52 c.setTimeZone(java.util.TimeZone.getTimeZone("UTC"))
53 c.set(year, month-1, day, hour, minute, second)
56 def printDateClass(d):
57 return "%04d-%02d-%02dT%02d:%02d:%02dZ" % \
58 (d.get(d.YEAR), d.get(d.MONTH)+1, d.get(d.DATE), \
59 d.get(d.HOUR_OF_DAY), d.get(d.MINUTE), d.get(d.SECOND))
62 c = java.util.Calendar.getInstance()
63 c.setTimeZone(java.util.TimeZone.getTimeZone("UTC"))
64 c.get(c.HOUR) #force refresh?
67 def getHoursFromNow(hours):
72 def isDateClassExpired(d):
76 def isDateClassBefore(d1, d2):