[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [stem/master] Simpler cache fetching for single values
commit c20f7fd6454f08d2525e2d38f1c2069c7027713e
Author: Damian Johnson <atagar@xxxxxxxxxxxxxx>
Date: Sat Sep 23 19:00:33 2017 -0700
Simpler cache fetching for single values
Usually when we reference the cache it's for just a single value. No need for
an intermediate hash and dict.
---
stem/control.py | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/stem/control.py b/stem/control.py
index 796aa016..ce339da9 100644
--- a/stem/control.py
+++ b/stem/control.py
@@ -3064,7 +3064,12 @@ class Controller(BaseController):
:returns: cached value corresponding to key or **None** if the key wasn't found
"""
- return self._get_cache_map([param], namespace).get(param, None)
+ with self._cache_lock:
+ if not self.is_caching_enabled():
+ return None
+
+ cache_key = '%s.%s' % (namespace, param) if namespace else param
+ return self._request_cache.get(cache_key, None)
def _get_cache_map(self, params, namespace = None):
"""
@@ -3081,10 +3086,7 @@ class Controller(BaseController):
if self.is_caching_enabled():
for param in params:
- if namespace:
- cache_key = '%s.%s' % (namespace, param)
- else:
- cache_key = param
+ cache_key = '%s.%s' % (namespace, param) if namespace else param
if cache_key in self._request_cache:
cached_values[param] = self._request_cache[cache_key]
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits