You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ar...@apache.org on 2008/02/21 12:07:40 UTC

svn commit: r629747 - in /incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport: Header.java Session.java network/Assembler.java

Author: arnaudsimon
Date: Thu Feb 21 03:07:36 2008
New Revision: 629747

URL: http://svn.apache.org/viewvc?rev=629747&view=rev
Log:
added flag for tagging header without a payload

Modified:
    incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Header.java
    incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java
    incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/network/Assembler.java

Modified: incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Header.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Header.java?rev=629747&r1=629746&r2=629747&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Header.java (original)
+++ incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Header.java Thu Feb 21 03:07:36 2008
@@ -36,10 +36,12 @@
 
     private final List<Struct> structs;
     private ByteBuffer _buf;
+    private boolean _noPayload;
 
-    public Header(List<Struct> structs)
+    public Header(List<Struct> structs, boolean lastframe)
     {
         this.structs = structs;
+        _noPayload= lastframe;
     }
 
     public List<Struct> getStructs()
@@ -78,6 +80,12 @@
     {
         delegate.header(context, this);
     }
+
+    public boolean hasNoPayload()
+       {
+           return _noPayload;
+       }
+
 
     public String toString()
     {

Modified: incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java?rev=629747&r1=629746&r2=629747&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java (original)
+++ incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/Session.java Thu Feb 21 03:07:36 2008
@@ -237,7 +237,7 @@
 
     public Header header(List<Struct> structs)
     {
-        Header res = new Header(structs);
+        Header res = new Header(structs, false);
         header(res);
         return res;
     }

Modified: incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/network/Assembler.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/network/Assembler.java?rev=629747&r1=629746&r2=629747&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/network/Assembler.java (original)
+++ incubator/qpid/trunk/qpid/java/common/src/main/java/org/apache/qpidity/transport/network/Assembler.java Thu Feb 21 03:07:36 2008
@@ -154,11 +154,11 @@
         if (frame.isLastFrame())
         {
             clearSegment(frame);
-            emit(frame, decode(frame.getType(), segment));
+            emit(frame, decode(frame, frame.getType(), segment));
         }
     }
 
-    private ProtocolEvent decode(byte type, List<ByteBuffer> segment)
+    private ProtocolEvent decode(Frame frame, byte type, List<ByteBuffer> segment)
     {
         FragmentDecoder dec = new FragmentDecoder(segment.iterator());
 
@@ -175,7 +175,7 @@
             {
                 structs.add(dec.readLongStruct());
             }
-            return new Header(structs);
+            return new Header(structs,frame.isLastFrame() && frame.isLastSegment());
         default:
             throw new IllegalStateException("unknown frame type: " + type);
         }