def setUp(self): self.maxDiff = None # To show full difference between structures in case of error dest = {} dest.update({'/queue/FakeQueue': ['consumer4', 'consumer2']}) dest4 = {'/queue/test3': ['consumer1', 'consumer2', 'consumer3', 'consumer4']} conn1 = {'MQConnector': FakeMQConnector(), 'destinations': dest} conn2 = {'MQConnector': FakeMQConnector(), 'destinations': dest4} storage = {'fake.cern.ch': conn1, 'testdir.blabla.ch': conn2} self.myManager = MQConnectionManager(connectionStorage=storage)
def setUp(self): self.maxDiff = None # To show full difference between structures in case of error dest = {} dest.update({'/queue/test1': ['producer4', 'consumer1', 'consumer2', 'consumer4']}) dest.update({'/queue/test2': ['producer2', 'consumer1', 'consumer2']}) dest.update({'/topic/test1': ['producer1']}) dest4 = {'/queue/test3': ['producer1', 'consumer2', 'consumer3', 'consumer4']} conn1 = {'MQConnector': 'TestConnector1', 'destinations': dest} conn2 = {'MQConnector': 'TestConnector2', 'destinations': dest4} storage = {'mardirac3.in2p3.fr': conn1, 'testdir.blabla.ch': conn2} self.mgr = MQConnectionManager(connectionStorage=storage)
def setUp(self): self.maxDiff = None # To show full difference between structures in case of error dest = {} dest.update({"/queue/FakeQueue": ["consumer4", "consumer2"]}) dest4 = { "/queue/test3": ["consumer1", "consumer2", "consumer3", "consumer4"] } conn1 = {"MQConnector": FakeMQConnector(), "destinations": dest} conn2 = {"MQConnector": FakeMQConnector(), "destinations": dest4} storage = {"fake.cern.ch": conn1, "testdir.blabla.ch": conn2} self.myManager = MQConnectionManager(connectionStorage=storage)
def setUp(self): self.maxDiff = None # To show full difference between structures in case of error dest = {} dest.update({ "/queue/test1": ["producer4", "consumer1", "consumer2", "consumer4"] }) dest.update({"/queue/test2": ["producer2", "consumer1", "consumer2"]}) dest.update({"/topic/test1": ["producer1"]}) dest4 = { "/queue/test3": ["producer1", "consumer2", "consumer3", "consumer4"] } conn1 = {"MQConnector": "TestConnector1", "destinations": dest} conn2 = {"MQConnector": "TestConnector2", "destinations": dest4} storage = {"mardirac3.in2p3.fr": conn1, "testdir.blabla.ch": conn2} self.mgr = MQConnectionManager(connectionStorage=storage)
""" General Message Queue Interface to create Consumers and Producers """ from __future__ import absolute_import from __future__ import division from __future__ import print_function from DIRAC import gLogger, S_OK from DIRAC.Resources.MessageQueue.MQProducer import MQProducer from DIRAC.Resources.MessageQueue.MQConsumer import MQConsumer from DIRAC.Resources.MessageQueue.MQConnectionManager import MQConnectionManager from DIRAC.Resources.MessageQueue.Utilities import getMQParamsFromCS from DIRAC.Resources.MessageQueue.Utilities import generateDefaultCallback __RCSID__ = "$Id$" connectionManager = MQConnectionManager( ) # To manage the active MQ connections. def createConsumer(mqURI, callback=generateDefaultCallback()): """ Function creates MQConsumer. All parameters are taken from the Configuration Service based on the mqURI value. Args: mqURI(str):Pseudo URI identifing MQ service. It has the following format mqConnection::DestinationType::DestinationName e.g. blabla.cern.ch::Queues::MyQueue1 callback: callback function that can be used to process the incoming messages Returns: S_OK/S_ERROR: with the consumer object in S_OK.