diff options
author | Rajith Muditha Attapattu <rajith@apache.org> | 2011-05-27 15:44:23 +0000 |
---|---|---|
committer | Rajith Muditha Attapattu <rajith@apache.org> | 2011-05-27 15:44:23 +0000 |
commit | 66765100f4257159622cefe57bed50125a5ad017 (patch) | |
tree | a88ee23bb194eb91f0ebb2d9b23ff423e3ea8e37 /cpp/include/qmf/ConsoleSession.h | |
parent | 1aeaa7b16e5ce54f10c901d75c4d40f9f88b9db6 (diff) | |
parent | 88b98b2f4152ef59a671fad55a0d08338b6b78ca (diff) | |
download | qpid-python-rajith_jms_client.tar.gz |
Creating a branch for experimenting with some ideas for JMS client.rajith_jms_client
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/rajith_jms_client@1128369 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/include/qmf/ConsoleSession.h')
-rw-r--r-- | cpp/include/qmf/ConsoleSession.h | 127 |
1 files changed, 0 insertions, 127 deletions
diff --git a/cpp/include/qmf/ConsoleSession.h b/cpp/include/qmf/ConsoleSession.h deleted file mode 100644 index 6008036eec..0000000000 --- a/cpp/include/qmf/ConsoleSession.h +++ /dev/null @@ -1,127 +0,0 @@ -#ifndef QMF_CONSOLE_SESSION_H -#define QMF_CONSOLE_SESSION_H -/* - * - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - * - */ - -#include <qmf/ImportExport.h> -#include "qmf/Handle.h" -#include "qmf/Agent.h" -#include "qmf/Subscription.h" -#include "qpid/messaging/Duration.h" -#include "qpid/messaging/Connection.h" -#include <string> - -namespace qmf { - -#ifndef SWIG - template <class> class PrivateImplRef; -#endif - - class ConsoleSessionImpl; - class ConsoleEvent; - - class QMF_CLASS_EXTERN ConsoleSession : public qmf::Handle<ConsoleSessionImpl> { - public: - QMF_EXTERN ConsoleSession(ConsoleSessionImpl* impl = 0); - QMF_EXTERN ConsoleSession(const ConsoleSession&); - QMF_EXTERN ConsoleSession& operator=(const ConsoleSession&); - QMF_EXTERN ~ConsoleSession(); - - /** - * ConsoleSession - * A session that runs over an AMQP connection for QMF console operation. - * - * @param connection - An opened qpid::messaging::Connection - * @param options - An optional string containing options - * - * The options string is of the form "{key:value,key:value}". The following keys are supported: - * - * domain:NAME - QMF Domain to join [default: "default"] - * max-agent-age:N - Maximum time, in minutes, that we will tolerate not hearing from - * an agent before deleting it [default: 5] - * listen-on-direct:{True,False} - If True: Listen on legacy direct-exchange address for backward compatibility [default] - * If False: Listen only on the routable direct address - * strict-security:{True,False} - If True: Cooperate with the broker to enforce strict access control to the network - * - If False: Operate more flexibly with regard to use of messaging facilities [default] - */ - QMF_EXTERN ConsoleSession(qpid::messaging::Connection& conn, const std::string& options=""); - - /** - * setDomain - Change the QMF domain that this console will operate in. If this is not called, - * the domain will be "default". Agents in a domain can be seen only by consoles in the same domain. - * This must be called prior to opening the console session. - */ - QMF_EXTERN void setDomain(const std::string& domain); - QMF_EXTERN void setAgentFilter(const std::string& filter); - - /** - * Open the console session. After opening the session, the domain cannot be changed. - */ - QMF_EXTERN void open(); - - /** - * Close the session. Once closed, the session no longer communicates on the messaging network. - */ - QMF_EXTERN void close(); - - /** - * Get the next event from the console session. Events represent actions that must be acted upon by the - * console application. This method blocks for up to the timeout if there are no events to be handled. - * This method will typically be the focus of the console application's main execution loop. - * If the timeout is set to Duration::IMMEDIATE, the call will not block. - */ - QMF_EXTERN bool nextEvent(ConsoleEvent& outEvent, qpid::messaging::Duration timeout=qpid::messaging::Duration::FOREVER); - - /** - * Return the number of events pending for nextEvent. This method will never block. - */ - QMF_EXTERN int pendingEvents() const; - - /** - * getAgentCount, getAgent - Retrieve the set of agents that match the console session's agent filter. - */ - QMF_EXTERN uint32_t getAgentCount() const; - QMF_EXTERN Agent getAgent(uint32_t agentIndex) const; - - /** - * Get the agent for the connected broker (i.e. the agent embedded in the broker to which we have a connection). - */ - QMF_EXTERN Agent getConnectedBrokerAgent() const; - - /** - * Create a subscription that involves a subset of the known agents. The set of known agents is defined by - * the session's agent-filter (see setAgentFilter). The agentFilter argument to the subscribe method is used - * to further refine the set of agents. If agentFilter is the empty string (i.e. match-all) the subscription - * will involve all known agents. If agentFilter is non-empty, it will be applied only to the set of known - * agents. A subscription cannot be created that involves an agent not known by the session. - */ - QMF_EXTERN Subscription subscribe(const Query& query, const std::string& agentFilter = "", const std::string& options = ""); - QMF_EXTERN Subscription subscribe(const std::string& query, const std::string& agentFilter = "", const std::string& options = ""); - -#ifndef SWIG - private: - friend class qmf::PrivateImplRef<ConsoleSession>; -#endif - }; - -} - -#endif |