python-dependency-injector/examples/providers/abstract_factory/cache.py

26 lines
655 B
Python
Raw Normal View History

"""Example hierarchy of cache clients with abstract base class."""
class AbstractCacheClient(object):
"""Abstract cache client."""
class RedisCacheClient(AbstractCacheClient):
"""Cache client implementation based on Redis."""
def __init__(self, host, port, db):
"""Initialize instance."""
self.host = host
self.port = port
self.db = db
class MemcacheCacheClient(AbstractCacheClient):
"""Cache client implementation based on Memcached."""
def __init__(self, hosts, port, prefix):
"""Initialize instance."""
self.hosts = hosts
self.port = port
self.prefix = prefix