Commit 13dc390f by Calen Pennington

Use a specialized method to clean up DjangoKeyValueStore

parent 7d2909c5
...@@ -95,9 +95,7 @@ class DjangoKeyValueStore(KeyValueStore): ...@@ -95,9 +95,7 @@ class DjangoKeyValueStore(KeyValueStore):
self._field_data_cache = field_data_cache self._field_data_cache = field_data_cache
def get(self, key): def get(self, key):
if key.scope not in self._allowed_scopes: self._raise_unless_scope_is_allowed(key)
raise InvalidScopeError(key)
return self._field_data_cache.get(key) return self._field_data_cache.get(key)
def set(self, key, value): def set(self, key, value):
...@@ -116,23 +114,23 @@ class DjangoKeyValueStore(KeyValueStore): ...@@ -116,23 +114,23 @@ class DjangoKeyValueStore(KeyValueStore):
""" """
for key in kv_dict: for key in kv_dict:
# Check key for validity # Check key for validity
if key.scope not in self._allowed_scopes: self._raise_unless_scope_is_allowed(key)
raise InvalidScopeError(key)
self._field_data_cache.set_many(kv_dict) self._field_data_cache.set_many(kv_dict)
def delete(self, key): def delete(self, key):
if key.scope not in self._allowed_scopes: self._raise_unless_scope_is_allowed(key)
raise InvalidScopeError(key)
self._field_data_cache.delete(key) self._field_data_cache.delete(key)
def has(self, key): def has(self, key):
self._raise_unless_scope_is_allowed(key)
return self._field_data_cache.has(key)
def _raise_unless_scope_is_allowed(self, key):
"""Raise an InvalidScopeError if key.scope is not in self._allowed_scopes."""
if key.scope not in self._allowed_scopes: if key.scope not in self._allowed_scopes:
raise InvalidScopeError(key) raise InvalidScopeError(key)
return self._field_data_cache.has(key)
new_contract("DjangoKeyValueStore", DjangoKeyValueStore) new_contract("DjangoKeyValueStore", DjangoKeyValueStore)
new_contract("DjangoKeyValueStore_Key", DjangoKeyValueStore.Key) new_contract("DjangoKeyValueStore_Key", DjangoKeyValueStore.Key)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment