changed settings access

master
androiddrew 8 years ago
parent cf8f4c3ef3
commit 3d8eb77807

@ -1,3 +1,43 @@
import redis import redis
from apistar import Command, Component, Settings from apistar import Component, Settings
class RedisBackend:
def __init__(self, settings: Settings) -> None:
"""
Configure a new redis backend
Args:
settings: The application settings dictionary
"""
redis_config = settings['REDIS']
self.host = redis_config.get('HOST')
self.port = redis_config.get('PORT')
self.password = redis_config.get('PASSWORD')
# TODO add connection pooling
class Client:
def __init__(self, backend: RedisBackend):
self.backend = backend
def get_redis_client(backend: RedisBackend):
"""
Create a new redis session
"""
client = redis.Redis(host=backend.host,
port=backend.port,
password=backend.password)
return client
components = [
Component(RedisBackend),
Component(Client, init=get_redis_client)
]

Loading…
Cancel
Save