Files
deb-oslo.cache/oslo_cache/backends/noop.py
Pavel Kholkin 5881ad7cb1 Added NO_VALUE to core file
Using oslo_cache lib the only way to compare some cached_value with NO_VALUE is
to add bad import like 'from oslo_cache.backends.dictionary import NO_VALUE'.

NO_VALUE is now added to core.py file and the improved import
'oslo_cache.core import NO_VALUE' will look much better in other projects.

NO_VALUE is now public, it is added to __all__ and is used everywhere from core
instead of dogpile.cache.api.NO_VALUE.

Co-Authored-By: Sergey Nikitin <snikitin@mirantis.com>

Change-Id: I8fea4a9eb088089289ba1dd35377fb10465c313a
2015-07-23 14:12:01 +03:00

55 lines
1.5 KiB
Python

# Copyright 2013 Metacloud
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
from dogpile.cache import api
from oslo_cache import core
__all__ = [
'NoopCacheBackend'
]
_NO_VALUE = core.NO_VALUE
class NoopCacheBackend(api.CacheBackend):
"""A no op backend as a default caching backend.
The no op backend is provided as the default caching backend for keystone
to ensure that ``dogpile.cache.memory`` is not used in any real-world
circumstances unintentionally. ``dogpile.cache.memory`` does not have a
mechanism to cleanup it's internal dict and therefore could cause run-away
memory utilization.
"""
def __init__(self, *args):
return
def get(self, key):
return _NO_VALUE
def get_multi(self, keys):
return [_NO_VALUE for x in keys]
def set(self, key, value):
return
def set_multi(self, mapping):
return
def delete(self, key):
return
def delete_multi(self, keys):
return