summaryrefslogtreecommitdiff
path: root/cpp/src
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src')
-rw-r--r--cpp/src/qpid/client/SessionBase.cpp5
-rw-r--r--cpp/src/qpid/client/SessionBase.h1
-rw-r--r--cpp/src/qpid/client/SessionImpl.cpp6
-rw-r--r--cpp/src/qpid/client/SessionImpl.h1
4 files changed, 13 insertions, 0 deletions
diff --git a/cpp/src/qpid/client/SessionBase.cpp b/cpp/src/qpid/client/SessionBase.cpp
index 4a202842a5..5b9ff595ed 100644
--- a/cpp/src/qpid/client/SessionBase.cpp
+++ b/cpp/src/qpid/client/SessionBase.cpp
@@ -43,6 +43,11 @@ Execution& SessionBase::getExecution()
return *impl;
}
+void SessionBase::flush()
+{
+ impl->sendFlush();
+}
+
void SessionBase::sync()
{
ExecutionSyncBody b;
diff --git a/cpp/src/qpid/client/SessionBase.h b/cpp/src/qpid/client/SessionBase.h
index 29a266f4ca..61997244d2 100644
--- a/cpp/src/qpid/client/SessionBase.h
+++ b/cpp/src/qpid/client/SessionBase.h
@@ -131,6 +131,7 @@ class SessionBase
Execution& getExecution();
void sync();
+ void flush();
void markCompleted(const framing::SequenceNumber& id, bool cumulative, bool notifyPeer);
void sendCompletion();
diff --git a/cpp/src/qpid/client/SessionImpl.cpp b/cpp/src/qpid/client/SessionImpl.cpp
index 190141c411..4f3869319c 100644
--- a/cpp/src/qpid/client/SessionImpl.cpp
+++ b/cpp/src/qpid/client/SessionImpl.cpp
@@ -525,6 +525,12 @@ void SessionImpl::sendCompletion()
sendCompletionImpl();
}
+void SessionImpl::sendFlush()
+{
+ Lock l(state);
+ proxy.flush(false, false, true);
+}
+
void SessionImpl::sendCompletionImpl()
{
proxy.completed(completedIn, true);
diff --git a/cpp/src/qpid/client/SessionImpl.h b/cpp/src/qpid/client/SessionImpl.h
index eb1c0acb97..86820dbb92 100644
--- a/cpp/src/qpid/client/SessionImpl.h
+++ b/cpp/src/qpid/client/SessionImpl.h
@@ -88,6 +88,7 @@ public:
bool isCompleteUpTo(const framing::SequenceNumber& id);
void waitForCompletion(const framing::SequenceNumber& id);
void sendCompletion();
+ void sendFlush();
//NOTE: these are called by the network thread when the connection is closed or dies
void connectionClosed(uint16_t code, const std::string& text);