diff options
author | Vishvananda Ishaya <vishvananda@gmail.com> | 2011-07-21 22:46:36 +0000 |
---|---|---|
committer | Vishvananda Ishaya <vishvananda@gmail.com> | 2011-07-21 22:46:36 +0000 |
commit | 8383838afffeedcde8cd0dc486e32d2f5bb26f8e (patch) | |
tree | fe403c96a8afd7d1e803239c72bd37b71ebddc82 /nova/utils.py | |
parent | 74c399cb2ebb914973c2f0dc6ecf4dd8bbc062d7 (diff) | |
download | nova-8383838afffeedcde8cd0dc486e32d2f5bb26f8e.tar.gz nova-8383838afffeedcde8cd0dc486e32d2f5bb26f8e.tar.xz nova-8383838afffeedcde8cd0dc486e32d2f5bb26f8e.zip |
change context to maintain exact time, store roles, use ids instead of objects and use a uuid for request_id
Diffstat (limited to 'nova/utils.py')
-rw-r--r-- | nova/utils.py | 23 |
1 files changed, 16 insertions, 7 deletions
diff --git a/nova/utils.py b/nova/utils.py index 8784a227d..737903f81 100644 --- a/nova/utils.py +++ b/nova/utils.py @@ -19,7 +19,6 @@ """Utilities and helper functions.""" -import base64 import datetime import functools import inspect @@ -30,7 +29,6 @@ import os import random import re import socket -import string import struct import sys import time @@ -50,7 +48,8 @@ from nova import version LOG = logging.getLogger("nova.utils") -TIME_FORMAT = "%Y-%m-%dT%H:%M:%SZ" +ISO_TIME_FORMAT = "%Y-%m-%dT%H:%M:%SZ" +PERFECT_TIME_FORMAT = "%Y-%m-%dT%H:%M:%S.%f" FLAGS = flags.FLAGS @@ -361,16 +360,26 @@ def clear_time_override(): utcnow.override_time = None -def isotime(at=None): - """Returns iso formatted utcnow.""" +def strtime(at=None, fmt=PERFECT_TIME_FORMAT): + """Returns formatted utcnow.""" if not at: at = utcnow() - return at.strftime(TIME_FORMAT) + return at.strftime(fmt) + + +def parse_strtime(timestr, fmt=PERFECT_TIME_FORMAT): + """Turn a formatted time back into a datetime.""" + return datetime.datetime.strptime(timestr, fmt) + + +def isotime(at=None): + """Returns iso formatted utcnow.""" + return strtime(at, ISO_TIME_FORMAT) def parse_isotime(timestr): """Turn an iso formatted time back into a datetime.""" - return datetime.datetime.strptime(timestr, TIME_FORMAT) + return parse_strtime(timestr, ISO_TIME_FORMAT) def parse_mailmap(mailmap='.mailmap'): |