Author: gsim
Date: Tue Apr 22 13:31:00 2008
New Revision: 650640

URL: http://svn.apache.org/viewvc?rev=650640&view=rev
Log:
QPID-920: allow applications to trigger the sending of a flush to server


Modified:
    incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.h
    incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.h

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.cpp?rev=650640&r1=650639&r2=650640&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.cpp Tue Apr 22 
13:31:00 2008
@@ -43,6 +43,11 @@
     return *impl;
 }
 
+void SessionBase::flush()
+{
+    impl->sendFlush();
+}
+
 void SessionBase::sync()
 {
     ExecutionSyncBody b;

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.h?rev=650640&r1=650639&r2=650640&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionBase.h Tue Apr 22 
13:31:00 2008
@@ -131,6 +131,7 @@
     
     Execution& getExecution();
     void sync();
+    void flush();
     void markCompleted(const framing::SequenceNumber& id, bool cumulative, 
bool notifyPeer);
     void sendCompletion();
     

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp?rev=650640&r1=650639&r2=650640&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.cpp Tue Apr 22 
13:31:00 2008
@@ -525,6 +525,12 @@
     sendCompletionImpl();
 }
 
+void SessionImpl::sendFlush()
+{
+    Lock l(state);
+    proxy.flush(false, false, true);
+}
+
 void SessionImpl::sendCompletionImpl()
 {
     proxy.completed(completedIn, true);

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.h
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.h?rev=650640&r1=650639&r2=650640&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionImpl.h Tue Apr 22 
13:31:00 2008
@@ -88,6 +88,7 @@
     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);


Reply via email to