From 3ac7f26de510052014f88bc05b33033f0fe3464e Mon Sep 17 00:00:00 2001 From: Ilan Steemers Date: Wed, 27 Jan 2016 11:11:29 +0100 Subject: [PATCH] Moves custom broker class to top --- django_q/brokers/__init__.py | 40 ++++++++++++++++++++---------------- 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/django_q/brokers/__init__.py b/django_q/brokers/__init__.py index 6609e5e..c7c592b 100644 --- a/django_q/brokers/__init__.py +++ b/django_q/brokers/__init__.py @@ -158,28 +158,32 @@ def get_broker(list_key=Conf.PREFIX): :type list_key: str :return: """ - # disque - if Conf.DISQUE_NODES: - from brokers import disque - return disque.Disque(list_key=list_key) - elif Conf.IRON_MQ: - from brokers import ironmq - return ironmq.IronMQBroker(list_key=list_key) - elif Conf.SQS: - from brokers import aws_sqs - return aws_sqs.Sqs(list_key=list_key) - elif Conf.ORM: - from brokers import orm - return orm.ORM(list_key=list_key) - elif Conf.MONGO: - from brokers import mongo - return mongo.Mongo(list_key=list_key) - elif Conf.BROKER: + # custom + if Conf.BROKER: module, func = Conf.BROKER.rsplit('.', 1) m = importlib.import_module(module) broker = getattr(m, func) return broker(list_key=list) - + # disque + elif Conf.DISQUE_NODES: + from brokers import disque + return disque.Disque(list_key=list_key) + # Iron MQ + elif Conf.IRON_MQ: + from brokers import ironmq + return ironmq.IronMQBroker(list_key=list_key) + # SQS + elif Conf.SQS: + from brokers import aws_sqs + return aws_sqs.Sqs(list_key=list_key) + # ORM + elif Conf.ORM: + from brokers import orm + return orm.ORM(list_key=list_key) + # Mongo + elif Conf.MONGO: + from brokers import mongo + return mongo.Mongo(list_key=list_key) # default to redis else: from brokers import redis_broker