On Thu, Feb 10, 2011 at 11:18:59PM -0500, Ted Ross wrote:
> Angus,
>
> I've put an example C++ console that receives V2 events and prints
> them in subversion. It's at
> qpid/cpp/bindings/qmf2/examples/cpp/print_events.cpp. This should
> get you unblocked.
Wow, that was quick! Thanks, I give it a go.
-Angus
>
> -Ted
>
> On 02/10/2011 05:57 PM, Angus Salkeld wrote:
> >Hi
> >
> >I am trying to write a c++ client to Matahari. It Exposes an event which I
> >need to receive. It is sending the event useing the following call:
> >
> >this->_agent->raiseEvent(_qmf::EventHeartbeat(timestamp,
> >_heartbeat_sequence++));
> >
> >If i follow the code it seems to go to Agentsession.cpp: 544:
> >void AgentSessionImpl::raiseEvent(const Data& data, int severity)
> >{
> > Message msg;
> > Variant::Map map;
> > Variant::Map& headers(msg.getProperties());
> > string subject("agent.ind.event");
> >
> >Note the "agent.ind.event" ^^^
> >
> >The only way I have succeeded in receiving this is using "qpid-printevents".
> >I have
> >tried coping the different versions of C++ examples to no avail.
> >
> >So when I use qpid-printevents I get the following bind events:
> >
> >Thu Feb 10 22:34:43 2011 INFO org.apache.qpid.broker:bind
> >broker=localhost:49000
> >rhost=127.0.0.1:33154 user=anonymous exName=qpid.management
> >qName=topic-troll.bigpond.7363.1
> >key=console.event.# args={}
> >
> >version 1 bind ^^^
> >
> >Thu Feb 10 22:34:43 2011 INFO org.apache.qpid.broker:bind
> >broker=localhost:49000
> >rhost=127.0.0.1:33154 user=anonymous exName=qmf.default.topic
> >qName=qmfc-v2-hb-troll.bigpond.7363.1
> >key=agent.ind.heartbeat.# args={}
> >Thu Feb 10 22:34:43 2011 INFO org.apache.qpid.broker:bind
> >broker=localhost:49000
> >rhost=127.0.0.1:33154 user=anonymous exName=qmf.default.topic
> >qName=qmfc-v2-ui-troll.bigpond.7363.1
> >key=agent.ind.event.# args={}
> >
> >version 2 binds ^^^
> >
> >When I use a c++ client only get the version 1 binds.
> >
> >If I "grep -R "\<agent.ind\>" *" in the code base I find:
> >
> >cpp/src/qmf/AgentSession.cpp
> >cpp/src/qpid/agent/ManagementAgentImpl.cpp
> >cpp/src/qpid/management/ManagementAgent.cpp
> >cpp/src/tests/BrokerMgmtAgent.cpp
> >extras/qmf/build/lib/qmf2/agent.py
> >extras/qmf/build/lib/qmf2/common.py
> >extras/qmf/build/lib/qmf2/console.py
> >extras/qmf/build/lib/qmf/console.py
> >extras/qmf/src/py/qmf2/agent.py
> >extras/qmf/src/py/qmf2/common.py
> >extras/qmf/src/py/qmf2/console.py
> >extras/qmf/src/py/qmf/console.py
> >
> >It seems to me that the c++ console files are not v2 aware and
> >thus v2 client applications can't receive v2 events.
> >Is this correct, or am I off base here (only too happy to be wrong here)?
> >
> >Note: I was initially using standard Fedora 14 qpid, but then moved to
> >a build from the latest git.
> >
> >Regards
> >Angus Salkeld
> >
> >
> >---------------------------------------------------------------------
> >Apache Qpid - AMQP Messaging Implementation
> >Project: http://qpid.apache.org
> >Use/Interact: mailto:[email protected]
> >
>
>
> ---------------------------------------------------------------------
> Apache Qpid - AMQP Messaging Implementation
> Project: http://qpid.apache.org
> Use/Interact: mailto:[email protected]
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]