summaryrefslogtreecommitdiff
path: root/qpid/cpp
diff options
context:
space:
mode:
authorGordon Sim <gsim@apache.org>2009-05-11 12:21:40 +0000
committerGordon Sim <gsim@apache.org>2009-05-11 12:21:40 +0000
commit7a7c2285bfea9adeb6f09c6edb24a3f9b5138d0d (patch)
tree1a046048a456f8725791c61d1d312eda18d10a0d /qpid/cpp
parenta36686f8e6185635247edf9ee83e8b65c7ae83b5 (diff)
downloadqpid-python-7a7c2285bfea9adeb6f09c6edb24a3f9b5138d0d.tar.gz
Added method to test validity of session object.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@773535 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp')
-rw-r--r--qpid/cpp/src/qpid/client/SessionBase_0_10.cpp2
-rw-r--r--qpid/cpp/src/qpid/client/SessionBase_0_10.h2
-rw-r--r--qpid/cpp/src/tests/ClientSessionTest.cpp7
3 files changed, 11 insertions, 0 deletions
diff --git a/qpid/cpp/src/qpid/client/SessionBase_0_10.cpp b/qpid/cpp/src/qpid/client/SessionBase_0_10.cpp
index 140d6f9a12..03c0468107 100644
--- a/qpid/cpp/src/qpid/client/SessionBase_0_10.cpp
+++ b/qpid/cpp/src/qpid/client/SessionBase_0_10.cpp
@@ -72,4 +72,6 @@ uint32_t SessionBase_0_10::timeout(uint32_t seconds) { return impl->setTimeout(s
SessionId SessionBase_0_10::getId() const { return impl->getId(); }
+bool SessionBase_0_10::isValid() const { return impl; }
+
}} // namespace qpid::client
diff --git a/qpid/cpp/src/qpid/client/SessionBase_0_10.h b/qpid/cpp/src/qpid/client/SessionBase_0_10.h
index 94686ff39f..8438977e45 100644
--- a/qpid/cpp/src/qpid/client/SessionBase_0_10.h
+++ b/qpid/cpp/src/qpid/client/SessionBase_0_10.h
@@ -97,6 +97,8 @@ class SessionBase_0_10 {
QPID_CLIENT_EXTERN void markCompleted(const framing::SequenceNumber& id, bool cumulative, bool notifyPeer);
QPID_CLIENT_EXTERN void sendCompletion();
+ QPID_CLIENT_EXTERN bool isValid() const;
+
protected:
boost::shared_ptr<SessionImpl> impl;
friend class SessionBase_0_10Access;
diff --git a/qpid/cpp/src/tests/ClientSessionTest.cpp b/qpid/cpp/src/tests/ClientSessionTest.cpp
index f732d61ce1..c82cb77e95 100644
--- a/qpid/cpp/src/tests/ClientSessionTest.cpp
+++ b/qpid/cpp/src/tests/ClientSessionTest.cpp
@@ -583,6 +583,13 @@ QPID_AUTO_TEST_CASE(testGetThenSubscribe) {
}
}
+QPID_AUTO_TEST_CASE(testSessionIsValid) {
+ ClientSessionFixture fix;
+ BOOST_CHECK(fix.session.isValid());
+ Session session;
+ BOOST_CHECK(!session.isValid());
+}
+
QPID_AUTO_TEST_SUITE_END()