Package spade :: Module BasicFipaDateTime
[hide private]
[frames] | no frames]

Source Code for Module spade.BasicFipaDateTime

  1  from datetime import datetime 
  2  
 
3 -class BasicFipaDateTime:
4 """ 5 Help class to operate dates and times 6 """ 7
8 - def __init__(self,date = None):
9 """ 10 constructor 11 date parameter can be suplied 12 """ 13 if (date == None): 14 self.fromDateTime(datetime.now()) 15 else: 16 if (isinstance(date,str) == True): 17 self.fromString(date) 18 elif (isinstance(date, datetime) == True): 19 self.fromDateTime(date)
20 21
22 - def fromDateTime(self, dt):
23 """ 24 inits the object with another BasicFipaDateTime class 25 """ 26 self.calendar = dt
27
28 - def fromString(self, string):
29 """ 30 loads the date and time from a string 31 """ 32 if string != None and string != "": 33 #print "string: " + str(string) 34 35 year = int(string[0:4]) 36 month = int(string[4:6]) 37 day = int(string[6:8]) 38 #tz = str[8] 39 hour = int(string[9:11]) 40 minute = int(string[11:13]) 41 second = int(string[13:15]) 42 milli = int(string[15:18]) 43 44 self.calendar = datetime(year,month,day,hour,minute,second,milli) 45 46 return True 47 else: 48 return False
49 50 51 52
53 - def getYear(self):
54 return self.calendar.year
55
56 - def setYear(self,year):
57 self.calendar = datetime(year,self.getMonth(), self.getDay(),self.getHour(),self.getMinutes(),self.getSeconds(),self.getMilliseconds(),self.getTypeDesignator())
58
59 - def getMonth(self):
60 return self.calendar.month
61
62 - def setMonth(self,month):
63 self.calendar = datetime(self.calendar.year,month, self.calendar.day,self.calendar.hour,self.calendar.minute,self.calendar.second,self.calendar.microsecond,self.calendar.tzinfo)
64
65 - def getDay(self):
66 return self.calendar.day
67
68 - def setDay(self,day):
69 self.calendar = datetime(self.calendar.year,self.calendar.month,day,self.calendar.hour,self.calendar.minute,self.calendar.second,self.calendar.microsecond,self.calendar.tzinfo)
70
71 - def getHour(self):
72 return self.calendar.hour
73
74 - def setHour(self,hour):
75 self.calendar = datetime(self.calendar.year,self.calendar.month, self.calendar.day,hour,self.calendar.minute,self.calendar.second,self.calendar.microsecond,self.calendar.tzinfo)
76
77 - def getMinutes(self):
78 return self.calendar.minute
79
80 - def setMinutes(self,minute):
81 self.calendar = datetime(self.calendar.year,self.calendar.month, self.calendar.day,self.calendar.hour,minute,self.calendar.second,self.calendar.microsecond,self.calendar.tzinfo)
82
83 - def getSeconds(self):
84 return self.calendar.second
85
86 - def setSeconds(self,second):
87 self.calendar = datetime(self.calendar.year,self.calendar.month, self.calendar.day,self.calendar.hour,self.calendar.minute,second,self.calendar.microsecond,self.calendar.tzinfo)
88
89 - def getMilliseconds(self):
90 return self.calendar.microsecond
91
92 - def setMilliseconds(self,milli):
93 self.calendar = datetime(self.calendar.year,self.calendar.month, self.calendar.day,self.calendar.hour,self.calendar.minute,self.calendat.second,microsecond,self.calendar.tzinfo)
94
95 - def getTypeDesignator(self):
96 return self.calendar.tzinfo
97
98 - def setTypeDesignator(self,tzinfo):
99 #self.calendar = datetime(self.calendar.year,self.calendar.month, self.calendar.day,self.calendar.hour,self.calendar.minute,self.calendat.second,self.calendar.microsecond,tzinfo) 100 pass
101
102 - def paddedInt( self, size, val ):
103 res = str(val) 104 while len(res) < size: 105 res = '0' + res 106 return str(res)
107
108 - def __str__(self):
109 """ 110 returns a printable version of the object 111 """ 112 str_date = str(self.getYear()) + self.paddedInt(2,self.getMonth()) + self.paddedInt(2,self.getDay())+"T" 113 str_date = str_date + str(self.paddedInt(2,self.getHour())) 114 str_date = str_date + str(self.paddedInt(2,self.getMinutes())) + str(self.paddedInt(2,self.getSeconds())) + str(self.paddedInt(3,self.getMilliseconds())) 115 116 return str_date;
117
118 - def getTime(self):
119 """ 120 returns a printable version of the object 121 """ 122 return self.__str__()
123
124 - def getDate(self):
125 """ 126 returns a printable version of the object 127 """ 128 return self.__str__()
129