]> git.proxmox.com Git - ceph.git/blob - ceph/src/pybind/mgr/rest/app/util.py
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / pybind / mgr / rest / app / util.py
1 import datetime
2
3 from dateutil import tz
4
5
6 def now():
7 """
8 A tz-aware now
9 """
10 return datetime.datetime.utcnow().replace(tzinfo=tz.tzutc())
11
12
13 def memoize(function):
14 def wrapper(*args):
15 self = args[0]
16 if not hasattr(self, "_memo"):
17 self._memo = {}
18
19 if args in self._memo:
20 return self._memo[args]
21 else:
22 rv = function(*args)
23 self._memo[args] = rv
24 return rv
25 return wrapper