##// END OF EJS Templates
Fixed url bug when using numeric revision in file browser,...
Fixed url bug when using numeric revision in file browser, added follow branch checkbox for browsing only changesets from current branch

File last commit:

r776:f6c613fb beta
r884:322b53be beta
Show More
loader.py
55 lines | 1.3 KiB | text/x-python | PythonLexer
from celery.loaders.base import BaseLoader
from pylons import config
to_pylons = lambda x: x.replace('_', '.').lower()
to_celery = lambda x: x.replace('.', '_').upper()
LIST_PARAMS = """CELERY_IMPORTS ADMINS ROUTES""".split()
class PylonsSettingsProxy(object):
"""Pylons Settings Proxy
Proxies settings from pylons.config
"""
def __getattr__(self, key):
pylons_key = to_pylons(key)
try:
value = config[pylons_key]
if key in LIST_PARAMS: return value.split()
return self.type_converter(value)
except KeyError:
raise AttributeError(pylons_key)
def __setattr__(self, key, value):
pylons_key = to_pylons(key)
config[pylons_key] = value
def type_converter(self, value):
#cast to int
if value.isdigit():
return int(value)
#cast to bool
if value.lower() in ['true', 'false']:
return value.lower() == 'true'
return value
class PylonsLoader(BaseLoader):
"""Pylons celery loader
Maps the celery config onto pylons.config
"""
def read_configuration(self):
self.configured = True
return PylonsSettingsProxy()
def on_worker_init(self):
"""
Import task modules.
"""
self.import_default_modules()