summaryrefslogtreecommitdiff
path: root/cpp/include/qmf/ConsoleSession.h
diff options
context:
space:
mode:
authorRajith Muditha Attapattu <rajith@apache.org>2011-05-27 15:44:23 +0000
committerRajith Muditha Attapattu <rajith@apache.org>2011-05-27 15:44:23 +0000
commit66765100f4257159622cefe57bed50125a5ad017 (patch)
treea88ee23bb194eb91f0ebb2d9b23ff423e3ea8e37 /cpp/include/qmf/ConsoleSession.h
parent1aeaa7b16e5ce54f10c901d75c4d40f9f88b9db6 (diff)
parent88b98b2f4152ef59a671fad55a0d08338b6b78ca (diff)
downloadqpid-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.h127
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