0001"""Base objects to be exported for use in Controllers"""
0002from paste.registry import StackedObjectProxy
0003
0004from pylons.config import config
0005from pylons.legacy import h, jsonify, Controller, Response
0006
0007__all__ = ['c', 'g', 'cache', 'request', 'response', 'session', 'jsonify',
0008 'Controller', 'Response']
0009
0010def __figure_version():
0011 try:
0012 from pkg_resources import require
0013 import os
0014 # NOTE: this only works when the package is either installed,
0015 # or has an .egg-info directory present (i.e. wont work with raw SVN checkout)
0016 info = require('pylons')[0]
0017 if os.path.dirname(os.path.dirname(__file__)) == info.location:
0018 return info.version
0019 else:
0020 return '(not installed)'
0021 except:
0022 return '(not installed)'
0023
0024__version__ = __figure_version()
0025
0026c = StackedObjectProxy(name="C")
0027g = StackedObjectProxy(name="G")
0028
0029cache = StackedObjectProxy(name="Cache")
0030request = StackedObjectProxy(name="Request")
0031response = StackedObjectProxy(name="Response")
0032session = StackedObjectProxy(name="Session")
0033
0034buffet = StackedObjectProxy(name="Buffet")
0035translator = StackedObjectProxy(name="Translator")