| Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation | 
Agent - Protocol engine for the QMF agent. More...
#include <qmf/engine/Agent.h>
| Public Member Functions | |
| Agent (char *label, bool internalStore=true) | |
| ~Agent () | |
| void | setStoreDir (const char *path) | 
| Configure the directory path for storing persistent data. | |
| void | setTransferDir (const char *path) | 
| Configure the directory path for files transferred over QMF. | |
| void | handleRcvMessage (Message &message) | 
| Pass messages received from the AMQP session to the Agent engine. | |
| bool | getXmtMessage (Message &item) const | 
| Get the next message to be sent to the AMQP network. | |
| void | popXmt () | 
| Remove and discard one message from the head of the transmit queue. | |
| bool | getEvent (AgentEvent &event) const | 
| Get the next application event from the agent engine. | |
| void | popEvent () | 
| Remove and discard one event from the head of the event queue. | |
| void | newSession () | 
| A new AMQP session has been established for Agent communication. | |
| void | startProtocol () | 
| Start the QMF Agent protocol. | |
| void | heartbeat () | 
| This method is called periodically so the agent can supply a heartbeat. | |
| void | methodResponse (uint32_t sequence, uint32_t status, char *text, const Value &arguments) | 
| Respond to a method request. | |
| void | queryResponse (uint32_t sequence, Object &object, bool prop=true, bool stat=true) | 
| Send a content indication to the QMF bus. | |
| void | queryComplete (uint32_t sequence) | 
| Indicate the completion of a query. | |
| void | registerClass (SchemaObjectClass *cls) | 
| Register a schema class with the Agent. | |
| void | registerClass (SchemaEventClass *cls) | 
| Register a schema class with the Agent. | |
| const ObjectId * | addObject (Object &obj, uint64_t persistId) | 
| Give an object to the Agent for storage and management. | |
| const ObjectId * | allocObjectId (uint64_t persistId) | 
| Allocate an object-id for an object that will be managed by the application. | |
| const ObjectId * | allocObjectId (uint32_t persistIdLo, uint32_t persistIdHi) | 
| void | raiseEvent (Event &event) | 
| Raise an event into the QMF network. | |
Agent - Protocol engine for the QMF agent.
| qmf::engine::Agent::Agent | ( | char * | label, | 
| bool | internalStore = true | ||
| ) | 
| qmf::engine::Agent::~Agent | ( | ) | 
Give an object to the Agent for storage and management.
Once added, the agent takes responsibility for the life cycle of the object.
| obj | The object to be managed by the Agent. | 
| persistId | A unique non-zero value if the object-id is to be persistent. | 
| const ObjectId* qmf::engine::Agent::allocObjectId | ( | uint64_t | persistId | ) | 
Allocate an object-id for an object that will be managed by the application.
| persistId | A unique non-zero value if the object-id is to be persistent. | 
| bool qmf::engine::Agent::getEvent | ( | AgentEvent & | event | ) | const | 
Get the next application event from the agent engine.
| event | The event iff the return value is true | 
| bool qmf::engine::Agent::getXmtMessage | ( | Message & | item | ) | const | 
| void qmf::engine::Agent::handleRcvMessage | ( | Message & | message | ) | 
Pass messages received from the AMQP session to the Agent engine.
| message | AMQP messages received on the agent session. | 
| void qmf::engine::Agent::heartbeat | ( | ) | 
This method is called periodically so the agent can supply a heartbeat.
| void qmf::engine::Agent::methodResponse | ( | uint32_t | sequence, | 
| uint32_t | status, | ||
| char * | text, | ||
| const Value & | arguments | ||
| ) | 
Respond to a method request.
| sequence | The sequence number from the method request event. | 
| status | The method's completion status. | 
| text | Status text ("OK" or an error message) | 
| arguments | The list of output arguments from the method call. | 
| void qmf::engine::Agent::newSession | ( | ) | 
A new AMQP session has been established for Agent communication.
| void qmf::engine::Agent::popEvent | ( | ) | 
Remove and discard one event from the head of the event queue.
| void qmf::engine::Agent::popXmt | ( | ) | 
Remove and discard one message from the head of the transmit queue.
| void qmf::engine::Agent::queryComplete | ( | uint32_t | sequence | ) | 
Indicate the completion of a query.
This is not used for SYNC_START requests.
| sequence | The sequence number of the GET request. | 
| void qmf::engine::Agent::queryResponse | ( | uint32_t | sequence, | 
| Object & | object, | ||
| bool | prop = true, | ||
| bool | stat = true | ||
| ) | 
Send a content indication to the QMF bus.
This is only needed for objects that are managed by the application. This is *NOT* needed for objects managed by the Agent (inserted using addObject).
| sequence | The sequence number of the GET request or the SYNC_START request. | 
| object | The object (annotated with "changed" flags) for publication. | 
| prop | If true, changed object properties are transmitted. | 
| stat | If true, changed object statistics are transmitted. | 
| void qmf::engine::Agent::raiseEvent | ( | Event & | event | ) | 
Raise an event into the QMF network.
| event | The event object for the event to be raised. | 
| void qmf::engine::Agent::registerClass | ( | SchemaObjectClass * | cls | ) | 
Register a schema class with the Agent.
| cls | A SchemaObejctClass object that defines data managed by the agent. | 
| void qmf::engine::Agent::registerClass | ( | SchemaEventClass * | cls | ) | 
Register a schema class with the Agent.
| cls | A SchemaEventClass object that defines events sent by the agent. | 
| void qmf::engine::Agent::setStoreDir | ( | const char * | path | ) | 
Configure the directory path for storing persistent data.
| path | Null-terminated string containing a directory path where files can be created, written, and read. If NULL, no persistent storage will be attempted. | 
| void qmf::engine::Agent::setTransferDir | ( | const char * | path | ) | 
Configure the directory path for files transferred over QMF.
| path | Null-terminated string containing a directory path where files can be created, deleted, written, and read. If NULL, file transfers shall not be permitted. | 
| void qmf::engine::Agent::startProtocol | ( | ) | 
 1.7.5
 1.7.5