Mercurial > kallithea
view rhodecode/lib/app_globals.py @ 759:a7f50911a945 beta
Models code cleanups
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Thu, 25 Nov 2010 22:16:29 +0100 |
parents | 05528ad948c4 |
children | 405b80e4ccd5 |
line wrap: on
line source
"""The application's Globals object""" from beaker.cache import CacheManager from beaker.util import parse_cache_config_options from vcs.utils.lazy import LazyProperty class Globals(object): """Globals acts as a container for objects available throughout the life of the application """ def __init__(self, config): """One instance of Globals is created during application initialization and is available during requests via the 'app_globals' variable """ self.cache = CacheManager(**parse_cache_config_options(config)) self.available_permissions = None # propagated after init_model self.baseui = None # propagated after init_model @LazyProperty def paths(self): if self.baseui: return self.baseui.configitems('paths') @LazyProperty def base_path(self): if self.baseui: return self.paths[0][1]