review uses of strftime to use a common central date format sfatime.SFATIME_FORMAT
authorThierry Parmentelat <thierry.parmentelat@inria.fr>
Mon, 19 May 2014 14:56:58 +0000 (16:56 +0200)
committerThierry Parmentelat <thierry.parmentelat@inria.fr>
Mon, 19 May 2014 14:56:58 +0000 (16:56 +0200)
sfa/cortexlab/cortexlabshell.py
sfa/iotlab/iotlabshell.py
sfa/managers/aggregate_manager_max.py
sfa/rspecs/rspec.py
sfa/util/sfatime.py
testbeds/iotlab/tests/driver_tests.py

index 1321484..b0739b1 100644 (file)
@@ -7,7 +7,7 @@ holding information about which slice is running which job.
 from datetime import datetime
 
 from sfa.util.sfalogging import logger
-
+from sfa.util.sfatime import SFATIME_FORMAT
 
 from sfa.iotlab.iotlabpostgres import LeaseTableXP
 from sfa.cortexlab.LDAPapi import LDAPapi
@@ -34,7 +34,7 @@ class CortexlabShell():
 
         self.query_sites = CortexlabQueryNodes()
         self.ldap = LDAPapi()
-        self.time_format = "%Y-%m-%d %H:%M:%S"
+        self.time_format = SFATIME_FORMAT
         self.root_auth = config.SFA_REGISTRY_ROOT_AUTH
         self.grain = 60  # 10 mins lease minimum, 60 sec granularity
         #import logging, logging.handlers
index ba62ca9..896e4d6 100644 (file)
@@ -7,6 +7,7 @@ holding information about which slice is running which job.
 from datetime import datetime
 
 from sfa.util.sfalogging import logger
+from sfa.util.sfatime import SFATIME_FORMAT
 
 from sfa.iotlab.OARrestapi import OARrestapi
 from sfa.iotlab.LDAPapi import LDAPapi
@@ -30,7 +31,7 @@ class IotlabShell():
         # self.leases_db = TestbedAdditionalSfaDB(config)
         self.oar = OARrestapi()
         self.ldap = LDAPapi()
-        self.time_format = "%Y-%m-%d %H:%M:%S"
+        self.time_format = SFATIME_FORMAT
         self.root_auth = config.SFA_REGISTRY_ROOT_AUTH
         self.grain = 60  # 10 mins lease minimum, 60 sec granularity
         #import logging, logging.handlers
index 64fd0ec..88df708 100644 (file)
@@ -4,6 +4,7 @@ import re
 
 #from sfa.util.faults import *
 from sfa.util.sfalogging import logger
+from sfa.util.sfatime import SFATIME_FORMAT
 from sfa.util.config import Config
 from sfa.util.callids import Callids
 from sfa.util.version import version_core
@@ -56,7 +57,7 @@ class AggregateManagerMax (AggregateManager):
     # save request RSpec xml content to a tmp file
     def save_rspec_to_file(self, rspec):
         path = AggregateManagerMax.RSPEC_TMP_FILE_PREFIX + "_" + \
-            time.strftime('%Y%m%dT%H:%M:%S', time.gmtime(time.time())) +".xml"
+            time.strftime(SFATIME_FORMAT, time.gmtime(time.time())) +".xml"
         file = open(path, "w")
         file.write(rspec)
         file.close()
index a17b7d6..8a66ff3 100755 (executable)
@@ -3,6 +3,7 @@ from datetime import datetime, timedelta
 
 from sfa.util.xml import XML, XpathFilter
 from sfa.util.faults import InvalidRSpecElement, InvalidRSpec
+from sfa.util.sfatime import SFATIME_FORMAT
 
 from sfa.rspecs.rspec_elements import RSpecElement, RSpecElements 
 from sfa.rspecs.version_manager import VersionManager
@@ -35,11 +36,9 @@ class RSpec:
         self.version = self.version_manager.get_version(version)
         self.namespaces = self.version.namespaces
         self.parse_xml(self.version.template, self.version) 
-        # eg. 2011-03-23T19:53:28Z 
-        date_format = '%Y-%m-%dT%H:%M:%SZ'
         now = datetime.utcnow()
-        generated_ts = now.strftime(date_format)
-        expires_ts = (now + timedelta(hours=1)).strftime(date_format
+        generated_ts = now.strftime(SFATIME_FORMAT)
+        expires_ts = (now + timedelta(hours=1)).strftime(SFATIME_FORMAT
         self.xml.set('expires', expires_ts)
         self.xml.set('generated', generated_ts)
 
index 992785e..d14f44b 100644 (file)
@@ -27,7 +27,7 @@ import time
 
 from sfa.util.sfalogging import logger
 
-DATEFORMAT = "%Y-%m-%dT%H:%M:%SZ"
+SFATIME_FORMAT = "%Y-%m-%dT%H:%M:%SZ"
 
 def utcparse(input):
     """ Translate a string into a time using dateutil.parser.parse but make sure it's in UTC time and strip
@@ -57,7 +57,7 @@ For safety this can also handle inputs that are either timestamps, or datetimes
         logger.error("Unexpected type in utcparse [%s]"%type(input))
 
 def datetime_to_string(input):
-    return datetime.datetime.strftime(input, DATEFORMAT)
+    return datetime.datetime.strftime(input, SFATIME_FORMAT)
 
 def datetime_to_utc(input):
     return time.gmtime(datetime_to_epoch(input))
index 77b813b..0a473e2 100644 (file)
@@ -14,6 +14,7 @@ from sfa.util.sfalogging import logger
 
 #OAR imports
 from datetime import datetime
+from sfa.util.sfatime import SFATIME_FORMAT
 from sfa.iotlab.OARrestapi import OARrestapi
 
 #Test iotlabdriver
@@ -240,11 +241,9 @@ def TestOAR(job_id = None):
 
 
     message_and_wait("\r\n Get server's date and timezone")
-    time_format = "%Y-%m-%d %H:%M:%S"
     server_timestamp, server_tz = oar.parser.SendRequest("GET_timezone")
     print "\r\n OAR  GetTimezone ", server_timestamp, server_tz
-    print(datetime.fromtimestamp(int(server_timestamp)).strftime(
-                                                time_format))
+    print(datetime.fromtimestamp(int(server_timestamp)).strftime(SFATIME_FORMAT))
 
     message_and_wait("\r\n Get all the resources with details from OAR")
     uri = '/oarapi/resources/full.json'
@@ -380,4 +379,4 @@ def main():
 
 
 if __name__ == "__main__":
-    main()
\ No newline at end of file
+    main()