summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
authorTed Ross <tross@apache.org>2010-02-12 18:23:47 +0000
committerTed Ross <tross@apache.org>2010-02-12 18:23:47 +0000
commitcccafbd87d6a4cf00b3511402075f7a597e3df9e (patch)
tree5a9f749dc740b343b0a834e209e77288d60251b4 /cpp/src
parente83c543e6356e37740edfaf447a427c1b88d81f6 (diff)
downloadqpid-python-cccafbd87d6a4cf00b3511402075f7a597e3df9e.tar.gz
QPID-2328 - Applied patch from Ian Main
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@909548 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qmf/engine/ResilientConnection.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/cpp/src/qmf/engine/ResilientConnection.cpp b/cpp/src/qmf/engine/ResilientConnection.cpp
index 9c19e4d460..ab65b8d768 100644
--- a/cpp/src/qmf/engine/ResilientConnection.cpp
+++ b/cpp/src/qmf/engine/ResilientConnection.cpp
@@ -96,6 +96,7 @@ namespace engine {
void bind(SessionHandle handle, char* exchange, char* queue, char* key);
void unbind(SessionHandle handle, char* exchange, char* queue, char* key);
void setNotifyFd(int fd);
+ void notify();
void run();
void failure();
@@ -329,6 +330,16 @@ void ResilientConnectionImpl::unbind(SessionHandle handle,
sess->session.exchangeUnbind(client::arg::exchange=exchange, client::arg::queue=queue, client::arg::bindingKey=key);
}
+void ResilientConnectionImpl::notify()
+{
+ if (notifyFd != -1)
+ {
+ int unused_ret; //Suppress warnings about ignoring return value.
+ unused_ret = ::write(notifyFd, ".", 1);
+ }
+}
+
+
void ResilientConnectionImpl::setNotifyFd(int fd)
{
notifyFd = fd;
@@ -496,3 +507,8 @@ void ResilientConnection::setNotifyFd(int fd)
impl->setNotifyFd(fd);
}
+void ResilientConnection::notify()
+{
+ impl->notify();
+}
+