You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2012/03/01 16:42:53 UTC

svn commit: r1295627 [11/12] - in /qpid/branches/rg-amqp-1-0-sandbox/qpid/java: ./ bdbstore/ bdbstore/src/main/ bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/ bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/tuples/ bdbst...

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/framing/VersionSpecificRegistry.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/framing/VersionSpecificRegistry.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/framing/VersionSpecificRegistry.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/framing/VersionSpecificRegistry.java Thu Mar  1 15:42:44 2012
@@ -23,6 +23,7 @@ package org.apache.qpid.framing;
 import java.io.DataInputStream;
 import java.io.IOException;
 
+import org.apache.qpid.codec.MarkableDataInput;
 import org.apache.qpid.framing.abstraction.ProtocolVersionMethodConverter;
 
 import org.slf4j.Logger;
@@ -145,7 +146,7 @@ public class VersionSpecificRegistry
 
     }
 
-    public AMQMethodBody get(short classID, short methodID, DataInputStream in, long size) throws AMQFrameDecodingException, IOException
+    public AMQMethodBody get(short classID, short methodID, MarkableDataInput in, long size) throws AMQFrameDecodingException, IOException
     {
         AMQMethodBodyInstanceFactory bodyFactory;
         try

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/pool/ReferenceCountingExecutorService.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/pool/ReferenceCountingExecutorService.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/pool/ReferenceCountingExecutorService.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/pool/ReferenceCountingExecutorService.java Thu Mar  1 15:42:44 2012
@@ -96,8 +96,6 @@ public class ReferenceCountingExecutorSe
      */
     private ThreadFactory _threadFactory = Executors.defaultThreadFactory();
 
-    private final boolean _useBiasedPool = Boolean.getBoolean("org.apache.qpid.use_write_biased_pool");
-
     /**
      * Retrieves the singleton instance of this reference counter.
      *
@@ -125,26 +123,12 @@ public class ReferenceCountingExecutorSe
         {
             if (_refCount++ == 0)
             {
-                // Use a job queue that biases to writes
-                if(_useBiasedPool)
-                {
-                    _pool =  new ThreadPoolExecutor(_poolSize, _poolSize,
-                                          0L, TimeUnit.MILLISECONDS,
-                                          new ReadWriteJobQueue(),
-                                          _threadFactory);
-
-                }
-                else
-                {
-                    _pool = new ThreadPoolExecutor(_poolSize, _poolSize,
-                            0L, TimeUnit.MILLISECONDS,
-                            new LinkedBlockingQueue<Runnable>(),
-                            _threadFactory);
-                }
-
+                _pool = new ThreadPoolExecutor(_poolSize, _poolSize,
+                        0L, TimeUnit.MILLISECONDS,
+                        new LinkedBlockingQueue<Runnable>(),
+                        _threadFactory);
             }
 
-
             return _pool;
         }
     }

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java Thu Mar  1 15:42:44 2012
@@ -383,13 +383,19 @@ public class Connection extends Connecti
 
     public void received(ProtocolEvent event)
     {
-        log.debug("RECV: [%s] %s", this, event);
+        if(log.isDebugEnabled())
+        {
+            log.debug("RECV: [%s] %s", this, event);
+        }
         event.delegate(this, delegate);
     }
 
     public void send(ProtocolEvent event)
     {
-        log.debug("SEND: [%s] %s", this, event);
+        if(log.isDebugEnabled())
+        {
+            log.debug("SEND: [%s] %s", this, event);
+        }
         Sender s = sender;
         if (s == null)
         {
@@ -400,8 +406,15 @@ public class Connection extends Connecti
 
     public void flush()
     {
-        log.debug("FLUSH: [%s]", this);
-        sender.flush();
+        if(log.isDebugEnabled())
+        {
+            log.debug("FLUSH: [%s]", this);
+        }
+        final Sender<ProtocolEvent> theSender = sender;
+        if(theSender != null)
+        {
+            theSender.flush();
+        }
     }
 
     protected void invoke(Method method)

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Header.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Header.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Header.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Header.java Thu Mar  1 15:42:44 2012
@@ -20,13 +20,7 @@
  */
 package org.apache.qpid.transport;
 
-import org.apache.qpid.transport.network.Frame;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-import java.util.LinkedHashMap;
-import java.nio.ByteBuffer;
+import java.util.*;
 
 
 /**
@@ -35,45 +29,87 @@ import java.nio.ByteBuffer;
  * @author Rafael H. Schloming
  */
 
-public class Header {
+public class Header
+{
 
-    private final Struct[] structs;
+    private final DeliveryProperties _deliveryProps;
+    private final MessageProperties _messageProps;
+    private final List<Struct> _nonStandardProps;
 
-    public Header(List<Struct> structs)
+    public Header(DeliveryProperties deliveryProps, MessageProperties messageProps)
     {
-        this(structs.toArray(new Struct[structs.size()]));
+        this(deliveryProps, messageProps, null);
     }
 
-    public Header(Struct ... structs)
+    public Header(DeliveryProperties deliveryProps, MessageProperties messageProps, List<Struct> nonStandardProps)
     {
-        this.structs = structs;
+        _deliveryProps = deliveryProps;
+        _messageProps = messageProps;
+        _nonStandardProps = nonStandardProps;
     }
 
     public Struct[] getStructs()
     {
+        int size = 0;
+        if(_deliveryProps != null)
+        {
+            size++;
+        }
+        if(_messageProps != null)
+        {
+            size++;
+        }
+        if(_nonStandardProps != null)
+        {
+            size+=_nonStandardProps.size();
+        }
+        Struct[] structs = new Struct[size];
+        int index = 0;
+        if(_deliveryProps != null)
+        {
+            structs[index++] = _deliveryProps;
+        }
+        if(_messageProps != null)
+        {
+            structs[index++] = _messageProps;
+        }
+        if(_nonStandardProps != null)
+        {
+            for(Struct struct : _nonStandardProps)
+            {
+                structs[index++] = struct;
+            }
+        }
+
         return structs;
     }
 
+    public DeliveryProperties getDeliveryProperties()
+    {
+        return _deliveryProps;
+    }
 
-    public <T> T get(Class<T> klass)
+    public MessageProperties getMessageProperties()
     {
-        for (Struct st : structs)
-        {
-            if (klass.isInstance(st))
-            {
-                return (T) st;
-            }
-        }
+        return _messageProps;
+    }
 
-        return null;
+    public List<Struct> getNonStandardProperties()
+    {
+        return _nonStandardProps;
     }
 
     public String toString()
     {
-        StringBuffer str = new StringBuffer();
+        StringBuilder str = new StringBuilder();
         str.append(" Header(");
         boolean first = true;
-        for (Struct s : structs)
+        if(_deliveryProps !=null)
+        {
+            first=false;
+            str.append(_deliveryProps);
+        }
+        if(_messageProps != null)
         {
             if (first)
             {
@@ -83,9 +119,24 @@ public class Header {
             {
                 str.append(", ");
             }
-            str.append(s);
+            str.append(_messageProps);
+        }
+        if(_nonStandardProps != null)
+        {
+            for (Struct s : _nonStandardProps)
+            {
+                if (first)
+                {
+                    first = false;
+                }
+                else
+                {
+                    str.append(", ");
+                }
+                str.append(s);
+            }
         }
-        str.append(")");
+        str.append(')');
         return str.toString();
     }
 

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Range.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Range.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Range.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Range.java Thu Mar  1 15:42:44 2012
@@ -21,6 +21,8 @@
 package org.apache.qpid.transport;
 
 import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Iterator;
 import java.util.List;
 
 import static org.apache.qpid.util.Serial.*;
@@ -32,94 +34,265 @@ import static org.apache.qpid.util.Seria
  * @author Rafael H. Schloming
  */
 
-public final class Range
+public abstract class Range implements RangeSet
 {
-    private final int lower;
-    private final int upper;
+    public static Range newInstance(int point)
+    {
+        return new PointImpl(point);
+    }
+
+    public static Range newInstance(int lower, int upper)
+    {
+        return lower == upper ? new PointImpl(lower) : new RangeImpl(lower, upper);
+    }
+
+    public abstract int getLower();
+
+    public abstract int getUpper();
+
+    public abstract boolean includes(int value);
+
+    public abstract boolean includes(Range range);
+
+    public abstract boolean intersects(Range range);
+
+    public abstract boolean touches(Range range);
+
+    public abstract Range span(Range range);
+
+    public abstract List<Range> subtract(Range range);
+
+
+    public Range intersect(Range range)
+    {
+        int l = max(getLower(), range.getLower());
+        int r = min(getUpper(), range.getUpper());
+        if (gt(l, r))
+        {
+            return null;
+        }
+        else
+        {
+            return newInstance(l, r);
+        }
+    }
 
-    public Range(int lower, int upper)
+
+
+    public int size()
     {
-        this.lower = lower;
-        this.upper = upper;
+        return 1;
     }
 
-    public int getLower()
+    public Iterator<Range> iterator()
     {
-        return lower;
+        return new RangeIterator();
     }
 
-    public int getUpper()
+    public Range getFirst()
     {
-        return upper;
+        return this;
     }
 
-    public boolean includes(int value)
+    public Range getLast()
     {
-        return le(lower, value) && le(value, upper);
+        return this;
     }
 
-    public boolean includes(Range range)
+    public void add(Range range)
     {
-        return includes(range.lower) && includes(range.upper);
+        throw new UnsupportedOperationException();
     }
 
-    public boolean intersects(Range range)
+    public void add(int lower, int upper)
     {
-        return (includes(range.lower) || includes(range.upper) ||
-                range.includes(lower) || range.includes(upper));
+        throw new UnsupportedOperationException();
     }
 
-    public boolean touches(Range range)
+    public void add(int value)
     {
-        return (intersects(range) ||
-                includes(range.upper + 1) || includes(range.lower - 1) ||
-                range.includes(upper + 1) || range.includes(lower - 1));
+        throw new UnsupportedOperationException();
     }
 
-    public Range span(Range range)
+    public void clear()
     {
-        return new Range(min(lower, range.lower), max(upper, range.upper));
+        throw new UnsupportedOperationException();
     }
 
-    public List<Range> subtract(Range range)
+    public RangeSet copy()
     {
-        List<Range> result = new ArrayList<Range>();
+        RangeSet rangeSet = RangeSetFactory.createRangeSet();
+        rangeSet.add(this);
+        return rangeSet;
+    }
 
-        if (includes(range.lower) && le(lower, range.lower - 1))
+    private static class PointImpl extends Range
+    {
+        private final int point;
+
+        private PointImpl(int point)
         {
-            result.add(new Range(lower, range.lower - 1));
+            this.point = point;
         }
 
-        if (includes(range.upper) && le(range.upper + 1, upper))
+        public int getLower()
         {
-            result.add(new Range(range.upper + 1, upper));
+            return point;
         }
 
-        if (result.isEmpty() && !range.includes(this))
+        public int getUpper()
         {
-            result.add(this);
+            return point;
         }
 
-        return result;
+        public boolean includes(int value)
+        {
+            return value == point;
+        }
+
+
+        public boolean includes(Range range)
+        {
+            return range.getLower() == point && range.getUpper() == point;
+        }
+
+        public boolean intersects(Range range)
+        {
+            return range.includes(point);
+        }
+
+        public boolean touches(Range range)
+        {
+            return intersects(range) ||
+                    includes(range.getUpper() + 1) || includes(range.getLower() - 1) ||
+                    range.includes(point + 1) || range.includes(point - 1);
+        }
+
+        public Range span(Range range)
+        {
+            return newInstance(min(point, range.getLower()), max(point, range.getUpper()));
+        }
+
+        public List<Range> subtract(Range range)
+        {
+            if(range.includes(point))
+            {
+                return Collections.emptyList();
+            }
+            else
+            {
+                return Collections.singletonList((Range) this);
+            }
+        }
+
+        public String toString()
+        {
+            return "[" + point + ", " + point + "]";
+        }
+
+
     }
 
-    public Range intersect(Range range)
+    private static class RangeImpl extends Range
     {
-        int l = max(lower, range.lower);
-        int r = min(upper, range.upper);
-        if (gt(l, r))
+        private final int lower;
+        private final int upper;
+
+        private RangeImpl(int lower, int upper)
         {
-            return null;
+            this.lower = lower;
+            this.upper = upper;
         }
-        else
+
+        public int getLower()
+        {
+            return lower;
+        }
+
+        public int getUpper()
         {
-            return new Range(l, r);
+            return upper;
+        }
+
+        public boolean includes(int value)
+        {
+            return le(lower, value) && le(value, upper);
+        }
+
+        public boolean includes(Range range)
+        {
+            return includes(range.getLower()) && includes(range.getUpper());
+        }
+
+        public boolean intersects(Range range)
+        {
+            return (includes(range.getLower()) || includes(range.getUpper()) ||
+                    range.includes(lower) || range.includes(upper));
+        }
+
+        public boolean touches(Range range)
+        {
+            return (intersects(range) ||
+                    includes(range.getUpper() + 1) || includes(range.getLower() - 1) ||
+                    range.includes(upper + 1) || range.includes(lower - 1));
+        }
+
+        public Range span(Range range)
+        {
+            return newInstance(min(lower, range.getLower()), max(upper, range.getUpper()));
+        }
+
+        public List<Range> subtract(Range range)
+        {
+            List<Range> result = new ArrayList<Range>();
+
+            if (includes(range.getLower()) && le(lower, range.getLower() - 1))
+            {
+                result.add(newInstance(lower, range.getLower() - 1));
+            }
+
+            if (includes(range.getUpper()) && le(range.getUpper() + 1, upper))
+            {
+                result.add(newInstance(range.getUpper() + 1, upper));
+            }
+
+            if (result.isEmpty() && !range.includes(this))
+            {
+                result.add(this);
+            }
+
+            return result;
+        }
+
+
+        public String toString()
+        {
+            return "[" + lower + ", " + upper + "]";
         }
     }
 
-    public String toString()
+
+    private class RangeIterator implements Iterator<Range>
     {
-        return "[" + lower + ", " + upper + "]";
-    }
+        private boolean atFirst = true;
+
+        public boolean hasNext()
+        {
+            return atFirst;
+        }
+
+        public Range next()
+        {
 
+            Range range = atFirst ? Range.this : null;
+            atFirst = false;
+            return range;
+        }
+
+
+        public void remove()
+        {
+            throw new UnsupportedOperationException();
+        }
+    }
 }

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/RangeSet.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/RangeSet.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/RangeSet.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/RangeSet.java Thu Mar  1 15:42:44 2012
@@ -20,9 +20,7 @@
  */
 package org.apache.qpid.transport;
 
-import java.util.Iterator;
-import java.util.ListIterator;
-import java.util.LinkedList;
+import java.util.*;
 
 import static org.apache.qpid.util.Serial.*;
 
@@ -32,121 +30,29 @@ import static org.apache.qpid.util.Seria
  * @author Rafael H. Schloming
  */
 
-public final class RangeSet implements Iterable<Range>
+public interface RangeSet extends Iterable<Range>
 {
 
-    private LinkedList<Range> ranges = new LinkedList<Range>();
+    int size();
 
-    public int size()
-    {
-        return ranges.size();
-    }
-
-    public Iterator<Range> iterator()
-    {
-        return ranges.iterator();
-    }
-
-    public Range getFirst()
-    {
-        return ranges.getFirst();
-    }
-
-    public Range getLast()
-    {
-        return ranges.getLast();
-    }
-
-    public boolean includes(Range range)
-    {
-        for (Range r : this)
-        {
-            if (r.includes(range))
-            {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    public boolean includes(int n)
-    {
-        for (Range r : this)
-        {
-            if (r.includes(n))
-            {
-                return true;
-            }
-        }
-
-        return false;
-    }
-
-    public void add(Range range)
-    {
-        ListIterator<Range> it = ranges.listIterator();
-
-        while (it.hasNext())
-        {
-            Range next = it.next();
-            if (range.touches(next))
-            {
-                it.remove();
-                range = range.span(next);
-            }
-            else if (lt(range.getUpper(), next.getLower()))
-            {
-                it.previous();
-                it.add(range);
-                return;
-            }
-        }
-
-        it.add(range);
-    }
-
-    public void add(int lower, int upper)
-    {
-        add(new Range(lower, upper));
-    }
-
-    public void add(int value)
-    {
-        add(value, value);
-    }
-
-    public void clear()
-    {
-        ranges.clear();
-    }
-
-    public RangeSet copy()
-    {
-        RangeSet copy = new RangeSet();
-        copy.ranges.addAll(ranges);
-        return copy;
-    }
-
-    public String toString()
-    {
-        StringBuffer str = new StringBuffer();
-        str.append("{");
-        boolean first = true;
-        for (Range range : ranges)
-        {
-            if (first)
-            {
-                first = false;
-            }
-            else
-            {
-                str.append(", ");
-            }
-            str.append(range);
-        }
-        str.append("}");
-        return str.toString();
-    }
+    Iterator<Range> iterator();
+
+    Range getFirst();
+
+    Range getLast();
+
+    boolean includes(Range range);
+
+    boolean includes(int n);
+
+    void add(Range range);
+
+    void add(int lower, int upper);
+
+    void add(int value);
+
+    void clear();
+
+    RangeSet copy();
 
 }

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/Session.java Thu Mar  1 15:42:44 2012
@@ -44,6 +44,7 @@ import static org.apache.qpid.util.Seria
 import static org.apache.qpid.util.Strings.toUTF8;
 
 import java.nio.ByteBuffer;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
@@ -61,7 +62,7 @@ import java.util.concurrent.atomic.Atomi
 public class Session extends SessionInvoker
 {
     private static final Logger log = Logger.get(Session.class);
-
+    
     public enum State { NEW, DETACHED, RESUMING, OPEN, CLOSING, CLOSED }
 
     static class DefaultSessionListener implements SessionListener
@@ -96,6 +97,9 @@ public class Session extends SessionInvo
     private final long timeout = Long.getLong(ClientProperties.QPID_SYNC_OP_TIMEOUT,
                                         Long.getLong(ClientProperties.AMQJ_DEFAULT_SYNCWRITE_TIMEOUT,
                                                      ClientProperties.DEFAULT_SYNC_OPERATION_TIMEOUT));
+    private final long blockedSendTimeout = Long.getLong("qpid.flow_control_wait_failure", timeout);
+    private long blockedSendReportingPeriod = Long.getLong("qpid.flow_control_wait_notify_period",5000L);
+
     private boolean autoSync = false;
 
     private boolean incomingInit;
@@ -228,10 +232,21 @@ public class Session extends SessionInvo
         {
             try
             {
-                if (!credit.tryAcquire(timeout, TimeUnit.MILLISECONDS))
+                long wait = blockedSendTimeout > blockedSendReportingPeriod ? blockedSendReportingPeriod :
+                           blockedSendTimeout;
+                long totalWait = 1L;
+                while(totalWait <= blockedSendTimeout && !credit.tryAcquire(wait, TimeUnit.MILLISECONDS))
                 {
+                    totalWait+=wait;
+                    log.warn("Message send delayed by " + (totalWait)/1000 + "s due to broker enforced flow control");
+
+
+                }
+                if(totalWait > blockedSendTimeout)
+                {
+                    log.error("Message send failed due to timeout waiting on broker enforced flow control");
                     throw new SessionException
-                        ("timed out waiting for message credit");
+                            ("timed out waiting for message credit");
                 }
             }
             catch (InterruptedException e)
@@ -247,7 +262,7 @@ public class Session extends SessionInvo
         synchronized (processedLock)
         {
             incomingInit = false;
-            processed = new RangeSet();
+            processed = RangeSetFactory.createRangeSet();
         }
     }
 
@@ -276,22 +291,22 @@ public class Session extends SessionInvo
                 else if (m instanceof MessageTransfer)
                 {
                 	MessageTransfer xfr = (MessageTransfer)m;
-                	
-                	if (xfr.getHeader() != null)
+
+                    Header header = xfr.getHeader();
+
+                    if (header != null)
                 	{
-                		if (xfr.getHeader().get(DeliveryProperties.class) != null)
+                		if (header.getDeliveryProperties() != null)
                 		{
-                		   xfr.getHeader().get(DeliveryProperties.class).setRedelivered(true);
+                		   header.getDeliveryProperties().setRedelivered(true);
                 		}
                 		else
                 		{
-                			Struct[] structs = xfr.getHeader().getStructs();
                 			DeliveryProperties deliveryProps = new DeliveryProperties();
                     		deliveryProps.setRedelivered(true);
-                    		
-                    		List<Struct> list = Arrays.asList(structs);
-                    		list.add(deliveryProps);
-                    		xfr.setHeader(new Header(list));
+
+                    		xfr.setHeader(new Header(deliveryProps, header.getMessageProperties(),
+                                                     header.getNonStandardProperties()));
                 		}
                 		
                 	}
@@ -299,7 +314,7 @@ public class Session extends SessionInvo
                 	{
                 		DeliveryProperties deliveryProps = new DeliveryProperties();
                 		deliveryProps.setRedelivered(true);
-                		xfr.setHeader(new Header(deliveryProps));
+                		xfr.setHeader(new Header(deliveryProps, null, null));
                 	}
                 }
                 sessionCommandPoint(m.getId(), 0);
@@ -394,38 +409,46 @@ public class Session extends SessionInvo
 
     public void processed(int command)
     {
-        processed(new Range(command, command));
+        processed(command, command);
     }
 
-    public void processed(int lower, int upper)
+    public void processed(Range range)
     {
 
-        processed(new Range(lower, upper));
+        processed(range.getLower(), range.getUpper());
     }
 
-    public void processed(Range range)
+    public void processed(int lower, int upper)
     {
-        log.debug("%s processed(%s) %s %s", this, range, syncPoint, maxProcessed);
+        if(log.isDebugEnabled())
+        {
+            log.debug("%s processed([%d,%d]) %s %s", this, lower, upper, syncPoint, maxProcessed);
+        }
 
         boolean flush;
         synchronized (processedLock)
         {
-            log.debug("%s", processed);
+            if(log.isDebugEnabled())
+            {
+                log.debug("%s", processed);
+            }
 
-            if (ge(range.getUpper(), commandsIn))
+            if (ge(upper, commandsIn))
             {
                 throw new IllegalArgumentException
-                    ("range exceeds max received command-id: " + range);
+                    ("range exceeds max received command-id: " + Range.newInstance(lower, upper));
             }
 
-            processed.add(range);
+            processed.add(lower, upper);
+
             Range first = processed.getFirst();
-            int lower = first.getLower();
-            int upper = first.getUpper();
+
+            int flower = first.getLower();
+            int fupper = first.getUpper();
             int old = maxProcessed;
-            if (le(lower, maxProcessed + 1))
+            if (le(flower, maxProcessed + 1))
             {
-                maxProcessed = max(maxProcessed, upper);
+                maxProcessed = max(maxProcessed, fupper);
             }
             boolean synced = ge(maxProcessed, syncPoint);
             flush = lt(old, syncPoint) && synced;
@@ -442,7 +465,7 @@ public class Session extends SessionInvo
 
     void flushExpected()
     {
-        RangeSet rs = new RangeSet();
+        RangeSet rs = RangeSetFactory.createRangeSet();
         synchronized (processedLock)
         {
             if (incomingInit)
@@ -478,7 +501,7 @@ public class Session extends SessionInvo
     {
         synchronized (processedLock)
         {
-            RangeSet newProcessed = new RangeSet();
+            RangeSet newProcessed = RangeSetFactory.createRangeSet();
             for (Range pr : processed)
             {
                 for (Range kr : kc)
@@ -534,7 +557,12 @@ public class Session extends SessionInvo
             {
                 maxComplete = max(maxComplete, upper);
             }
-            log.debug("%s   commands remaining: %s", this, commandsOut - maxComplete);
+
+            if(log.isDebugEnabled())
+            {
+                log.debug("%s   commands remaining: %s", this, commandsOut - maxComplete);
+            }
+
             commands.notifyAll();
             return gt(maxComplete, old);
         }
@@ -801,8 +829,17 @@ public class Session extends SessionInvo
             Waiter w = new Waiter(commands, timeout);
             while (w.hasTime() && state != CLOSED && lt(maxComplete, point))
             {
-                checkFailoverRequired("Session sync was interrupted by failover.");
-                log.debug("%s   waiting for[%d]: %d, %s", this, point, maxComplete, commands);
+                checkFailoverRequired("Session sync was interrupted by failover.");                               
+                if(log.isDebugEnabled())
+                {
+                    List<Method> waitingFor =
+                            Arrays.asList(commands)
+                                  .subList(mod(maxComplete,commands.length),
+                                           mod(commandsOut-1, commands.length) < mod(maxComplete, commands.length)
+                                             ? commands.length-1
+                                             : mod(commandsOut-1, commands.length));
+                    log.debug("%s   waiting for[%d]: %d, %s", this, point, maxComplete, waitingFor);
+                }
                 w.await();
             }
 

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/SessionDelegate.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/SessionDelegate.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/SessionDelegate.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/SessionDelegate.java Thu Mar  1 15:42:44 2012
@@ -91,21 +91,38 @@ public class SessionDelegate
     {
         RangeSet ranges = cmp.getCommands();
         RangeSet known = null;
-        if (cmp.getTimelyReply())
-        {
-            known = new RangeSet();
-        }
 
         if (ranges != null)
         {
-            for (Range range : ranges)
+            if(ranges.size() == 1)
             {
+                Range range = ranges.getFirst();
                 boolean advanced = ssn.complete(range.getLower(), range.getUpper());
-                if (advanced && known != null)
+
+                if(advanced && cmp.getTimelyReply())
                 {
-                    known.add(range);
+                    known = range;
                 }
             }
+            else
+            {
+                if (cmp.getTimelyReply())
+                {
+                    known = RangeSetFactory.createRangeSet();
+                }
+                for (Range range : ranges)
+                {
+                    boolean advanced = ssn.complete(range.getLower(), range.getUpper());
+                    if (advanced && known != null)
+                    {
+                        known.add(range);
+                    }
+                }
+            }
+        }
+        else if (cmp.getTimelyReply())
+        {
+            known = RangeSetFactory.createRangeSet();
         }
 
         if (known != null)

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/AbstractDecoder.java Thu Mar  1 15:42:44 2012
@@ -29,12 +29,7 @@ import java.util.List;
 import java.util.Map;
 import java.util.UUID;
 
-import org.apache.qpid.transport.Binary;
-import org.apache.qpid.transport.RangeSet;
-import org.apache.qpid.transport.Struct;
-import org.apache.qpid.transport.Type;
-
-import static org.apache.qpid.transport.util.Functions.*;
+import org.apache.qpid.transport.*;
 
 
 /**
@@ -194,18 +189,19 @@ abstract class AbstractDecoder implement
     public RangeSet readSequenceSet()
     {
         int count = readUint16()/8;
-        if (count == 0)
+        switch(count)
         {
-            return null;
-        }
-        else
-        {
-            RangeSet ranges = new RangeSet();
-            for (int i = 0; i < count; i++)
-            {
-                ranges.add(readSequenceNo(), readSequenceNo());
-            }
-            return ranges;
+            case 0:
+                return null;
+            case 1:
+                return Range.newInstance(readSequenceNo(), readSequenceNo());
+            default:
+                RangeSet ranges = RangeSetFactory.createRangeSet(count);
+                for (int i = 0; i < count; i++)
+                {
+                    ranges.add(readSequenceNo(), readSequenceNo());
+                }
+                return ranges;
         }
     }
 

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java Thu Mar  1 15:42:44 2012
@@ -70,6 +70,16 @@ public final class BBEncoder extends Abs
         return slice;
     }
 
+    public int position()
+    {
+        return out.position();
+    }
+
+    public ByteBuffer underlyingBuffer()
+    {
+        return out;
+    }
+
     private void grow(int size)
     {
         ByteBuffer old = out;

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Assembler.java Thu Mar  1 15:42:44 2012
@@ -26,13 +26,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
-import org.apache.qpid.transport.Header;
-import org.apache.qpid.transport.Method;
-import org.apache.qpid.transport.ProtocolError;
-import org.apache.qpid.transport.ProtocolEvent;
-import org.apache.qpid.transport.ProtocolHeader;
-import org.apache.qpid.transport.Receiver;
-import org.apache.qpid.transport.Struct;
+import org.apache.qpid.transport.*;
 import org.apache.qpid.transport.codec.BBDecoder;
 
 /**
@@ -198,12 +192,33 @@ public class Assembler implements Receiv
             break;
         case HEADER:
             command = getIncompleteCommand(channel);
-            List<Struct> structs = new ArrayList<Struct>(2);
+            List<Struct> structs = null;
+            DeliveryProperties deliveryProps = null;
+            MessageProperties messageProps = null;
+
             while (dec.hasRemaining())
             {
-                structs.add(dec.readStruct32());
+                Struct struct = dec.readStruct32();
+                if(struct instanceof  DeliveryProperties && deliveryProps == null)
+                {
+                    deliveryProps = (DeliveryProperties) struct;
+                }
+                else if(struct instanceof MessageProperties && messageProps == null)
+                {
+                    messageProps = (MessageProperties) struct;
+                }
+                else
+                {
+                    if(structs == null)
+                    {
+                        structs = new ArrayList<Struct>(2);
+                    }
+                    structs.add(struct);
+                }
+
             }
-            command.setHeader(new Header(structs));
+            command.setHeader(new Header(deliveryProps,messageProps,structs));
+
             if (frame.isLastSegment())
             {
                 setIncompleteCommand(channel, null);

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/main/java/org/apache/qpid/transport/network/Disassembler.java Thu Mar  1 15:42:44 2012
@@ -87,27 +87,35 @@ public final class Disassembler implemen
         }
     }
 
+    private final ByteBuffer _frameHeader = ByteBuffer.allocate(HEADER_SIZE);
+
+    {
+        _frameHeader.order(ByteOrder.BIG_ENDIAN);
+    }
+
     private void frame(byte flags, byte type, byte track, int channel, int size, ByteBuffer buf)
     {
         synchronized (sendlock)
         {
-            ByteBuffer data = ByteBuffer.allocate(size + HEADER_SIZE);
-            data.order(ByteOrder.BIG_ENDIAN);
+            ByteBuffer data = _frameHeader;
+            _frameHeader.rewind();
+
             
             data.put(0, flags);
             data.put(1, type);
             data.putShort(2, (short) (size + HEADER_SIZE));
             data.put(5, track);
             data.putShort(6, (short) channel);
-            data.position(HEADER_SIZE);
+
 
             int limit = buf.limit();
             buf.limit(buf.position() + size);
-            data.put(buf);
-            buf.limit(limit);
- 
+
             data.rewind();
             sender.send(data);
+            sender.send(buf);
+            buf.limit(limit);
+
         }
     }
 
@@ -179,7 +187,7 @@ public final class Disassembler implemen
             }
         }
         method.write(enc);
-        ByteBuffer methodSeg = enc.segment();
+        int methodLimit = enc.position();
 
         byte flags = FIRST_SEG;
 
@@ -189,29 +197,44 @@ public final class Disassembler implemen
             flags |= LAST_SEG;
         }
 
-        ByteBuffer headerSeg = null;
+        int headerLimit = -1;
         if (payload)
         {
             final Header hdr = method.getHeader();
             if (hdr != null)
             {
-                final Struct[] structs = hdr.getStructs();
-
-                for (Struct st : structs)
+                if(hdr.getDeliveryProperties() != null)
+                {
+                    enc.writeStruct32(hdr.getDeliveryProperties());
+                }
+                if(hdr.getMessageProperties() != null)
+                {
+                    enc.writeStruct32(hdr.getMessageProperties());
+                }
+                if(hdr.getNonStandardProperties() != null)
                 {
-                    enc.writeStruct32(st);
+                    for (Struct st : hdr.getNonStandardProperties())
+                    {
+                        enc.writeStruct32(st);
+                    }
                 }
             }
-            headerSeg = enc.segment();
+            headerLimit = enc.position();
         }
 
         synchronized (sendlock)
         {
-            fragment(flags, type, method, methodSeg);
+            ByteBuffer buf = enc.underlyingBuffer();
+            buf.position(0);
+            buf.limit(methodLimit);
+
+            fragment(flags, type, method, buf);
             if (payload)
             {
                 ByteBuffer body = method.getBody();
-                fragment(body == null ? LAST_SEG : 0x0, SegmentType.HEADER, method, headerSeg);
+                buf.limit(headerLimit);
+                buf.position(methodLimit);
+                fragment(body == null ? LAST_SEG : 0x0, SegmentType.HEADER, method, buf);
                 if (body != null)
                 {
                     fragment(LAST_SEG, SegmentType.BODY, method, body);

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/framing/PropertyFieldTableTest.java Thu Mar  1 15:42:44 2012
@@ -581,10 +581,10 @@ public class PropertyFieldTableTest exte
 
         table.setBytes("bytes", bytes);
         table.setChar("char", 'c');
-        table.setDouble("double", Double.MAX_VALUE);
-        table.setFloat("float", Float.MAX_VALUE);
         table.setInteger("int", Integer.MAX_VALUE);
         table.setLong("long", Long.MAX_VALUE);
+        table.setDouble("double", Double.MAX_VALUE);
+        table.setFloat("float", Float.MAX_VALUE);
         table.setShort("short", Short.MAX_VALUE);
         table.setString("string", "hello");
         table.setString("null-string", null);
@@ -823,9 +823,7 @@ public class PropertyFieldTableTest exte
      */
     public void testCheckPropertyNamehasMaxLength()
     {
-        String oldVal = System.getProperty("STRICT_AMQP");
-        System.setProperty("STRICT_AMQP", "true");
-        FieldTable table = new FieldTable();
+        FieldTable table = new FieldTable(true);
 
         StringBuffer longPropertyName = new StringBuffer(129);
 
@@ -845,14 +843,6 @@ public class PropertyFieldTableTest exte
         }
         // so length should be zero
         Assert.assertEquals(0, table.getEncodedSize());
-        if (oldVal != null)
-        {
-            System.setProperty("STRICT_AMQP", oldVal);
-        }
-        else
-        {
-            System.clearProperty("STRICT_AMQP");
-        }
     }
 
     /**
@@ -860,9 +850,7 @@ public class PropertyFieldTableTest exte
      */
     public void testCheckPropertyNameStartCharacterIsLetter()
     {
-        String oldVal = System.getProperty("STRICT_AMQP");
-        System.setProperty("STRICT_AMQP", "true");
-        FieldTable table = new FieldTable();
+        FieldTable table = new FieldTable(true);
 
         // Try a name that starts with a number
         try
@@ -876,14 +864,6 @@ public class PropertyFieldTableTest exte
         }
         // so length should be zero
         Assert.assertEquals(0, table.getEncodedSize());
-        if (oldVal != null)
-        {
-            System.setProperty("STRICT_AMQP", oldVal);
-        }
-        else
-        {
-            System.clearProperty("STRICT_AMQP");
-        }
     }
 
     /**
@@ -891,9 +871,7 @@ public class PropertyFieldTableTest exte
      */
     public void testCheckPropertyNameStartCharacterIsHashorDollar()
     {
-        String oldVal = System.getProperty("STRICT_AMQP");
-        System.setProperty("STRICT_AMQP", "true");
-        FieldTable table = new FieldTable();
+        FieldTable table = new FieldTable(true);
 
         // Try a name that starts with a number
         try
@@ -906,14 +884,6 @@ public class PropertyFieldTableTest exte
             fail("property name are allowed to start with # and $s");
         }
 
-        if (oldVal != null)
-        {
-            System.setProperty("STRICT_AMQP", oldVal);
-        }
-        else
-        {
-            System.clearProperty("STRICT_AMQP");
-        }
     }
 
     /**

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/src/test/java/org/apache/qpid/transport/RangeSetTest.java Thu Mar  1 15:42:44 2012
@@ -60,7 +60,7 @@ public class RangeSetTest extends TestCa
 
     public void test1()
     {
-        RangeSet ranges = new RangeSet();
+        RangeSet ranges = RangeSetFactory.createRangeSet();
         ranges.add(5, 10);
         check(ranges);
         ranges.add(15, 20);
@@ -77,7 +77,7 @@ public class RangeSetTest extends TestCa
 
     public void test2()
     {
-        RangeSet rs = new RangeSet();
+        RangeSet rs = RangeSetFactory.createRangeSet();
         check(rs);
 
         rs.add(1);
@@ -128,7 +128,7 @@ public class RangeSetTest extends TestCa
 
     public void testAddSelf()
     {
-        RangeSet a = new RangeSet();
+        RangeSet a = RangeSetFactory.createRangeSet();
         a.add(0, 8);
         check(a);
         a.add(0, 8);
@@ -141,8 +141,8 @@ public class RangeSetTest extends TestCa
 
     public void testIntersect1()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(9, 20);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(9, 20);
         Range i1 = a.intersect(b);
         Range i2 = b.intersect(a);
         assertEquals(i1.getUpper(), 10);
@@ -153,16 +153,16 @@ public class RangeSetTest extends TestCa
 
     public void testIntersect2()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(11, 20);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(11, 20);
         assertNull(a.intersect(b));
         assertNull(b.intersect(a));
     }
 
     public void testIntersect3()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(3, 5);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(3, 5);
         Range i1 = a.intersect(b);
         Range i2 = b.intersect(a);
         assertEquals(i1.getUpper(), 5);
@@ -173,14 +173,14 @@ public class RangeSetTest extends TestCa
 
     public void testSubtract1()
     {
-        Range a = new Range(0, 10);
+        Range a = Range.newInstance(0, 10);
         assertTrue(a.subtract(a).isEmpty());
     }
 
     public void testSubtract2()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(20, 30);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(20, 30);
         List<Range> ranges = a.subtract(b);
         assertEquals(ranges.size(), 1);
         Range d = ranges.get(0);
@@ -190,8 +190,8 @@ public class RangeSetTest extends TestCa
 
     public void testSubtract3()
     {
-        Range a = new Range(20, 30);
-        Range b = new Range(0, 10);
+        Range a = Range.newInstance(20, 30);
+        Range b = Range.newInstance(0, 10);
         List<Range> ranges = a.subtract(b);
         assertEquals(ranges.size(), 1);
         Range d = ranges.get(0);
@@ -201,8 +201,8 @@ public class RangeSetTest extends TestCa
 
     public void testSubtract4()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(3, 5);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(3, 5);
         List<Range> ranges = a.subtract(b);
         assertEquals(ranges.size(), 2);
         Range low = ranges.get(0);
@@ -215,8 +215,8 @@ public class RangeSetTest extends TestCa
 
     public void testSubtract5()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(3, 20);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(3, 20);
         List<Range> ranges = a.subtract(b);
         assertEquals(ranges.size(), 1);
         Range d = ranges.get(0);
@@ -226,8 +226,8 @@ public class RangeSetTest extends TestCa
 
     public void testSubtract6()
     {
-        Range a = new Range(0, 10);
-        Range b = new Range(-10, 5);
+        Range a = Range.newInstance(0, 10);
+        Range b = Range.newInstance(-10, 5);
         List<Range> ranges = a.subtract(b);
         assertEquals(ranges.size(), 1);
         Range d = ranges.get(0);

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/method/version/MethodBodyClass.vm
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/method/version/MethodBodyClass.vm?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/method/version/MethodBodyClass.vm (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/method/version/MethodBodyClass.vm Thu Mar  1 15:42:44 2012
@@ -46,8 +46,9 @@
  
 package org.apache.qpid.framing.amqp_$version.getMajor()_$version.getMinor();
 
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
+import java.io.DataInput;
+import org.apache.qpid.codec.MarkableDataInput;
+import java.io.DataOutput;
 import java.io.IOException;
 import java.util.HashMap;
 
@@ -58,7 +59,7 @@ public class ${javaClassName} extends AM
 {
     private static final AMQMethodBodyInstanceFactory FACTORY_INSTANCE = new AMQMethodBodyInstanceFactory()
     {
-        public AMQMethodBody newInstance(DataInputStream in, long size) throws AMQFrameDecodingException, IOException
+        public AMQMethodBody newInstance(MarkableDataInput in, long size) throws AMQFrameDecodingException, IOException
         {
             return new ${javaClassName}(in);
         }
@@ -86,7 +87,7 @@ public class ${javaClassName} extends AM
     
     // Constructor
 
-    public ${javaClassName}(DataInputStream buffer) throws AMQFrameDecodingException, IOException
+    public ${javaClassName}(MarkableDataInput buffer) throws AMQFrameDecodingException, IOException
     {
 #foreach( $field in $method.ConsolidatedFields )
         _$field.Name = read$field.getEncodingType()( buffer );
@@ -171,7 +172,7 @@ public class ${javaClassName} extends AM
         return size;        
     }
 
-    public void writeMethodPayload(DataOutputStream buffer) throws IOException
+    public void writeMethodPayload(DataOutput buffer) throws IOException
     {
 #foreach( $field in $method.ConsolidatedFields )
         write$field.getEncodingType()( buffer, _$field.Name );

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/MethodRegistryClass.vm
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/MethodRegistryClass.vm?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/MethodRegistryClass.vm (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/MethodRegistryClass.vm Thu Mar  1 15:42:44 2012
@@ -30,10 +30,10 @@
  
 package org.apache.qpid.framing;
 
-import java.io.DataInputStream;
 import java.io.IOException;
 
 import org.apache.qpid.framing.abstraction.ProtocolVersionMethodConverter;
+import org.apache.qpid.codec.MarkableDataInput;
 
 import java.util.Map;
 import java.util.HashMap;
@@ -54,7 +54,7 @@ public abstract class MethodRegistry
 #end
  			
 			
-    public abstract AMQMethodBody convertToBody(DataInputStream in, long size)
+    public abstract AMQMethodBody convertToBody(MarkableDataInput in, long size)
         throws AMQFrameDecodingException, IOException;
 
     public abstract int getMaxClassId();

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/version/MethodRegistryClass.vm
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/version/MethodRegistryClass.vm?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/version/MethodRegistryClass.vm (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/common/templates/model/version/MethodRegistryClass.vm Thu Mar  1 15:42:44 2012
@@ -35,10 +35,10 @@ import org.apache.qpid.protocol.AMQConst
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import java.io.DataInputStream;
 import java.io.IOException;
 
 import org.apache.qpid.framing.abstraction.ProtocolVersionMethodConverter;
+import org.apache.qpid.codec.MarkableDataInput;
 
 
 public class MethodRegistry_$version.getMajor()_$version.getMinor() extends MethodRegistry
@@ -87,7 +87,7 @@ public class MethodRegistry_$version.get
     }
 
 
-    public AMQMethodBody convertToBody(DataInputStream in, long size)
+    public AMQMethodBody convertToBody(MarkableDataInput in, long size)
         throws AMQFrameDecodingException, IOException
     {
         int classId = in.readUnsignedShort();

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/integrationtests/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/integrationtests/src/main/java/org/apache/qpid/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/example/qpid-jca-example-properties.xml
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/example/qpid-jca-example-properties.xml?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/example/qpid-jca-example-properties.xml (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/example/qpid-jca-example-properties.xml Thu Mar  1 15:42:44 2012
@@ -49,17 +49,17 @@
          value="responder.Queue;{create:always, node:{type:queue, x-declare:{auto-delete:true}}}"/>
 
     <property name="qpid.hello.topic.dest.address.BURL"
-            value="topic://amq.topic//hello.jcaTopic?routingKey='hello.jcaTopic',autodelete='true'"/>
+            value="BURL:topic://amq.topic//hello.jcaTopic?routingKey='hello.jcaTopic',autodelete='true'"/>
     <property name="qpid.goodbye.topic.dest.address.BURL"
-            value="topic://amq.topic//goodbye.jcaTopic?routingKey='goodbye.jcaTopic',autodelete='true'"/>
+            value="BURL:topic://amq.topic//goodbye.jcaTopic?routingKey='goodbye.jcaTopic',autodelete='true'"/>
     <property name="qpid.hellogoodbye.topic.dest.address.BURL"
-           value="topic://amq.topic//#.jcaTopic"/>
+           value="BURL:topic://amq.topic//#.jcaTopic"/>
     <property name="qpid.hello.queue.dest.address.BURL"
-           value="direct://amq.direct//hello.Queue?routingkey='hello.Queue'"/>
+           value="BURL:direct://amq.direct//hello.Queue?routingkey='hello.Queue'"/>
     <property name="qpid.goodbye.queue.dest.address.BURL"
-           value="direct://amq.direct//goodbye.Queue?routingkey='goodbye.Queue'"/>
+           value="BURL:direct://amq.direct//goodbye.Queue?routingkey='goodbye.Queue'"/>
     <property name="qpid.responder.queue.dest.address.BURL"
-           value="direct://amq.direct//responder.Queue?routingkey='responder.Queue'"/>
+           value="BURL:direct://amq.direct//responder.Queue?routingkey='responder.Queue'"/>
 
     <!-- This macro allows us to construct a property name which contains a property expansion -->
     <macrodef name="set-address-property">

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAManagedConnection.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAManagedConnection.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAManagedConnection.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAManagedConnection.java Thu Mar  1 15:42:44 2012
@@ -57,6 +57,8 @@ import javax.transaction.Transaction;
 import javax.transaction.TransactionManager;
 import javax.transaction.xa.XAResource;
 
+import org.apache.qpid.client.Closeable;
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -752,26 +754,25 @@ public class QpidRAManagedConnection imp
 
       try
       {
-         boolean transacted = _cri.isTransacted();
-         int acknowledgeMode =  Session.AUTO_ACKNOWLEDGE;
-         boolean localTx = _mcf.getUseLocalTx();
+         boolean transacted = _cri.isTransacted() || _mcf.getUseLocalTx();
+         int acknowledgeMode =  (transacted) ? Session.SESSION_TRANSACTED : _cri.getAcknowledgeMode();
 
          if (_cri.getType() == QpidRAConnectionFactory.TOPIC_CONNECTION)
          {
             if (_userName != null && _password != null)
             {
-               if(!localTx)
+               if(!transacted)
                {
                     _connection = _mcf.getCleanAMQConnectionFactory().createXATopicConnection(_userName, _password);
                }
                else
                {
-                    _connection = _mcf.getCleanAMQConnectionFactory().createTopicConnection();
+                    _connection = _mcf.getCleanAMQConnectionFactory().createTopicConnection(_userName, _password);
                }
             }
             else
             {
-               if(!localTx)
+               if(!transacted)
                {
                    _connection = _mcf.getDefaultAMQConnectionFactory().createXATopicConnection();
                }
@@ -781,32 +782,31 @@ public class QpidRAManagedConnection imp
                }
             }
 
-            if(!localTx)
+            if(!transacted)
             {
                 _xaSession = ((XATopicConnection)_connection).createXATopicSession();
-
             }
             else
             {
-                _session =  ((TopicConnection)_connection).createTopicSession(localTx, acknowledgeMode);
+                _session =  ((TopicConnection)_connection).createTopicSession(transacted, acknowledgeMode);
             }
          }
          else if (_cri.getType() == QpidRAConnectionFactory.QUEUE_CONNECTION)
          {
             if (_userName != null && _password != null)
             {
-               if(!localTx)
+               if(!transacted)
                {
                     _connection = _mcf.getCleanAMQConnectionFactory().createXAQueueConnection(_userName, _password);
                }
                else
                {
-                    _connection = _mcf.getCleanAMQConnectionFactory().createQueueConnection();
+                    _connection = _mcf.getCleanAMQConnectionFactory().createQueueConnection(_userName, _password);
                }
             }
             else
             {
-               if(!localTx)
+               if(!transacted)
                {
                    _connection = _mcf.getDefaultAMQConnectionFactory().createXAQueueConnection();
                }
@@ -816,14 +816,14 @@ public class QpidRAManagedConnection imp
                }
             }
 
-            if(!localTx)
+            if(!transacted)
             {
                 _xaSession = ((XAQueueConnection)_connection).createXAQueueSession();
 
             }
             else
             {
-               _session =  ((QueueConnection)_connection).createQueueSession(localTx, acknowledgeMode);
+               _session =  ((QueueConnection)_connection).createQueueSession(transacted, acknowledgeMode);
 
             }
          }
@@ -831,18 +831,18 @@ public class QpidRAManagedConnection imp
          {
             if (_userName != null && _password != null)
             {
-               if(!localTx)
+               if(!transacted)
                {
                     _connection = _mcf.getCleanAMQConnectionFactory().createXAConnection(_userName, _password);
                }
                else
                {
-                    _connection = _mcf.getCleanAMQConnectionFactory().createConnection();
+                    _connection = _mcf.getCleanAMQConnectionFactory().createConnection(_userName, _password);
                }
             }
             else
             {
-               if(!localTx)
+               if(!transacted)
                {
                    _connection = _mcf.getDefaultAMQConnectionFactory().createXAConnection();
                }
@@ -852,22 +852,24 @@ public class QpidRAManagedConnection imp
                }
             }
 
-            if(!localTx)
+            if(!transacted)
             {
                 _xaSession = ((XAQueueConnection)_connection).createXASession();
 
             }
             else
             {
-               _session =  ((QueueConnection)_connection).createSession(localTx, acknowledgeMode);
+               _session =  ((QueueConnection)_connection).createSession(transacted, acknowledgeMode);
 
             }
          }
 
         _connection.setExceptionListener(this);
+
       }
       catch (JMSException je)
       {
+         _log.error(je.getMessage(), je);
          throw new ResourceException(je.getMessage(), je);
       }
    }
@@ -877,4 +879,9 @@ public class QpidRAManagedConnection imp
       this._inManagedTx = inManagedTx;
    }
 
+   public boolean isConnectionClosed()
+   {
+       Closeable c = (Closeable)_connection;
+       return (c == null || c.isClosed() || c.isClosing());
+   }
 }

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAMessage.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAMessage.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAMessage.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRAMessage.java Thu Mar  1 15:42:44 2012
@@ -71,7 +71,7 @@ public class QpidRAMessage implements Me
          _log.trace("acknowledge()");
       }
 
-      _session.getSession(); // Check for closed
+      _session.getSessionInternal(); // Check for closed
       _message.acknowledge();
    }
 

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRASessionImpl.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRASessionImpl.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRASessionImpl.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/QpidRASessionImpl.java Thu Mar  1 15:42:44 2012
@@ -410,19 +410,24 @@ public class QpidRASessionImpl implement
       lock();
       try
       {
-         Session session = getSessionInternal();
 
          if (_cri.isTransacted() == false)
          {
             throw new IllegalStateException("Session is not transacted");
          }
 
+         if(_lockedMC.isConnectionClosed())
+         {
+             throw new IllegalStateException("Attempting to call commit when the underlying connection has been closed.");
+         }
+
          if (_log.isTraceEnabled())
          {
             _log.trace("Commit session " + this);
          }
 
-         session.commit();
+         getSessionInternal().commit();
+
       }
       finally
       {

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/inflow/QpidActivation.java
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/inflow/QpidActivation.java?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/inflow/QpidActivation.java (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/jca/src/main/java/org/apache/qpid/ra/inflow/QpidActivation.java Thu Mar  1 15:42:44 2012
@@ -113,6 +113,9 @@ public class QpidActivation implements E
    // Whether we are in the failure recovery loop
    private AtomicBoolean _inFailure = new AtomicBoolean(false);
 
+   //Whether or not we have completed activating
+   private AtomicBoolean _activated = new AtomicBoolean(false);
+
    static
    {
       try
@@ -242,7 +245,7 @@ public class QpidActivation implements E
          _log.trace("start()");
       }
       _deliveryActive.set(true);
-      _ra.getWorkManager().scheduleWork(new SetupActivation());
+      new Thread(new SetupActivation()).start();
    }
 
    /**
@@ -323,8 +326,10 @@ public class QpidActivation implements E
             throw e;
          }
       }
+
       amqConnection.start() ;
       this._connection = amqConnection ;
+      _activated.set(true);
 
       _log.debug("Setup complete " + this);
    }
@@ -422,7 +427,6 @@ public class QpidActivation implements E
                                         " of type " +
                                         destinationType.getName());
             _destination = Util.lookup(ctx, destinationName, destinationType);
-            //_destination = (Destination)ctx.lookup(destinationName);
 
          }
          else
@@ -490,7 +494,14 @@ public class QpidActivation implements E
 
    public void onException(final JMSException jmse)
    {
-      handleFailure(jmse) ;
+       if(_activated.get())
+       {
+           handleFailure(jmse) ;
+       }
+       else
+       {
+           _log.warn("Received JMSException: " + jmse + " while endpoint was not activated.");
+       }
    }
 
    /**

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/junit-toolkit/src/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/junit-toolkit/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Modified: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/lib/cobertura/README.txt
URL: http://svn.apache.org/viewvc/qpid/branches/rg-amqp-1-0-sandbox/qpid/java/lib/cobertura/README.txt?rev=1295627&r1=1295626&r2=1295627&view=diff
==============================================================================
--- qpid/branches/rg-amqp-1-0-sandbox/qpid/java/lib/cobertura/README.txt (original)
+++ qpid/branches/rg-amqp-1-0-sandbox/qpid/java/lib/cobertura/README.txt Thu Mar  1 15:42:44 2012
@@ -1,10 +1,9 @@
-Download the cobertura binary from the following location:
+Download the cobertura binary from the following location and expand it into
+this directory.
 
 http://cobertura.sourceforge.net/download.html
 
-
-Unpack it into the cobertura (this) directory with tar --strip-path 1 -xf.
-This should leave you with cobertura.jar in qpid/java/lib/cobertura.
+Alternatively run "ant download-cobertura" to do this automatically.
+(to set a http proxy for ant use ANT_OPTS="-Dhttp.proxyHost=<host> -Dhttp.proxyPort=<port>")
 
 Run "ant cover-test coverage-report" to generate coverage report.
-

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/management/ConfigurationManagement.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ConfigurationManagement.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagement.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747869,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/LoggingManagement.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/ManagedBroker.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedBroker.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/protocol/ManagedConnection.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedConnection.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/exchange/ManagedExchange.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedExchange.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/queue/ManagedQueue.java:753219-753220,753253,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/ManagedQueue.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/security/access/management/UserManagement.java:742626,743015,743028-743029,743304,743306,743311,743357,744113,747363,747367,747369-747370,747376,747783,747868-747870,747875,748561,748591,748641,748680,748686,749149,749282,749285,749315,749340,749572,753219-753220,753253,754934,754958,755256,757258,757270,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/UserManagement.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanAttribute.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanAttribute.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanConstructor.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanConstructor.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanDescription.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanDescription.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanOperation.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperation.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -3,4 +3,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:1061302-1072333
 /qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/management/MBeanOperationParameter.java:753219-753220,753253,758730,759097,760919,761721,762365,762992,763959,764026,764109,764140,764790
-/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/common/src/main/java/org/apache/qpid/management/common/mbeans/annotations/MBeanOperationParameter.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/common/src/test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/eclipse-plugin/src/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src:805429-821809
 /qpid/branches/jmx_mc_gsoc09/qpid/java/management/eclipse-plugin/src:788755
 /qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src:1061302-1072333
-/qpid/trunk/qpid/java/management/eclipse-plugin/src:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/eclipse-plugin/src:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/eclipse-plugin/src/main/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Thu Mar  1 15:42:44 2012
@@ -0,0 +1,2 @@
+*.iml
+

Propchange: qpid/branches/rg-amqp-1-0-sandbox/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Thu Mar  1 15:42:44 2012
@@ -2,4 +2,4 @@
 /qpid/branches/java-broker-0-10/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:795950-829653
 /qpid/branches/java-network-refactor/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:805429-821809
 /qpid/branches/qpid-2935/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:1061302-1072333
-/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1225000
+/qpid/trunk/qpid/java/management/eclipse-plugin/src/main/java/org/apache/qpid/management/ui/views/type/ConnectionTypeTabControl.java:1073294-1157765,1160415-1162726,1162729-1166086,1166089-1230000



---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:commits-subscribe@qpid.apache.org