Created
July 24, 2013 09:28
-
-
Save flaper87/6069190 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import sys | |
import json | |
from qpid.messaging import * | |
broker = "10.10.10.4:5672" if len(sys.argv)<2 else sys.argv[1] | |
address = "testexchange / testtopic" if len(sys.argv)<3 else sys.argv[2] | |
connection = Connection(broker) | |
try: | |
connection.open() | |
session = connection.session() | |
sender = session.sender(address) | |
receiver = session.receiver(address) | |
content = json.dumps({"ctxt": {}, "message": {"method": "test", "args": {"arg": "1"}}}) | |
sender.send(Message(content)) | |
message = receiver.fetch(timeout=1) | |
print message.content | |
session.acknowledge() | |
except MessagingError as m: | |
print m | |
finally: | |
connection.close() |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from oslo.config import cfg | |
from oslo import messaging | |
from oslo.messaging.openstack.common import log as logging | |
logging.setup('oslo.messaging') | |
class ServerControlEndpoint(object): | |
target = messaging.Target(namespace='control', | |
version='2.0') | |
def __init__(self, server): | |
self.server = server | |
def stop(self, ctx): | |
self.server.stop() | |
class TestEndpoint(object): | |
def test(self, ctx, arg): | |
print arg | |
return arg | |
transport = messaging.get_transport(cfg.CONF, | |
'qpid://10.10.10.4:5672/testexchange') | |
target = messaging.Target(exchange="testexchange", | |
topic='testtopic', | |
server='server1') | |
endpoints = [ | |
TestEndpoint(), | |
] | |
server = messaging.get_rpc_server(transport, target, endpoints) | |
server.start() | |
server.wait() | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment