You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gs...@apache.org on 2007/11/28 14:28:22 UTC

svn commit: r598992 - in /incubator/qpid/trunk/qpid/cpp/src: qpid/broker/SessionState.cpp qpid/client/SessionCore.cpp qpid/framing/SessionState.cpp qpid/framing/SessionState.h tests/ClientSessionTest.cpp

Author: gsim
Date: Wed Nov 28 05:28:21 2007
New Revision: 598992

URL: http://svn.apache.org/viewvc?rev=598992&view=rev
Log:
Disable recoding of frames for replay where replay will not be required.


Modified:
    incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionCore.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.cpp
    incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.h
    incubator/qpid/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp?rev=598992&r1=598991&r2=598992&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/broker/SessionState.cpp Wed Nov 28 05:28:21 2007
@@ -40,7 +40,7 @@
 
 SessionState::SessionState(
     SessionManager& f, SessionHandler& h, uint32_t timeout_, uint32_t ack) 
-    : framing::SessionState(ack),
+    : framing::SessionState(ack, timeout_ > 0),
       factory(f), handler(&h), id(true), timeout(timeout_),
       broker(h.getConnection().broker),
       version(h.getConnection().getVersion()),

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionCore.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionCore.cpp?rev=598992&r1=598991&r2=598992&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionCore.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/client/SessionCore.cpp Wed Nov 28 05:28:21 2007
@@ -246,7 +246,7 @@
     if (state==OPENING) {        // New session
         // FIXME aconway 2007-10-17: arbitrary ack value of 100 for
         // client, allow configuration.
-        session=in_place<SessionState>(100, sessionId);
+        session=in_place<SessionState>(100, detachedLifetime > 0, sessionId);
         setState(OPEN);
     }
     else {                      // RESUMING

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.cpp?rev=598992&r1=598991&r2=598992&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.cpp Wed Nov 28 05:28:21 2007
@@ -32,7 +32,7 @@
 namespace qpid {
 namespace framing {
 
-SessionState::SessionState(uint32_t ack,  const Uuid& uuid) :
+SessionState::SessionState(uint32_t ack,  bool enableReplay, const Uuid& uuid) :
     state(ATTACHED),
     id(uuid),
     lastReceived(-1),
@@ -41,7 +41,7 @@
     sendAckAt(lastReceived+ackInterval),
     solicitAckAt(lastSent+ackInterval),
     ackSolicited(false),
-    resumable(true)
+    resumable(enableReplay)
 {}
 
 SessionState::SessionState(const Uuid& uuid) :

Modified: incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.h
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.h?rev=598992&r1=598991&r2=598992&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.h (original)
+++ incubator/qpid/trunk/qpid/cpp/src/qpid/framing/SessionState.h Wed Nov 28 05:28:21 2007
@@ -61,7 +61,7 @@
      * 
      * N=0 disables voluntary send/solict ack.
      */
-    SessionState(uint32_t ackInterval, const framing::Uuid& id=framing::Uuid(true));
+    SessionState(uint32_t ackInterval, bool enableReplay = true, const framing::Uuid& id=framing::Uuid(true));
 
     /**
      * Create a non-resumable session. Does not store session frames,

Modified: incubator/qpid/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp?rev=598992&r1=598991&r2=598992&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp (original)
+++ incubator/qpid/trunk/qpid/cpp/src/tests/ClientSessionTest.cpp Wed Nov 28 05:28:21 2007
@@ -166,7 +166,7 @@
         try {
             c->resume(session);
             CPPUNIT_FAIL("Expected InvalidArgumentException.");
-        } catch(const InvalidArgumentException&) {}
+        } catch(const InternalErrorException&) {}
     }
 
     void testUseSuspendedError() {