Успешное использование pidbox.Mailbox? - PullRequest
0 голосов
/ 24 марта 2011

Кто-нибудь использовал pidbox.Mailbox ?

Я пытаюсь сделать что-то похожее на этот пример, но эта документация устарела. Мне удалось получить что-то, что публикует сообщения для транспорта django, но оттуда они никогда не были успешно получены.

Я надеялся, что кто-то знает, как это использовать, и мог бы показать пример успешного вызова / приведения.

Вот что у меня есть (фиктивный узел на самом деле ничего не делает, просто печатает или списки):

    #node/server
    mailbox = pidbox.Mailbox("test", type="direct")
    connection  = BrokerConnection(transport="django")

    bound = mailbox(connection)

    state = {"node": DummyNode(),
                "connection": connection
        }

    node = bound.Node(state = state)

    @node.handler
    def list( state, **kwargs):
        print 'list called'
        return state["node"].list()
    @node.handler
    def connection_info(state, **kwargs):
        return {"connection": state["connection"].info()}
    @node.handler
    def print_msg(state, **kwargs):
        print 'Node handler!'
        state["node"].print_msg(kwargs)


    consumer = node.listen(channel = connection.channel())
    try:
        while not self.killed:
            print 'Consumer Waiting'
            connection.drain_events()
    finally:
        consumer.cancel()

И простой клиент.

#client:    

mailbox = pidbox.Mailbox("test", type="direct")
connection  = BrokerConnection(transport="django")
bound = mailbox(connection)

bound.cast(["localhost"], "print_msg", {'msg' : 'Message for you'})
info = bound.call(["test_application"],"list", callback=callback)

1 Ответ

0 голосов
/ 09 июня 2011

Ответ на этот вопрос, по-видимому, нет. Если вы столкнетесь с этим постом, я настоятельно рекомендую написать свой собственный. Недостаточно документации для pidbox и устаревшей документации.

...