You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kp...@apache.org on 2013/10/22 00:05:07 UTC

svn commit: r1534394 [20/22] - in /qpid/branches/linearstore/qpid: ./ cpp/ cpp/bindings/qmf2/examples/python/ cpp/bindings/qmf2/python/ cpp/bindings/qpid/dotnet/ cpp/etc/ cpp/examples/ cpp/examples/messaging/ cpp/examples/qmf-agent/ cpp/include/qpid/ c...

Modified: qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showQueue.html
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showQueue.html?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showQueue.html (original)
+++ qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showQueue.html Mon Oct 21 22:04:51 2013
@@ -19,41 +19,81 @@
  -
  -->
 <div class="queue">
-    <span style="">Name:</span><span class="name" style="position:absolute; left:6em"></span>
-    <span style="position:absolute; left:26em">Size:</span>
-    <span class="queueDepthMessages" style="position:absolute; right:9.5em"></span>
-    <span style="position:absolute; right: 5em; width: 4em"> msgs</span>
-    <span class="queueDepthBytes" style="position:absolute; right: 3.3em">(</span>
-    <span class="queueDepthBytesUnits" style="position:absolute; right: 0em; width: 3em">)</span>
-    <br/>
-    <span style="">State:</span><span class="state" style="position:absolute; left:6em"></span>
-    <span style="position:absolute; left:26em">Pre-fetched:</span>
-    <span class="unacknowledgedMessages" style="position:absolute; right:9.5em"></span>
-    <span style="position:absolute; right: 5em; width: 4em"> msgs</span>
-    <span class="unacknowledgedBytes" style="position:absolute; right: 3.3em"></span>
-    <span class="unacknowledgedBytesUnits" style="position:absolute; right: 0em; width: 3em"></span>
-    <br/>
-    <span style="">Durable:</span><span class="durable" style="position:absolute; left:6em"></span>
-    <span style="position:absolute; left:26em">Inbound:</span>
-    <span class="msgInRate" style="position:absolute; right:9.5em"></span>
-    <span style="position:absolute; right: 5em; width: 4em"> msg/s</span>
-    <span class="bytesInRate" style="position:absolute; right: 3.3em"></span>
-    <span class="bytesInRateUnits" style="position:absolute; right: 0em; width: 3em"></span>
-    <br/>
-    <span style="">Lifespan:</span><span style="position:absolute; left:6em" class="lifetimePolicy"></span>
-    <span style="position:absolute; left:26em">Outbound:</span>
-    <span class="msgOutRate" style="position:absolute; right:9.5em"></span>
-    <span style="position:absolute; right: 5em; width: 4em"> msg/s</span>
-    <span class="bytesOutRate" style="position:absolute; right: 3.3em"></span>
-    <span class="bytesOutRateUnits" style="position:absolute; right: 0em; width: 3em"></span>
-    <br/>
-    <span style="">AlternateExchange:</span><span class="alternateExchange" style="position:absolute; left:10em"></span>
-    <span style="position:absolute; left:26em">Type:</span><span style="position:absolute; left:29em" class="type"></span>
-    <span style="position:absolute; right:1em" class="typeQualifier"></span>
-    <br/>
-    <div class="messageGroups">
-       <span style="" class="messageGroupKeyLabel">Message Group Key:</span><span class="messageGroupKey" style="position:absolute; left:11em"></span>
-       <span style="position:absolute; left:26em" class="messageGroupSharedGroupsLabel">Shared Message Groups:</span><span style="position:absolute; left:39em" class="messageGroupSharedGroups"></span>
+    <div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Queue Attributes',  open: true">
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Name:</div>
+            <div class="name" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">State:</div>
+            <div class="state" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Durable:</div>
+            <div class="durable" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Lifespan:</div>
+            <div class="lifetimePolicy" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Type:</div>
+            <div style="float:left;">
+                <span class="type"></span>
+                <span class="typeQualifier"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Size:</div>
+            <div style="float:left;">
+                <span class="queueDepthMessages"></span>
+                <span> msgs</span>
+                <span class="queueDepthBytes">(</span>
+                <span class="queueDepthBytesUnits">)</span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Pre-fetched:</div>
+            <div style="float:left;">
+                <span class="unacknowledgedMessages"></span>
+                <span> msgs</span>
+                <span class="unacknowledgedBytes">(</span>
+                <span class="unacknowledgedBytesUnits">)</span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Inbound:</div>
+            <div style="float:left;">
+                <span class="msgInRate"></span>
+                <span> msg/s</span>
+                <span class="bytesInRate">(</span>
+                <span class="bytesInRateUnits">)</span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Outbound:</div>
+            <div style="float:left;">
+                <span class="msgOutRate"></span>
+                <span> msg/s</span>
+                <span class="bytesOutRate">(</span>
+                <span class="bytesOutRateUnits">)</span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">AlternateExchange:</div>
+            <div class="alternateExchange" style="float:left;"></div>
+        </div>
+        <div class="messageGroups" style="clear:both">
+          <div style="clear:both">
+            <div style="float:left; width: 150px;" class="messageGroupKeyLabel formLabel-labelCell ">Message Group Key:</div>
+            <div style="float:left;" class="messageGroupKey"></div>
+          </div>
+          <div style="clear:both">
+            <div style="float:left; width: 150px;" class="messageGroupSharedGroupsLabel formLabel-labelCell">Shared Message Groups:</div>
+            <div style="float:left;" class="messageGroupSharedGroups"></div>
+          </div>
+        </div>
+        <div style="clear:both"></div>
     </div>
     <br/>
     <div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Bindings'">
@@ -73,31 +113,42 @@
     </div>
     <br/>
     <div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Alerting Thresholds', open: false">
-        <span style="">Queue Depth:</span>
-        <span class="alertThresholdQueueDepthMessages"
-              style="position:absolute; left:4em; width:8em; text-align:right"></span>
-        <span style="position:absolute; left:12.2em">msgs</span>
-
-        <span style="position:absolute; left:21em">Queue Depth:</span>
-        <span class="alertThresholdQueueDepthBytes"
-              style="position:absolute; left:22em; width:8em; text-align:right"></span>
-        <span class="alertThresholdQueueDepthBytesUnits" style="position:absolute; left:30.2em"></span>
-        <br>
-        <span style="">Message Age:</span>
-        <span class="alertThresholdMessageAge"
-              style="position:absolute; left:4em; width:8em; text-align:right"></span>
-        <span class="alertThresholdMessageAgeUnits" style="position:absolute; left:12.2em"></span>
-
-        <span style="position:absolute; left:21em">Message Size: </span>
-        <span class="alertThresholdMessageSize"
-              style="position:absolute; left:25em; width:5em; text-align:right"></span>
-        <span class="alertThresholdMessageSizeUnits" style="position:absolute; left:30.2em"></span>
-        <br/>
-        <br/>
-        <span style="">Alert frequency:</span>
-        <span class="alertRepeatGap"
-              style="position:absolute; left:4em; width:8em; text-align:right"></span>
-        <span class="alertRepeatGapUnits" style="position:absolute; left:12.2em"></span>
+      <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Queue Depth:</div>
+            <div style="float:left;">
+                <span class="alertThresholdQueueDepthMessages"></span>
+                <span>msgs</span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Queue Depth:</div>
+            <div style="float:left;">
+                <span class="alertThresholdQueueDepthBytes"></span>
+                <span class="alertThresholdQueueDepthBytesUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Message Age:</div>
+            <div style="float:left;">
+                <span class="alertThresholdMessageAge"></span>
+                <span class="alertThresholdMessageAgeUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Message Size:</div>
+            <div style="float:left;">
+                <span class="alertThresholdMessageSize"></span>
+                <span class="alertThresholdMessageSizeUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Alert frequency:</div>
+            <div style="float:left;">
+                <span class="alertRepeatGap"></span>
+                <span class="alertRepeatGapUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both"></div>
     </div>
 
     <div class="dijitDialogPaneActionBar">

Modified: qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showVirtualHost.html
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showVirtualHost.html?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showVirtualHost.html (original)
+++ qpid/branches/linearstore/qpid/java/broker-plugins/management-http/src/main/java/resources/showVirtualHost.html Mon Oct 21 22:04:51 2013
@@ -21,31 +21,55 @@
  -->
 
 <div class="virtualhost">
-    <span style="">Name:</span><span class="name" style="position:absolute; left:6em"></span>
-    <br/>
-    <span style="">State:</span><span class="state" style="position:absolute; left:6em"></span>
-    <br/>
-    <span style="">Durable:</span><span class="durable" style="position:absolute; left:6em"></span>
-    <span style="position:absolute; left:26em">Inbound:</span>
-    <span class="msgInRate" style="position:absolute; right:9.5em"></span>
-    <span style="position:absolute; right: 5em; width: 4em"> msg/s</span>
-    <span class="bytesInRate" style="position:absolute; right: 3.3em"></span>
-    <span class="bytesInRateUnits" style="position:absolute; right: 0em; width: 3em"></span>
-    <br/>
-    <span style="">Lifespan:</span><span style="position:absolute; left:6em" class="lifetimePolicy"></span>
-    <span style="position:absolute; left:26em">Outbound:</span>
-    <span class="msgOutRate" style="position:absolute; right:9.5em"></span>
-    <span style="position:absolute; right: 5em; width: 4em"> msg/s</span>
-    <span class="bytesOutRate" style="position:absolute; right: 3.3em"></span>
-    <span class="bytesOutRateUnits" style="position:absolute; right: 0em; width: 3em"></span>
-    <br/>
-    <span style="">Store Type:</span><span style="position:absolute; left:6em" class="storeType"></span>
-    <span style="position:absolute; left:26em">Store Path:</span>
-    <span class="storePath" style="position:absolute; right: 1em"></span>
-    <div class="configPathDiv">
-        <span style="">ConfigPath:</span><span style="position:absolute; left:6em" class="configPath"></span>
-    </div>
-
+    <div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Virtual Host Attributes',  open: true">
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Name:</div>
+            <div class="name" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">State:</div>
+            <div class="state" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Durable:</div>
+            <div class="durable" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Lifespan:</div>
+            <div class="lifetimePolicy" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Inbound:</div>
+            <div style="float:left;">
+                <span class="msgInRate"></span>
+                <span> msg/s</span>
+                <span class="bytesInRate"></span>
+                <span class="bytesInRateUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Outbound:</div>
+            <div style="float:left;">
+                <span class="msgOutRate"></span>
+                <span> msg/s</span>
+                <span class="bytesOutRate"></span>
+                <span class="bytesOutRateUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Store Type:</div>
+            <div class="storeType" style="float:left;"></div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Store Path:</div>
+            <div class="storePath" style="float:left;"></div>
+        </div>
+        <div class="configPathDiv" style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 100px;">Config Path:</div>
+            <div class="configPath" style="float:left;"></div>
+        </div>
+        <div style="clear:both"></div>
+      </div>
     <br/>
     <div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Exchanges'">
         <div class="exchanges"></div>
@@ -64,31 +88,42 @@
     </div>
     <br/>
     <div data-dojo-type="dijit.TitlePane" data-dojo-props="title: 'Alerting Thresholds', open: false">
-        <span style="">Queue Depth:</span>
-        <span class="alertThresholdQueueDepthMessages"
-              style="position:absolute; left:4em; width:8em; text-align:right"></span>
-        <span style="position:absolute; left:12.2em">msgs</span>
-
-        <span style="position:absolute; left:21em">Queue Depth:</span>
-        <span class="alertThresholdQueueDepthBytes"
-              style="position:absolute; left:22em; width:8em; text-align:right"></span>
-        <span class="alertThresholdQueueDepthBytesUnits" style="position:absolute; left:30.2em"></span>
-        <br>
-        <span style="">Message Age:</span>
-        <span class="alertThresholdMessageAge"
-              style="position:absolute; left:4em; width:8em; text-align:right"></span>
-        <span class="alertThresholdMessageAgeUnits" style="position:absolute; left:12.2em"></span>
-
-        <span style="position:absolute; left:21em">Message Size: </span>
-        <span class="alertThresholdMessageSize"
-              style="position:absolute; left:25em; width:5em; text-align:right"></span>
-        <span class="alertThresholdMessageSizeUnits" style="position:absolute; left:30.2em"></span>
-        <br/>
-        <br/>
-        <span style="">Alert frequency:</span>
-        <span class="alertRepeatGap"
-              style="position:absolute; left:4em; width:8em; text-align:right"></span>
-        <span class="alertRepeatGapUnits" style="position:absolute; left:12.2em"></span>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Queue Depth:</div>
+            <div style="float:left;">
+                <span class="alertThresholdQueueDepthMessages"></span>
+                <span>msgs</span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Queue Depth:</div>
+            <div style="float:left;">
+                <span class="alertThresholdQueueDepthBytes"></span>
+                <span class="alertThresholdQueueDepthBytesUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Message Age:</div>
+            <div style="float:left;">
+                <span class="alertThresholdMessageAge"></span>
+                <span class="alertThresholdMessageAgeUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Message Size:</div>
+            <div style="float:left;">
+                <span class="alertThresholdMessageSize"></span>
+                <span class="alertThresholdMessageSizeUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both">
+            <div class="formLabel-labelCell" style="float:left; width: 150px;">Alert frequency:</div>
+            <div style="float:left;">
+                <span class="alertRepeatGap"></span>
+                <span class="alertRepeatGapUnits"></span>
+            </div>
+        </div>
+        <div style="clear:both"></div>
     </div>
 </div>
 

Propchange: qpid/branches/linearstore/qpid/java/broker-plugins/management-jmx/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Oct 21 22:04:51 2013
@@ -0,0 +1,3 @@
+*.iml
+target
+release

Modified: qpid/branches/linearstore/qpid/java/broker-plugins/management-jmx/build.xml
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/broker-plugins/management-jmx/build.xml?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/broker-plugins/management-jmx/build.xml (original)
+++ qpid/branches/linearstore/qpid/java/broker-plugins/management-jmx/build.xml Mon Oct 21 22:04:51 2013
@@ -17,11 +17,11 @@
  - under the License.
  -->
 <project name="Qpid Broker-Plugins Management JMX" default="build">
-    <property name="module.depends" value="common broker management/common" />
-    <property name="module.test.depends" value="broker/tests common/tests management/common client" />
+    <property name="module.depends" value="common broker-core management/common" />
+    <property name="module.test.depends" value="broker-core/tests qpid-test-utils management/common client" />
     
     <property name="module.genpom" value="true"/>
-    <property name="module.genpom.args" value="-Sqpid-common=provided -Sqpid-broker=provided -Sqpid-management-common=provided"/>
+    <property name="module.genpom.args" value="-Sqpid-common=provided -Sqpid-broker-core=provided -Sqpid-management-common=provided"/>
 
     <property name="broker.plugin" value="true"/>
 

Propchange: qpid/branches/linearstore/qpid/java/broker-plugins/memory-store/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Mon Oct 21 22:04:51 2013
@@ -0,0 +1,3 @@
+*.iml
+target
+release

Modified: qpid/branches/linearstore/qpid/java/broker-plugins/memory-store/build.xml
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/broker-plugins/memory-store/build.xml?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/broker-plugins/memory-store/build.xml (original)
+++ qpid/branches/linearstore/qpid/java/broker-plugins/memory-store/build.xml Mon Oct 21 22:04:51 2013
@@ -17,11 +17,11 @@
  - under the License.
  -->
 <project name="Qpid Broker-Plugins Memory Store" default="build">
-    <property name="module.depends" value="common broker" />
-    <property name="module.test.depends" value="common/tests broker/tests" />
+    <property name="module.depends" value="common broker-core" />
+    <property name="module.test.depends" value="qpid-test-utils broker-core/tests" />
 
     <property name="module.genpom" value="true"/>
-    <property name="module.genpom.args" value="-Sqpid-common=provided -Sqpid-broker=provided"/>
+    <property name="module.genpom.args" value="-Sqpid-common=provided -Sqpid-broker-core=provided"/>
 
     <property name="broker.plugin" value="true"/>
     <property name="broker-plugins-memory-store.libs" value="" />

Modified: qpid/branches/linearstore/qpid/java/build.deps
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/build.deps?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/build.deps (original)
+++ qpid/branches/linearstore/qpid/java/build.deps Mon Oct 21 22:04:51 2013
@@ -26,6 +26,8 @@ commons-digester=lib/required/commons-di
 commons-lang=lib/required/commons-lang-2.6.jar
 commons-logging=lib/required/commons-logging-1.1.1.jar
 
+bcel=lib/required/bcel-5.2.jar
+
 derby-db=lib/required/derby-10.8.2.2.jar
 
 geronimo-jms=lib/required/geronimo-jms_1.1_spec-1.0.jar
@@ -57,7 +59,8 @@ jetty-servlet=lib/required/jetty-servlet
 jetty-websocket=lib/required/jetty-websocket-7.6.10.v20130312.jar
 servlet-api=${geronimo-servlet}
 
-dojo=lib/required/dojo-war-1.8.3.war
+dojo-version=1.9.1
+dojo=lib/required/dojo-${dojo-version}.zip
 
 jackson-core=lib/required/jackson-core-asl-1.9.0.jar
 jackson-mapper=lib/required/jackson-mapper-asl-1.9.0.jar
@@ -72,11 +75,14 @@ amqp-1-0-client.libs=
 amqp-1-0-client-example.libs=${commons-cli}
 amqp-1-0-client-jms.libs=${geronimo-jms}
 tools.libs=${commons-configuration.libs} ${log4j}
-broker.libs=${commons-cli} ${commons-logging} ${log4j} ${slf4j-log4j} \
+broker-core.libs=${commons-cli} ${commons-logging} ${log4j} ${slf4j-log4j} \
     ${xalan} ${derby-db} ${commons-configuration.libs} \
-    ${jackson-core} ${jackson-mapper} ${jetty} ${jetty-continuation} ${jetty-security} ${jetty-http} ${jetty-io} ${jetty-servlet} ${jetty-util} ${servlet-api} ${jetty-websocket}
+    ${jackson-core} ${jackson-mapper} ${jetty} ${jetty-continuation} ${jetty-security} ${jetty-http} ${jetty-io} ${jetty-servlet} ${jetty-util} ${servlet-api} ${jetty-websocket} ${bcel}
+
+#Borrow the broker-core libs, hack for release binary generation
+broker.libs=${broker-core.libs}
 
-broker-plugins-management-http.libs=${jetty} ${jetty-continuation} ${jetty-security} ${jetty-http} ${jetty-io} ${jetty-servlet} ${jetty-util} ${servlet-api}  ${jackson-core} ${jackson-mapper}
+broker-plugins-management-http.libs=${jetty} ${jetty-continuation} ${jetty-security} ${jetty-http} ${jetty-io} ${jetty-servlet} ${jetty-util} ${servlet-api}  ${jackson-core} ${jackson-mapper} ${dojo}
 broker-plugins.libs=${log4j} ${commons-configuration.libs}
 
 test.libs=${slf4j-log4j} ${log4j} ${junit} ${slf4j-api} ${mockito-all}
@@ -87,11 +93,13 @@ management-common.libs=
 
 common.test.libs=${test.libs}
 broker.test.libs=${test.libs}
+broker-core.test.libs=${test.libs}
 client.test.libs=${test.libs}
 client-example.test.libs=${test.libs}
 tools.test.libs=
 systests.libs=${test.libs}
 perftests.test.libs=${test.libs}
+qpid-test-utils.libs = ${test.libs} ${geronimo-jms}
 
 broker-plugins-access-control.test.libs=${test.libs}
 broker-plugins-management-http.test.libs=${test.libs}
@@ -110,7 +118,7 @@ jca.libs=${geronimo-j2ee} ${geronimo-jta
 jca.test.libs=${test.libs}
 
 # optional bdbstore module deps
-bdb-je=lib/bdbstore/je-5.0.84.jar
+bdb-je=lib/bdbstore/je-5.0.97.jar
 bdbstore.libs=${bdb-je}
 bdbstore.test.libs=${test.libs}
 

Modified: qpid/branches/linearstore/qpid/java/build.xml
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/build.xml?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/build.xml (original)
+++ qpid/branches/linearstore/qpid/java/build.xml Mon Oct 21 22:04:51 2013
@@ -23,7 +23,7 @@
   <import file="common.xml"/>
 
   <property name="optional" value="false"/>
-  <property name="modules.opt.default" value="bdbstore bdbstore/jmx perftests/visualisation-jfc"/>
+  <property name="modules.opt.default" value="bdbstore bdbstore/jmx bdbstore/systests perftests/visualisation-jfc"/>
   <condition property="modules.opt" value="" else="${modules.opt.default}">
     <isfalse value="${optional}"/>
   </condition>
@@ -34,7 +34,7 @@
   <findSubProjects name="broker-plugins" dir="broker-plugins" excludes="${broker-plugins-exclude}"/>
   <findSubProjects name="client-plugins" dir="client-plugins"/>
 
-  <property name="modules.core"       value="common management/common amqp-1-0-common broker client amqp-1-0-client amqp-1-0-client-jms tools"/>
+  <property name="modules.core"       value="qpid-test-utils common management/common amqp-1-0-common broker-core broker client amqp-1-0-client amqp-1-0-client-jms tools"/>
   <property name="modules.examples"   value="client/example management/example amqp-1-0-client/example amqp-1-0-client-jms/example"/>
   <property name="modules.tests"      value="systests perftests"/>
   <property name="modules.plugin"     value="${broker-plugins} ${client-plugins}"/>

Modified: qpid/branches/linearstore/qpid/java/client/build.xml
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/build.xml?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/build.xml (original)
+++ qpid/branches/linearstore/qpid/java/client/build.xml Mon Oct 21 22:04:51 2013
@@ -21,7 +21,7 @@
 <project name="AMQ Client" default="build">
 
   <property name="module.depends" value="common"/>
-  <property name="module.test.depends" value="common/tests" />
+  <property name="module.test.depends" value="qpid-test-utils" />
   <property name="module.genpom" value="true"/>
   <property name="module.genpom.args" value="-Sgeronimo-jms_1.1_spec=provided"/>
 

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate.java Mon Oct 21 22:04:51 2013
@@ -80,4 +80,6 @@ public interface AMQConnectionDelegate
     boolean isSupportedServerFeature(final String featureName);
 
     void setHeartbeatListener(HeartbeatListener listener);
+
+    boolean supportsIsBound();
 }

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java Mon Oct 21 22:04:51 2013
@@ -530,4 +530,11 @@ public class AMQConnectionDelegate_0_10 
         }
         return true;
     }
+
+    @Override
+    public boolean supportsIsBound()
+    {
+        //0-10 supports the isBound method
+        return true;
+    }
 }

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java Mon Oct 21 22:04:51 2013
@@ -22,7 +22,6 @@ package org.apache.qpid.client;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.apache.qpid.AMQException;
 import org.apache.qpid.client.failover.FailoverException;
 import org.apache.qpid.client.failover.FailoverProtectedOperation;
@@ -35,13 +34,14 @@ import org.apache.qpid.framing.BasicQosB
 import org.apache.qpid.framing.BasicQosOkBody;
 import org.apache.qpid.framing.ChannelOpenBody;
 import org.apache.qpid.framing.ChannelOpenOkBody;
+import org.apache.qpid.framing.FieldTable;
 import org.apache.qpid.framing.ProtocolVersion;
 import org.apache.qpid.framing.TxSelectBody;
 import org.apache.qpid.framing.TxSelectOkBody;
 import org.apache.qpid.jms.BrokerDetails;
 import org.apache.qpid.jms.ChannelLimitReachedException;
 import org.apache.qpid.jms.ConnectionURL;
-import org.apache.qpid.ssl.SSLContextFactory;
+import org.apache.qpid.properties.ConnectionStartProperties;
 import org.apache.qpid.transport.ConnectionSettings;
 import org.apache.qpid.transport.network.NetworkConnection;
 import org.apache.qpid.transport.network.OutgoingNetworkTransport;
@@ -51,11 +51,10 @@ import org.apache.qpid.transport.network
 
 import javax.jms.JMSException;
 import javax.jms.XASession;
-import javax.net.ssl.SSLContext;
+
 import java.io.IOException;
 import java.net.ConnectException;
 import java.nio.channels.UnresolvedAddressException;
-import java.security.GeneralSecurityException;
 import java.text.MessageFormat;
 import java.util.ArrayList;
 import java.util.EnumSet;
@@ -384,4 +383,33 @@ public class AMQConnectionDelegate_8_0 i
     {
         _conn.getProtocolHandler().setHeartbeatListener(listener);
     }
+
+    @Override
+    public boolean supportsIsBound()
+    {
+        //Rough check whether the 'isBound' AMQP extension method is supported, by trying to determine if we are connected to Qpid.
+        //As older versions of the Qpid broker did not send properties, the value will be assumed true if no server properties
+        //are found, or the 'product' entry isn't present, and will only be false if it is present but doesn't match expectation.
+        boolean connectedToQpid = true;
+
+        FieldTable serverProperties = _conn.getProtocolHandler().getProtocolSession().getConnectionStartServerProperties();
+        if(serverProperties != null)
+        {
+            if(serverProperties.containsKey(ConnectionStartProperties.PRODUCT))
+            {
+                //String.valueof to ensure it is non-null, then lowercase it
+                String product = String.valueOf(serverProperties.getString(ConnectionStartProperties.PRODUCT)).toLowerCase();
+
+                //value is "unknown" when the naming properties file hasn't been found, e.g in IDE.
+                connectedToQpid = product.contains("qpid") || product.equals("unknown");
+            }
+        }
+
+        if(_logger.isDebugEnabled())
+        {
+            _logger.debug("supportsIsBound: " + connectedToQpid);
+        }
+
+        return connectedToQpid;
+    }
 }

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_8.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_8.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_8.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession_0_8.java Mon Oct 21 22:04:51 2013
@@ -397,10 +397,19 @@ public class AMQSession_0_8 extends AMQS
         }
     }
 
+    /**
+     * Checks if a particular queue is bound to an exchange with a given key.
+     *
+     * Returns false if not connected to a Qpid broker which supports the necessary AMQP extension.
+     */
     @Override
     protected boolean isBound(final AMQShortString exchangeName, final AMQShortString queueName, final AMQShortString routingKey)
             throws AMQException
     {
+        if(!getAMQConnection().getDelegate().supportsIsBound())
+        {
+            return false;
+        }
 
         AMQMethodEvent response = new FailoverNoopSupport<AMQMethodEvent, AMQException>(
                 new FailoverProtectedOperation<AMQMethodEvent, AMQException>()

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java Mon Oct 21 22:04:51 2013
@@ -24,6 +24,7 @@ import org.apache.qpid.AMQException;
 import org.apache.qpid.client.message.AMQMessageDelegate_0_8;
 import org.apache.qpid.client.message.AbstractJMSMessage;
 import org.apache.qpid.client.protocol.AMQProtocolHandler;
+import org.apache.qpid.configuration.ClientProperties;
 import org.apache.qpid.framing.AMQFrame;
 import org.apache.qpid.framing.BasicContentHeaderProperties;
 import org.apache.qpid.framing.BasicPublishBody;
@@ -32,7 +33,6 @@ import org.apache.qpid.framing.ContentBo
 import org.apache.qpid.framing.ContentHeaderBody;
 import org.apache.qpid.framing.ExchangeDeclareBody;
 import org.apache.qpid.framing.MethodRegistry;
-
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -40,12 +40,14 @@ import javax.jms.JMSException;
 import javax.jms.Message;
 import javax.jms.Queue;
 import javax.jms.Topic;
+
 import java.nio.ByteBuffer;
 import java.util.UUID;
 
 public class BasicMessageProducer_0_8 extends BasicMessageProducer
 {
-	private static final Logger _logger = LoggerFactory.getLogger(BasicMessageProducer_0_8.class);
+    private static final Logger _logger = LoggerFactory.getLogger(BasicMessageProducer_0_8.class);
+    private static final boolean SET_EXPIRATION_AS_TTL = Boolean.getBoolean(ClientProperties.SET_EXPIRATION_AS_TTL);
 
     BasicMessageProducer_0_8(AMQConnection connection, AMQDestination destination, boolean transacted, int channelId,
             AMQSession session, AMQProtocolHandler protocolHandler, long producerId, Boolean immediate, Boolean mandatory) throws AMQException
@@ -118,7 +120,16 @@ public class BasicMessageProducer_0_8 ex
 
             if (timeToLive > 0)
             {
-                contentHeaderProperties.setExpiration(currentTime + timeToLive);
+                if(!SET_EXPIRATION_AS_TTL)
+                {
+                    //default behaviour used by Qpid
+                    contentHeaderProperties.setExpiration(currentTime + timeToLive);
+                }
+                else
+                {
+                    //alternative behaviour for brokers interpreting the expiration header directly as a TTL.
+                    contentHeaderProperties.setExpiration(timeToLive);
+                }
             }
             else
             {

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/handler/ConnectionStartMethodHandler.java Mon Oct 21 22:04:51 2013
@@ -168,6 +168,8 @@ public class ConnectionStartMethodHandle
                         ConnectionStartProperties.getPID());
 
                 FieldTable serverProperties = body.getServerProperties();
+                session.setConnectionStartServerProperties(serverProperties);
+
                 ConnectionURL url = getConnectionURL(session);
                 _closeWhenNoRouteHelper.setClientProperties(clientProperties, url, serverProperties);
 

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10.java Mon Oct 21 22:04:51 2013
@@ -129,7 +129,7 @@ public class AMQMessageDelegate_0_10 ext
                 if (subject != null)
                 {
                     messageProps.getApplicationHeaders().remove(QpidMessageProperties.QPID_SUBJECT);
-                    messageProps.getApplicationHeaders().put("JMS_" + QpidMessageProperties.QPID_SUBJECT,subject);
+                    messageProps.getApplicationHeaders().put("JMS_" + QpidMessageProperties.QPID_SUBJECT_JMS_PROPER,subject);
                 }
             }
             dest = (AMQDestination) convertToAddressBasedDestination(_deliveryProps.getExchange(),
@@ -746,7 +746,7 @@ public class AMQMessageDelegate_0_10 ext
         }
         else if (isStrictJMS && QpidMessageProperties.QPID_SUBJECT.equals(propertyName))
         {
-            return (String)getApplicationHeaders().get("JMS_" + QpidMessageProperties.QPID_SUBJECT);
+            return (String)getApplicationHeaders().get("JMS_" + QpidMessageProperties.QPID_SUBJECT_JMS_PROPER);
         }
         else
         {

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/QpidMessageProperties.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/QpidMessageProperties.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/QpidMessageProperties.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/message/QpidMessageProperties.java Mon Oct 21 22:04:51 2013
@@ -30,6 +30,7 @@ public class QpidMessageProperties 
     }
 
     public static final String QPID_SUBJECT = "qpid.subject";
+    public static final String QPID_SUBJECT_JMS_PROPER = "qpid_subject";
     
     // AMQP 0-10 related properties
     public static final String AMQP_0_10_APP_ID = "x-amqp-0-10.app-id";

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/messaging/address/QpidQueueOptions.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/messaging/address/QpidQueueOptions.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/messaging/address/QpidQueueOptions.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/messaging/address/QpidQueueOptions.java Mon Oct 21 22:04:51 2013
@@ -27,7 +27,6 @@ public class QpidQueueOptions extends Ha
 	public static final String QPID_MAX_COUNT = "qpid.max_count";
     public static final String QPID_MAX_SIZE = "qpid.max_size";
     public static final String QPID_POLICY_TYPE = "qpid.policy_type";    
-    public static final String QPID_PERSIST_LAST_NODE = "qpid.persist_last_node";
     public static final String QPID_LVQ_KEY = "qpid.LVQ_key";
     public static final String QPID_LAST_VALUE_QUEUE = "qpid.last_value_queue";
     public static final String QPID_LAST_VALUE_QUEUE_NO_BROWSE = "qpid.last_value_queue_no_browse";
@@ -60,11 +59,7 @@ public class QpidQueueOptions extends Ha
         this.put(QPID_MAX_SIZE, i);
     }
     
-    public void setPersistLastNode()
-    {
-        this.put(QPID_PERSIST_LAST_NODE, 1);
-    }
-    
+
     public void setOrderingPolicy(String s)
     {
         if (QpidQueueOptions.QPID_LAST_VALUE_QUEUE.equals(s))

Modified: qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolSession.java Mon Oct 21 22:04:51 2013
@@ -22,7 +22,6 @@ package org.apache.qpid.client.protocol;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
-
 import org.apache.qpid.AMQException;
 import org.apache.qpid.client.AMQConnection;
 import org.apache.qpid.client.AMQSession;
@@ -36,6 +35,7 @@ import org.apache.qpid.framing.AMQMethod
 import org.apache.qpid.framing.AMQShortString;
 import org.apache.qpid.framing.ContentBody;
 import org.apache.qpid.framing.ContentHeaderBody;
+import org.apache.qpid.framing.FieldTable;
 import org.apache.qpid.framing.HeartbeatBody;
 import org.apache.qpid.framing.MethodDispatcher;
 import org.apache.qpid.framing.MethodRegistry;
@@ -101,6 +101,7 @@ public class AMQProtocolSession implemen
     private final AMQConnection _connection;
 
     private ConnectionTuneParameters _connectionTuneParameters;
+    private FieldTable _connectionStartServerProperties;
 
     private SaslClient _saslClient;
 
@@ -529,4 +530,14 @@ public class AMQProtocolSession implemen
     {
         return _connection;
     }
+
+    public void setConnectionStartServerProperties(FieldTable serverProperties)
+    {
+        _connectionStartServerProperties = serverProperties;
+    }
+
+    public FieldTable getConnectionStartServerProperties()
+    {
+        return _connectionStartServerProperties;
+    }
 }

Modified: qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/AMQSession_0_8Test.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/AMQSession_0_8Test.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/AMQSession_0_8Test.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/AMQSession_0_8Test.java Mon Oct 21 22:04:51 2013
@@ -21,10 +21,10 @@
 package org.apache.qpid.client;
 
 import org.apache.qpid.AMQException;
+import org.apache.qpid.client.transport.TestNetworkConnection;
 import org.apache.qpid.framing.AMQShortString;
 import org.apache.qpid.framing.amqp_0_91.QueueDeclareOkBodyImpl;
 import org.apache.qpid.test.utils.QpidTestCase;
-import org.apache.qpid.transport.TestNetworkConnection;
 import org.apache.qpid.transport.network.NetworkConnection;
 import org.apache.qpid.url.AMQBindingURL;
 

Modified: qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/message/AMQMessageDelegate_0_10Test.java Mon Oct 21 22:04:51 2013
@@ -124,7 +124,7 @@ public class AMQMessageDelegate_0_10Test
             for (Enumeration props = delegate.getPropertyNames(); props.hasMoreElements();)
             {
                 String key = (String)props.nextElement();
-                if (key.equals("JMS_" + QpidMessageProperties.QPID_SUBJECT))
+                if (key.equals("JMS_" + QpidMessageProperties.QPID_SUBJECT_JMS_PROPER))
                 {
                     propFound = true;
                 }

Modified: qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/protocol/AMQProtocolHandlerTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/protocol/AMQProtocolHandlerTest.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/protocol/AMQProtocolHandlerTest.java (original)
+++ qpid/branches/linearstore/qpid/java/client/src/test/java/org/apache/qpid/client/protocol/AMQProtocolHandlerTest.java Mon Oct 21 22:04:51 2013
@@ -28,12 +28,12 @@ import org.apache.qpid.AMQException;
 import org.apache.qpid.client.AMQAuthenticationException;
 import org.apache.qpid.client.MockAMQConnection;
 import org.apache.qpid.client.state.AMQState;
+import org.apache.qpid.client.transport.TestNetworkConnection;
 import org.apache.qpid.framing.AMQBody;
 import org.apache.qpid.framing.AMQFrame;
 import org.apache.qpid.framing.AMQMethodBody;
 import org.apache.qpid.framing.amqp_8_0.BasicRecoverOkBodyImpl;
 import org.apache.qpid.protocol.AMQConstant;
-import org.apache.qpid.transport.TestNetworkConnection;
 
 import java.util.concurrent.CountDownLatch;
 import java.util.concurrent.TimeUnit;

Modified: qpid/branches/linearstore/qpid/java/common.xml
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common.xml?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common.xml (original)
+++ qpid/branches/linearstore/qpid/java/common.xml Mon Oct 21 22:04:51 2013
@@ -50,8 +50,8 @@
   <property name="build.coverage.src"    location="${build}/coverage/src"/>
   <property name="build.findbugs"        location="${build}/findbugs"/>
 
-  <property name="java.target"           value="1.5"/>
-  <property name="java.source"           value="1.5"/>
+  <property name="java.target"           value="1.6"/>
+  <property name="java.source"           value="1.6"/>
 
   <property name="release"               location="${project.root}/release"/>
 
@@ -286,8 +286,8 @@
   <!-- targets for downloading ivy and retrieving dependencies -->
   <target name="retrieve-dependencies" depends="load-ivy, configure-ivy, retrieve-optional-dependencies" unless="${ivy.dont.retrieve}">
     <echo message="Resolving and retrieving dependencies..."/>
-    <ivy:resolve type="jar,bundle,war" file="${project.root}/ivy.retrieve.xml" conf="required"/>
-    <ivy:retrieve type="jar,bundle,war" conf="required" sync="true"
+    <ivy:resolve type="jar,bundle,zip" file="${project.root}/ivy.retrieve.xml" conf="required"/>
+    <ivy:retrieve type="jar,bundle,zip" conf="required" sync="true"
         pattern="${project.root}/lib/required/[artifact]-[revision].[ext]" />
   </target>
 
@@ -314,7 +314,7 @@
          fail so long as Ivy is in at least one of the locations. -->
     <mkdir dir="${ivy.jar.dir}"/>
     <path id="ivy.lib.path">
-        <fileset dir="${ivy.jar.dir}" includes="*.jar"/>
+        <fileset dir="${ivy.jar.dir}" includes="*${ivy.install.version}*.jar"/>
     </path>
     <taskdef resource="org/apache/ivy/ant/antlib.xml"
               uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/>

Modified: qpid/branches/linearstore/qpid/java/common/Composite.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/Composite.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/Composite.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/Composite.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/Constant.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/Constant.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/Constant.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/Constant.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/Enum.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/Enum.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/Enum.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/Enum.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/Invoker.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/Invoker.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/Invoker.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/Invoker.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/MethodDelegate.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/MethodDelegate.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/MethodDelegate.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/MethodDelegate.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/Option.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/Option.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/Option.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/Option.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/StructFactory.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/StructFactory.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/StructFactory.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/StructFactory.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/Type.tpl
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/Type.tpl?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/Type.tpl (original)
+++ qpid/branches/linearstore/qpid/java/common/Type.tpl Mon Oct 21 22:04:51 2013
@@ -1,6 +1,6 @@
 package org.apache.qpid.transport;
 /*
- * 
+ *
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
  * distributed with this work for additional information
@@ -8,16 +8,16 @@ package org.apache.qpid.transport;
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
- * 
+ *
  */
 
 

Modified: qpid/branches/linearstore/qpid/java/common/bin/qpid-jaddr
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/bin/qpid-jaddr?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/bin/qpid-jaddr (original)
+++ qpid/branches/linearstore/qpid/java/common/bin/qpid-jaddr Mon Oct 21 22:04:51 2013
@@ -23,8 +23,8 @@ if [ -z "$QPID_HOME" ]; then
     export PATH=${PATH}:${QPID_HOME}/bin
 fi
 
-# Set classpath to include Qpid jar with all required jars in manifest
-QPID_LIBS=$QPID_HOME/lib/qpid-all.jar
+# Set classpath to include Qpid jars
+QPID_LIBS="$QPID_HOME/lib/*"
 
 # Set other variables used by the qpid-run script before calling
 export JAVA=java \

Modified: qpid/branches/linearstore/qpid/java/common/build.xml
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/build.xml?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/build.xml (original)
+++ qpid/branches/linearstore/qpid/java/common/build.xml Mon Oct 21 22:04:51 2013
@@ -20,89 +20,35 @@
  -->
 <project name="AMQ Common" default="build">
 
+  <property name="module.test.depends" value="qpid-test-utils" />
   <property name="module.genpom" value="true"/>
 
   <import file="../module.xml"/>
 
-  <property name="generated.package" value="org/apache/qpid/framing" />
-  <property name="framing.generated.dir" location="${module.precompiled}/${generated.package}" />
-  <property name="qpidbuildversion.java" location="${module.precompiled}/org/apache/qpid/QpidBuildVersion.java" />
-  <property name="xml.spec.dir" location="${project.root}/../specs" />
-  <property name="xml.spec.deps" value="amqp0-8-qpid.stripped.xml amqp0-9-qpid.stripped.xml amqp0-9-1.stripped.xml" />
-  <property name="xml.spec.list" value='"${xml.spec.dir}/amqp0-8-qpid.stripped.xml" "${xml.spec.dir}/amqp0-9-qpid.stripped.xml" "${xml.spec.dir}/amqp0-9-1.stripped.xml"' />
-  <property name="gentools.timestamp" location="${framing.generated.dir}/gentools.timestamp" />
-  <property name="jython.timestamp" location="${framing.generated.dir}/jython.timestamp" />
-  <property name="selector.output.dir" value="${module.precompiled}/org/apache/qpid/filter/selector"/>
-
-  <target name="check_jython_deps">
-    <uptodate property="jython.notRequired" targetfile="${jython.timestamp}">
-      <srcfiles dir="${xml.spec.dir}" includes="amqp.0-10-qpid-errata.stripped.xml" />
-    </uptodate>
-  </target>
+  <property name="selector.output.dir" value="${module.src}/org/apache/qpid/filter/selector"/>
 
-  <target name="jython" depends="check_jython_deps" unless="jython.notRequired">
-    <jython path="${mllib.dir}">
-      <args>
-        <arg value="${basedir}/codegen"/>
-        <arg value="${module.precompiled}"/>
-        <arg value="${xml.spec.dir}/amqp.0-10-qpid-errata.stripped.xml"/>
-        <arg value="${basedir}"/>
-      </args>
-    </jython>
-    <touch file="${jython.timestamp}" />
-  </target>
+  <condition property="generate.selector.sources" value="true">
+    <istrue value="${generate}"/>
+  </condition>
 
-  <target name="compile_gentools">
-    <mkdir dir="${gentools.build}/classes"/>
-    <javac srcdir="${gentools.home}/src" destdir="${gentools.build}/classes" source="${java.source}" target="${java.target}" fork="true" includeantruntime="false">
-      <classpath>
-        <fileset dir="${project.root}">
-          <include name="${velocity.jar}"/>
-          <include name="${velocity-dep.jar}"/>
-        </fileset>
-      </classpath>
-    </javac>
-  </target>
-
-  <target name="check_gentool_deps">
-    <uptodate property="gentools.notRequired" targetfile="${gentools.timestamp}">
-      <srcfiles dir="${xml.spec.dir}" includes="${xml.spec.deps}" />
-    </uptodate>
-  </target>
-
-  <target name="gentools" depends="compile_gentools,check_gentool_deps" unless="gentools.notRequired">
-    <mkdir dir="${framing.generated.dir}"/>
-    <java classname="org.apache.qpid.gentools.Main" fork="true" dir="${gentools.build}/classes" failonerror="true">
-      <arg line='-j -o "${framing.generated.dir}" -t "${project.root}/common/templates" ${xml.spec.list}'/>
-      <classpath>
-        <pathelement path="${gentools.build}/classes" />
+  <path id="common.source.generation.classpathref">
+        <pathelement path="${project.root}/${jython}" />
         <pathelement path="${project.root}/${velocity.jar}" />
         <pathelement path="${project.root}/${velocity-dep.jar}" />
-      </classpath>
-    </java>
-    <touch file="${gentools.timestamp}" />
-  </target>
-
-  <target name="build-version" depends="create-version" if="version-stale">
-  <tstamp>
-    <format property="build.time" pattern="yyyy-MM-dd HH:mm:ss z" timezone="UTC"/>
-  </tstamp>
-
-    <echo file="${qpidbuildversion.java}" append="false">package org.apache.qpid;
-
-public class QpidBuildVersion
-{
-    public static final String VERSION = "${project.version}";
-    public static final String SVN_VERSION = "${svnversion.output}";
-    public static final String BUILD_PROJECT = "${project.name}";
-    public static final String BUILD_TIME = "${build.time}";
-
-}
-</echo>
+  </path>
 
+  <target name="generate-sources">
+    <ant antfile="build-generate-sources.xml">
+      <reference torefid="source.generation.classpathref" refid="common.source.generation.classpathref" />
+      <property name="generated-amqp-0-8-dir" value="${module.src}"/>
+      <property name="generated-amqp-0-10-dir" value="${module.src}"/>
+      <property name="gentools.classes" value="${build.scratch}/common/gentools/classes"/>
+      <property name="version.file" location="${module.classes}/qpidversion.properties"/>
+    </ant>
   </target>
 
-  <target name="jms-selector">
+  <target name="jms-selector" if="generate.selector.sources">
+    <echo>Generating JMS selector sources</echo>
     <copy tofile="${module.build}/javacc.jar" failonerror="true">
       <fileset dir="${project.root}/lib/required">
         <include name="javacc-*.jar"/>
@@ -114,7 +60,7 @@ public class QpidBuildVersion
             javacchome="${module.build}"/>
   </target>
 
-  <target name="precompile" depends="gentools,jython,create-version,build-version,jms-selector"/>
+  <target name="precompile" depends="generate-sources,jms-selector"/>
 
   <target name="bundle" depends="bundle-tasks"/>
 

Modified: qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java (original)
+++ qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/configuration/ClientProperties.java Mon Oct 21 22:04:51 2013
@@ -208,6 +208,13 @@ public class ClientProperties
     public static final String QPID_MAX_CACHED_ADDR_OPTION_STRINGS = "qpid.max_cached_address_option_strings";
     public static final int DEFAULT_MAX_CACHED_ADDR_OPTION_STRINGS = 10;
 
+    /**
+     * System property to control whether the 0-8/0-9/0-9-1 client will set the message
+     * 'expiration' header using the computed expiration value (default, when false) or instead set
+     * it to the raw TTL (when true). May be necessary for interop with other vendors.
+     */
+    public static final String SET_EXPIRATION_AS_TTL = "qpid.set_expiration_as_ttl";
+
     private ClientProperties()
     {
         //No instances

Modified: qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java (original)
+++ qpid/branches/linearstore/qpid/java/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java Mon Oct 21 22:04:51 2013
@@ -388,7 +388,15 @@ public class BasicContentHeaderPropertie
 
     public void setContentType(AMQShortString contentType)
     {
-        _propertyFlags |= (CONTENT_TYPE_MASK);
+
+        if(contentType == null)
+        {
+            _propertyFlags &= (~CONTENT_TYPE_MASK);
+        }
+        else
+        {
+            _propertyFlags |= CONTENT_TYPE_MASK;
+        }
         _contentType = contentType;
         _encodedForm = null;
     }
@@ -411,14 +419,19 @@ public class BasicContentHeaderPropertie
 
     public void setEncoding(String encoding)
     {
-        _propertyFlags |= ENCODING_MASK;
-        _encoding = (encoding == null) ? null : AMQShortString.valueOf(encoding);
-        _encodedForm = null;
+        setEncoding(encoding == null ? null : AMQShortString.valueOf(encoding));
     }
 
     public void setEncoding(AMQShortString encoding)
     {
-        _propertyFlags |= ENCODING_MASK;
+        if(encoding == null)
+        {
+            _propertyFlags &= (~ENCODING_MASK);
+        }
+        else
+        {
+            _propertyFlags |= ENCODING_MASK;
+        }
         _encoding = encoding;
         _encodedForm = null;
     }
@@ -435,7 +448,14 @@ public class BasicContentHeaderPropertie
 
     public void setHeaders(FieldTable headers)
     {
-        _propertyFlags |= HEADERS_MASK;
+        if(headers == null)
+        {
+            _propertyFlags &= (~HEADERS_MASK);
+        }
+        else
+        {
+            _propertyFlags |= HEADERS_MASK;
+        }
         _headers = headers;
         _encodedForm = null;
     }
@@ -481,7 +501,14 @@ public class BasicContentHeaderPropertie
 
     public void setCorrelationId(AMQShortString correlationId)
     {
-        _propertyFlags |= CORRELATION_ID_MASK;
+        if(correlationId == null)
+        {
+            _propertyFlags &= (~CORRELATION_ID_MASK);
+        }
+        else
+        {
+            _propertyFlags |= CORRELATION_ID_MASK;
+        }
         _correlationId = correlationId;
         _encodedForm = null;
     }
@@ -503,7 +530,14 @@ public class BasicContentHeaderPropertie
 
     public void setReplyTo(AMQShortString replyTo)
     {
-        _propertyFlags |= REPLY_TO_MASK;
+        if(replyTo == null)
+        {
+            _propertyFlags &= (~REPLY_TO_MASK);
+        }
+        else
+        {
+            _propertyFlags |= REPLY_TO_MASK;
+        }
         _replyTo = replyTo;
         _encodedForm = null;
     }
@@ -515,7 +549,14 @@ public class BasicContentHeaderPropertie
 
     public void setExpiration(long expiration)
     {
-        _propertyFlags |= EXPIRATION_MASK;
+        if(expiration == 0l)
+        {
+            _propertyFlags &= (~EXPIRATION_MASK);
+        }
+        else
+        {
+            _propertyFlags |= EXPIRATION_MASK;
+        }
         _expiration = expiration;
         _encodedForm = null;
     }
@@ -532,14 +573,19 @@ public class BasicContentHeaderPropertie
 
     public void setMessageId(String messageId)
     {
-        _propertyFlags |= MESSAGE_ID_MASK;
-        _messageId = (messageId == null) ? null : new AMQShortString(messageId);
-        _encodedForm = null;
+        setMessageId(messageId == null ? null : new AMQShortString(messageId));
     }
 
     public void setMessageId(AMQShortString messageId)
     {
-        _propertyFlags |= MESSAGE_ID_MASK;
+        if(messageId == null)
+        {
+            _propertyFlags &= (~MESSAGE_ID_MASK);
+        }
+        else
+        {
+            _propertyFlags |= MESSAGE_ID_MASK;
+        }
         _messageId = messageId;
         _encodedForm = null;
     }
@@ -573,7 +619,14 @@ public class BasicContentHeaderPropertie
 
     public void setType(AMQShortString type)
     {
-        _propertyFlags |= TYPE_MASK;
+        if(type == null)
+        {
+            _propertyFlags &= (~TYPE_MASK);
+        }
+        else
+        {
+            _propertyFlags |= TYPE_MASK;
+        }
         _type = type;
         _encodedForm = null;
     }
@@ -595,7 +648,14 @@ public class BasicContentHeaderPropertie
 
     public void setUserId(AMQShortString userId)
     {
-        _propertyFlags |= USER_ID_MASK;
+        if(userId == null)
+        {
+            _propertyFlags &= (~USER_ID_MASK);
+        }
+        else
+        {
+            _propertyFlags |= USER_ID_MASK;
+        }
         _userId = userId;
         _encodedForm = null;
     }
@@ -617,7 +677,14 @@ public class BasicContentHeaderPropertie
 
     public void setAppId(AMQShortString appId)
     {
-        _propertyFlags |= APPLICATION_ID_MASK;
+        if(appId == null)
+        {
+            _propertyFlags &= (~APPLICATION_ID_MASK);
+        }
+        else
+        {
+            _propertyFlags |= APPLICATION_ID_MASK;
+        }
         _appId = appId;
         _encodedForm = null;
     }
@@ -639,7 +706,14 @@ public class BasicContentHeaderPropertie
 
     public void setClusterId(AMQShortString clusterId)
     {
-        _propertyFlags |= CLUSTER_ID_MASK;
+        if(clusterId == null)
+        {
+            _propertyFlags &= (~CLUSTER_ID_MASK);
+        }
+        else
+        {
+            _propertyFlags |= CLUSTER_ID_MASK;
+        }
         _clusterId = clusterId;
         _encodedForm = null;
     }

Modified: qpid/branches/linearstore/qpid/java/common/src/test/java/org/apache/qpid/framing/BasicContentHeaderPropertiesTest.java
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/src/test/java/org/apache/qpid/framing/BasicContentHeaderPropertiesTest.java?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/src/test/java/org/apache/qpid/framing/BasicContentHeaderPropertiesTest.java (original)
+++ qpid/branches/linearstore/qpid/java/common/src/test/java/org/apache/qpid/framing/BasicContentHeaderPropertiesTest.java Mon Oct 21 22:04:51 2013
@@ -144,6 +144,9 @@ public class BasicContentHeaderPropertie
         long expiration = 999999999;
         _testProperties.setExpiration(expiration);
         assertEquals(expiration, _testProperties.getExpiration());
+        expiration = 0l;
+        _testProperties.setExpiration(expiration);
+        assertEquals(expiration, _testProperties.getExpiration());
     }
 
     public void testSetGetMessageId()

Modified: qpid/branches/linearstore/qpid/java/common/templates/method/MethodBodyInterface.vm
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/templates/method/MethodBodyInterface.vm?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/templates/method/MethodBodyInterface.vm (original)
+++ qpid/branches/linearstore/qpid/java/common/templates/method/MethodBodyInterface.vm Mon Oct 21 22:04:51 2013
@@ -2,16 +2,11 @@
 #set( $name = "${name.substring(0,1).toUpperCase()}${name.substring(1)}" )
 #end
 #macro( toUpperCamel $name )${name.substring(0,1).toUpperCase()}${name.substring(1)}#end
-
-
-
 #set( $amqp_ClassName = $amqpClass.Name) 
 #UpperCamel( $amqp_ClassName )
 #set( $amqp_MethodName = $amqpMethod.Name ) 
 #UpperCamel( $amqp_MethodName )
 #set( $javaClassName = "${amqp_ClassName}${amqp_MethodName}Body" )
-
-
 #set( $filename = "${javaClassName}.java")
 /*
  *
@@ -22,9 +17,9 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -41,22 +36,15 @@
  *   $supportedVersion.getMajor()-$supportedVersion.getMinor()
  #end
  */
- 
- 
-package org.apache.qpid.framing;
 
+package org.apache.qpid.framing;
 
 public interface ${javaClassName} extends EncodableAMQDataBlock, AMQMethodBody
 {
-    
-    
 #foreach( $field in $amqpMethod.Fields )
 
 #if( $amqpMethod.isCommon( $field ) )
     public $field.ConsistentNativeType get#toUpperCamel( ${field.Name} )();
 #end
 #end
-
-
-
 }

Modified: qpid/branches/linearstore/qpid/java/common/templates/method/version/MethodBodyClass.vm
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/templates/method/version/MethodBodyClass.vm?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/templates/method/version/MethodBodyClass.vm (original)
+++ qpid/branches/linearstore/qpid/java/common/templates/method/version/MethodBodyClass.vm Mon Oct 21 22:04:51 2013
@@ -19,9 +19,9 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -36,10 +36,9 @@
  * Supported AMQP version:
  *   $version.getMajor()-$version.getMinor()
  */
- 
+
 #set( $clazz = $amqpClass.asSingleVersionClass( $version ) ) 
 #set( $method = $amqpMethod.asSingleVersionMethod( $version ) )
- 
 package org.apache.qpid.framing.amqp_$version.getMajor()_$version.getMinor();
 
 import org.apache.qpid.codec.MarkableDataInput;
@@ -57,37 +56,29 @@ public class ${javaClassName} extends AM
         {
             return new ${javaClassName}(in);
         }
-		
- 
     };
-    
-	
+
     public static AMQMethodBodyInstanceFactory getFactory()
     {
         return FACTORY_INSTANCE;
     }
 
-    public static final int CLASS_ID =  $clazz.ClassId; 
-    
-    public static final int METHOD_ID = $method.MethodId; 
-    
+    public static final int CLASS_ID =  $clazz.ClassId;
+    public static final int METHOD_ID = $method.MethodId;
 
-	
     // Fields declared in specification
 #foreach( $field in $method.ConsolidatedFields )
     private final $field.NativeType _$field.getName(); // $field.UnderlyingFields
 #end
 
-    
     // Constructor
-
     public ${javaClassName}(MarkableDataInput buffer) throws AMQFrameDecodingException, IOException
     {
 #foreach( $field in $method.ConsolidatedFields )
         _$field.Name = read$field.getEncodingType()( buffer );
 #end
-	}
-	
+    }
+
     public ${javaClassName}(
 #foreach( $field in $method.FieldList )
 #if( $velocityCount == $method.getFieldList().size() )
@@ -109,35 +100,34 @@ public class ${javaClassName} extends AM
         byte $consolidatedFieldName = (byte)0;
 #end
         if( $field.Name )
-		{		    
+        {
             $consolidatedFieldName = (byte) (((int) $consolidatedFieldName) | (1 << $method.getPositionInBitField( $field.Name )));
-		}
+        }
 #if( $velocityCount == $method.getFieldList().size())
-        _$consolidatedFieldName = $consolidatedFieldName; 
-#else  
- 
-#end 
+        _$consolidatedFieldName = $consolidatedFieldName;
+#else
+
+#end
 #else
 #if( !$consolidatedFieldName.equals("") )
-        _$consolidatedFieldName = $consolidatedFieldName; 
+        _$consolidatedFieldName = $consolidatedFieldName;
 #end
 #set( $consolidatedFieldName = "" )
         _$field.Name = $field.Name;
 #end
 #end
     }
-    
-    public int getClazz() 
-    { 
-        return CLASS_ID; 
-    }
-    
-    public int getMethod() 
-    { 
-        return METHOD_ID; 
+
+    public int getClazz()
+    {
+        return CLASS_ID;
+    }
+
+    public int getMethod()
+    {
+        return METHOD_ID;
     }
 
-    
 #foreach( $field in $method.FieldList )
     public final $field.NativeType get#toUpperCamel( ${field.Name} )()
     {
@@ -150,20 +140,20 @@ public class ${javaClassName} extends AM
 #end
 
     protected int getBodySize()
-    {      
+    {
 #set( $fixedSize = 0 )
 #foreach( $field in $method.ConsolidatedFields )
-#if( $field.isFixedSize() )        
+#if( $field.isFixedSize() )
 #set( $fixedSize = $fixedSize + $field.Size )
 #end
 #end
-	    int size = $fixedSize;
+        int size = $fixedSize;
 #foreach( $field in $method.ConsolidatedFields )
-#if( ! $field.isFixedSize() )        
+#if( ! $field.isFixedSize() )
         size += getSizeOf( _$field.Name );
 #end
 #end
-        return size;        
+        return size;
     }
 
     public void writeMethodPayload(DataOutput buffer) throws IOException
@@ -179,32 +169,28 @@ public class ${javaClassName} extends AM
 #set( $amqpMethodNameFirstCharU = $amqpMethodNameFirstChar.toUpperCase() )
 #set( $amqpMethodNameUpperCamel = "$amqpMethodNameFirstCharU$amqpMethod.getName().substring(1)" )
 #if( $amqpMethod.inAllVersions() )
-    return dispatcher.dispatch${amqpClassNameUpperCamel}${amqpMethodNameUpperCamel}(this, channelId);	
+    return dispatcher.dispatch${amqpClassNameUpperCamel}${amqpMethodNameUpperCamel}(this, channelId);
 #else
-    return ((MethodDispatcher_$version.getMajor()_$version.getMinor())dispatcher).dispatch${amqp_ClassName}${amqpMethodNameUpperCamel}(this, channelId);	
-
-#end	
-	    
+    return ((MethodDispatcher_$version.getMajor()_$version.getMinor())dispatcher).dispatch${amqp_ClassName}${amqpMethodNameUpperCamel}(this, channelId);
+#end
 	}
-	
-	
+
     public String toString()
     {
         StringBuilder buf = new StringBuilder("[$javaClassName: ");
 #foreach( $field in $method.FieldList )
         buf.append( "$field.Name=" );
 #if( $field.NativeType == "byte[]" )
-		buf.append(  get#toUpperCamel( $field.Name )() == null  ? "null" : java.util.Arrays.toString( get#toUpperCamel( $field.Name )() ) );
+        buf.append(  get#toUpperCamel( $field.Name )() == null  ? "null" : java.util.Arrays.toString( get#toUpperCamel( $field.Name )() ) );
 #else
-		buf.append(  get#toUpperCamel( $field.Name )() );
+        buf.append(  get#toUpperCamel( $field.Name )() );
 #end
 #if( $velocityCount	!= $method.FieldList.size() )
-		buf.append( ", " );		
+        buf.append( ", " );
 #end		
 #end
         buf.append("]");
         return buf.toString();
     }
 
-
 }

Modified: qpid/branches/linearstore/qpid/java/common/templates/model/ClientMethodDispatcherInterface.vm
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/templates/model/ClientMethodDispatcherInterface.vm?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/templates/model/ClientMethodDispatcherInterface.vm (original)
+++ qpid/branches/linearstore/qpid/java/common/templates/model/ClientMethodDispatcherInterface.vm Mon Oct 21 22:04:51 2013
@@ -8,9 +8,9 @@
  * to you under the Apache License, Version 2.0 (the
  * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
- * 
+ *
  *   http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
@@ -27,12 +27,11 @@
  *   $supportedVersion.getMajor()-$supportedVersion.getMinor()
  #end
  */
- 
+
 package org.apache.qpid.framing;
 
 import org.apache.qpid.AMQException;
 
-
 public interface ClientMethodDispatcher
 {
 
@@ -48,7 +47,7 @@ public interface ClientMethodDispatcher
 #set( $amqpMethodNameFirstCharU = $amqpMethodNameFirstChar.toUpperCase() )
 #set( $amqpMethodNameUpperCamel = "$amqpMethodNameFirstCharU$amqpMethod.getName().substring(1)" )
     public boolean dispatch${amqpClassNameUpperCamel}${amqpMethodNameUpperCamel}(${amqpClassNameUpperCamel}${amqpMethodNameUpperCamel}Body body, int channelId) throws AMQException;
-#end							
+#end
 #end
 #end
 #end

Modified: qpid/branches/linearstore/qpid/java/common/templates/model/MethodDispatcherInterface.vm
URL: http://svn.apache.org/viewvc/qpid/branches/linearstore/qpid/java/common/templates/model/MethodDispatcherInterface.vm?rev=1534394&r1=1534393&r2=1534394&view=diff
==============================================================================
--- qpid/branches/linearstore/qpid/java/common/templates/model/MethodDispatcherInterface.vm (original)
+++ qpid/branches/linearstore/qpid/java/common/templates/model/MethodDispatcherInterface.vm Mon Oct 21 22:04:51 2013
@@ -1,36 +1,36 @@
-#set( $filename = "MethodDispatcher.java")
-/*
- *
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- * 
- *   http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-/*
- * This file is auto-generated by $generator - do not modify.
- * Supported AMQP version:
- #foreach( $supportedVersion in $model.VersionSet )
- *   $supportedVersion.getMajor()-$supportedVersion.getMinor()
- #end
- */
- 
-package org.apache.qpid.framing;
-
-public interface MethodDispatcher extends
-                     ClientMethodDispatcher, ServerMethodDispatcher
-{
-}
+#set( $filename = "MethodDispatcher.java")
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+/*
+ * This file is auto-generated by $generator - do not modify.
+ * Supported AMQP version:
+ #foreach( $supportedVersion in $model.VersionSet )
+ *   $supportedVersion.getMajor()-$supportedVersion.getMinor()
+ #end
+ */
+
+package org.apache.qpid.framing;
+
+public interface MethodDispatcher extends
+                     ClientMethodDispatcher, ServerMethodDispatcher
+{
+}



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org