switch from ddportfolio to debianmemberportfolio
[debianmemberportfolio.git] / debianmemberportfolio / lib / app_globals.py
1 # -*- python -*-
2 # -*- coding: utf-8 -*-
3 #
4 # Debian Member Portfolio Service application Globals
5 #
6 # Copyright © 2009-2014 Jan Dittberner <jan@dittberner.info>
7 #
8 # This file is part of the Debian Member Portfolio Service.
9 #
10 # Debian Member Portfolio Service is free software: you can redistribute it
11 # and/or modify it under the terms of the GNU Affero General Public License as
12 # published by the Free Software Foundation, either version 3 of the License,
13 # or (at your option) any later version.
14 #
15 # Debian Member Portfolio Service is distributed in the hope that it will be
16 # useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero
18 # General Public License for more details.
19 #
20 # You should have received a copy of the GNU Affero General Public License
21 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
22 #
23 """
24 The application's Globals object
25 """
26
27 from beaker.cache import CacheManager
28 from beaker.util import parse_cache_config_options
29
30
31 class Globals(object):
32     """
33     Globals acts as a container for objects available throughout the
34     life of the application
35     """
36
37     def __init__(self, config):
38         """
39         One instance of Globals is created during application
40         initialization and is available during requests via the
41         'app_globals' variable
42         """
43         self.cache = CacheManager(**parse_cache_config_options(config))