Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

50 lines (39 sloc) 1.55 kb
# -*- coding: utf-8 -*-
from __future__ import absolute_import
import sys
from kombu.utils.url import _parse_url
from celery.local import Proxy
from celery.state import current_app
from celery.utils.imports import symbol_by_name
from celery.utils.functional import memoize
Unknown result backend: %r. Did you spell that correctly? (%r)\
"amqp": "celery.backends.amqp:AMQPBackend",
"cache": "celery.backends.cache:CacheBackend",
"redis": "celery.backends.redis:RedisBackend",
"mongodb": "celery.backends.mongodb:MongoBackend",
"database": "celery.backends.database:DatabaseBackend",
"cassandra": "celery.backends.cassandra:CassandraBackend",
"disabled": "celery.backends.base:DisabledBackend",
#: deprecated alias to ``current_app.backend``.
default_backend = Proxy(lambda: current_app.backend)
def get_backend_cls(backend=None, loader=None):
"""Get backend class by name/alias"""
backend = backend or "disabled"
loader = loader or current_app.loader
aliases = dict(BACKEND_ALIASES, **loader.override_backends)
return symbol_by_name(backend, aliases)
except ValueError, exc:
raise ValueError, ValueError(UNKNOWN_BACKEND % (
backend, exc)), sys.exc_info()[2]
def get_backend_by_url(backend=None, loader=None):
url = None
if backend and '://' in backend:
url = backend
backend, _, _, _, _, _, _ = _parse_url(url)
return get_backend_cls(backend, loader), url
Jump to Line
Something went wrong with that request. Please try again.