summaryrefslogtreecommitdiffstats
path: root/openstack
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2012-11-23 04:25:20 +0000
committerGerrit Code Review <review@openstack.org>2012-11-23 04:25:20 +0000
commit0781c7bc3632950c1336ecfb47707f48a6ab3734 (patch)
tree5a52dde9a05f4f0420e115c0750e8addf60faa78 /openstack
parentb8cc160fb76c72b922a4394de8c5e70f5e8ea7b4 (diff)
parentce80aac98a905a07ea7ec093f37243a4c3bbb6e0 (diff)
downloadoslo-0781c7bc3632950c1336ecfb47707f48a6ab3734.tar.gz
oslo-0781c7bc3632950c1336ecfb47707f48a6ab3734.tar.xz
oslo-0781c7bc3632950c1336ecfb47707f48a6ab3734.zip
Merge "Convenience wrapper for datetime.timedelta.total_seconds()"
Diffstat (limited to 'openstack')
-rw-r--r--openstack/common/timeutils.py13
1 files changed, 13 insertions, 0 deletions
diff --git a/openstack/common/timeutils.py b/openstack/common/timeutils.py
index 8600439..4bf19a5 100644
--- a/openstack/common/timeutils.py
+++ b/openstack/common/timeutils.py
@@ -135,3 +135,16 @@ def unmarshall_time(tyme):
minute=tyme['minute'],
second=tyme['second'],
microsecond=tyme['microsecond'])
+
+
+def delta_seconds(before, after):
+ """
+ Compute the difference in seconds between two date, time, or
+ datetime objects (as a float, to microsecond resolution).
+ """
+ delta = after - before
+ try:
+ return delta.total_seconds()
+ except AttributeError:
+ return ((delta.days * 24 * 3600) + delta.seconds +
+ float(delta.microseconds) / (10 ** 6))