diff --git a/zephyr/models.py b/zephyr/models.py index 40f54b9d68..deaf001d4f 100644 --- a/zephyr/models.py +++ b/zephyr/models.py @@ -172,7 +172,15 @@ def get_client(name): return Client.objects.get(name=name) return client +def get_stream_cache_key(stream_name, realm): + if isinstance(realm, Realm): + realm_id = realm.id + else: + realm_id = realm + return "stream_by_realm_and_name:%s:%s" % (realm_id, hashlib.sha1(stream_name.strip().lower()).hexdigest()) + # get_stream takes either a realm id or a realm +@cache_with_key(get_stream_cache_key) def get_stream(stream_name, realm): if isinstance(realm, Realm): realm_id = realm.id