Permet l'utilisation de datetimes avec generalizedTimeFormat

This commit is contained in:
Pierre-Elliott Bécue 2015-09-22 21:16:56 +02:00
parent f23644497b
commit 854f774f37

View file

@ -47,7 +47,8 @@ import random
import string
from unicodedata import normalize
from crans_utils import format_tel, format_mac, mailexist, validate_name, ip4_of_rid, ip6_of_mac, fetch_cert_info
from crans_utils import to_generalized_time_format, from_generalized_time_format
from crans_utils import to_generalized_time_format, from_generalized_time_format, datetime_from_generalized_time_format
from crans_utils import datetime_to_generalized_time_format
import itertools
if '/usr/scripts' not in sys.path:
@ -655,6 +656,8 @@ class generalizedTimeFormat(Attr):
elif isinstance(othertime, unicode) or isinstance(othertime, str):
resource = generalizedTimeFormat(othertime, conn=None, Parent=None)
return self._stamp == resource._stamp
elif isinstance(othertime, datetime.datetime):
return self._datetime == othertime
else:
return False
@ -671,6 +674,8 @@ class generalizedTimeFormat(Attr):
elif isinstance(othertime, unicode) or isinstance(othertime, str):
resource = generalizedTimeFormat(othertime, conn=None, Parent=None)
return self._stamp < resource._stamp
elif isinstance(othertime, datetime.datetime):
return self._datetime < othertime
else:
return False
@ -688,12 +693,19 @@ class generalizedTimeFormat(Attr):
if not ('Z' in gtf or '+' in gtf or '-' in gtf):
self._stamp = gtf
self.value = to_generalized_time_format(float(gtf))
self._datetime = datetime_from_generalized_time_format(self.value)
else:
self._stamp = from_generalized_time_format(gtf)
self._datetime = datetime_from_generalized_time_format(gtf)
self.value = gtf
elif isinstance(gtf, float):
self._stamp = gtf
self.value = to_generalized_time_format(gtf)
self._datetime = datetime_from_generalized_time_format(self.value)
elif isinstance(gtf, datetime.datetime):
self._datetime = gtf
self.value = datetime_to_generalized_time_format(gtf)
self._stamp = from_generalized_time_format(self.value)
@crans_attribute
class debutAdhesion(generalizedTimeFormat):