You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by or...@apache.org on 2019/08/28 06:38:11 UTC

[qpid-broker-j] 07/08: QPID-8349: [Tests][AMQP 1.0] Move open negotiation into Interaction

This is an automated email from the ASF dual-hosted git repository.

orudyy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-broker-j.git

commit 0578ed82ab314ba9b12bb0c7baf4ccf0f0bff056
Author: Alex Rudyy <or...@apache.org>
AuthorDate: Fri Aug 23 15:22:09 2019 +0100

    QPID-8349: [Tests][AMQP 1.0] Move open negotiation into Interaction
---
 .../tests/protocol/v1_0/ExistingQueueAdmin.java    |  7 +--
 .../qpid/tests/protocol/v1_0/Interaction.java      | 11 ++++
 .../org/apache/qpid/tests/protocol/v1_0/Utils.java | 11 +---
 .../qpid/tests/protocol/v1_0/DecodeErrorTest.java  | 12 +---
 .../anonymousterminus/AnonymousTerminusTest.java   |  4 +-
 .../bindmapjms/TemporaryDestinationTest.java       | 32 +++-------
 .../bindmapjms/TopicDestinationTest.java           | 16 ++---
 .../v1_0/extensions/filter/FilterTest.java         | 10 +---
 .../v1_0/extensions/management/ManagementTest.java |  7 +--
 .../extensions/qpid/message/MalformedMessage.java  |  6 +-
 .../extensions/qpid/queue/QueueDeletionTest.java   | 19 ++----
 .../transactiontimeout/TransactionTimeoutTest.java | 11 +---
 .../extensions/soleconn/CloseExistingPolicy.java   | 34 ++++-------
 .../v1_0/extensions/soleconn/MixedPolicy.java      | 27 ++++-----
 .../soleconn/RefuseConnectionPolicy.java           | 45 ++++++--------
 .../v1_0/extensions/websocket/WebSocketTest.java   | 10 ++--
 .../protocol/v1_0/messaging/DeleteOnCloseTest.java | 14 ++---
 .../protocol/v1_0/messaging/MessageFormat.java     |  4 +-
 .../protocol/v1_0/messaging/MultiTransferTest.java | 20 ++-----
 .../tests/protocol/v1_0/messaging/OutcomeTest.java |  8 +--
 .../protocol/v1_0/messaging/TransferTest.java      | 70 +++++++---------------
 .../protocol/v1_0/transaction/DischargeTest.java   | 16 ++---
 .../transaction/TransactionalTransferTest.java     | 52 ++++------------
 .../v1_0/transport/connection/IdleTimeoutTest.java |  6 +-
 .../v1_0/transport/connection/OpenTest.java        | 30 ++++------
 .../protocol/v1_0/transport/link/AttachTest.java   | 16 ++---
 .../protocol/v1_0/transport/link/FlowTest.java     | 34 ++++-------
 .../v1_0/transport/link/LinkStealingTest.java      |  7 +--
 .../v1_0/transport/link/ResumeDeliveriesTest.java  | 27 +++------
 .../protocol/v1_0/transport/session/BeginTest.java | 15 ++---
 30 files changed, 190 insertions(+), 391 deletions(-)

diff --git a/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/ExistingQueueAdmin.java b/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/ExistingQueueAdmin.java
index 648c03c..d6c4a2c 100644
--- a/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/ExistingQueueAdmin.java
+++ b/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/ExistingQueueAdmin.java
@@ -33,7 +33,6 @@ import org.apache.qpid.server.protocol.v1_0.type.messaging.Accepted;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.server.protocol.v1_0.type.transport.SenderSettleMode;
 import org.apache.qpid.server.util.StringUtil;
@@ -109,8 +108,7 @@ public class ExistingQueueAdmin implements QueueAdmin
         try (FrameTransport transport = new FrameTransport(brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
                        .attachName(ADMIN_LINK_NAME)
                        .attachRole(Role.SENDER)
@@ -152,8 +150,7 @@ public class ExistingQueueAdmin implements QueueAdmin
         try (FrameTransport transport = new FrameTransport(brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse()
+            interaction.negotiateOpen()
                        .begin().consumeResponse()
                        .attachName(ADMIN_LINK_NAME)
                        .attachRole(Role.RECEIVER)
diff --git a/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Interaction.java b/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Interaction.java
index 152b73d..ccebfda 100644
--- a/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Interaction.java
+++ b/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Interaction.java
@@ -1327,4 +1327,15 @@ public class Interaction extends AbstractInteraction<Interaction>
         return this;
     }
 
+    public Interaction negotiateOpen() throws Exception
+    {
+        sendOpen().consumeResponse(Open.class);
+        return this;
+    }
+
+    public Interaction sendOpen() throws Exception
+    {
+        negotiateProtocol().consumeResponse().open();
+        return this;
+    }
 }
diff --git a/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Utils.java b/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Utils.java
index cb55d7f..f76a1b4 100644
--- a/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Utils.java
+++ b/systests/protocol-tests-amqp-1-0/src/main/java/org/apache/qpid/tests/protocol/v1_0/Utils.java
@@ -33,9 +33,7 @@ import org.apache.qpid.server.protocol.v1_0.type.messaging.Header;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
-import org.apache.qpid.server.protocol.v1_0.type.transport.End;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.server.protocol.v1_0.type.transport.SenderSettleMode;
 import org.apache.qpid.tests.utils.BrokerAdmin;
@@ -48,8 +46,7 @@ public class Utils
         try (FrameTransport transport = new FrameTransport(brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            final Attach attachValidationResponse = interaction.negotiateProtocol().consumeResponse()
-                                                               .open().consumeResponse()
+            final Attach attachValidationResponse = interaction.negotiateOpen()
                                                                .begin().consumeResponse()
                                                                .attachName("validationAttach")
                                                                .attachRole(Role.RECEIVER)
@@ -77,8 +74,7 @@ public class Utils
         try (FrameTransport transport = new FrameTransport(brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse()
+            interaction.negotiateOpen()
                        .begin().consumeResponse()
                        .attachRole(Role.RECEIVER)
                        .attachName("utilsReceiverLink")
@@ -154,8 +150,7 @@ public class Utils
             try (FrameTransport transport = new FrameTransport(brokerAddress).connect())
             {
                 final Interaction interaction = transport.newInteraction();
-                interaction.negotiateProtocol().consumeResponse()
-                           .open().consumeResponse(Open.class)
+                interaction.negotiateOpen()
                            .begin().consumeResponse(Begin.class)
                            .attachName("utilsSenderLink")
                            .attachRole(Role.SENDER)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/DecodeErrorTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/DecodeErrorTest.java
index 9d189d5..f8695bc 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/DecodeErrorTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/DecodeErrorTest.java
@@ -53,7 +53,6 @@ import org.apache.qpid.server.protocol.v1_0.type.messaging.Target;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.utils.BrokerAdmin;
@@ -79,10 +78,7 @@ public class DecodeErrorTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
@@ -125,8 +121,7 @@ public class DecodeErrorTest extends BrokerAdminUsingTestBase
             source.setDynamicNodeProperties(Collections.singletonMap(Symbol.valueOf("lifetime-policy"),
                                                                      UnsignedInteger.MAX_VALUE));
             final Interaction interaction = transport.newInteraction()
-                                                        .negotiateProtocol().consumeResponse()
-                                                        .open().consumeResponse(Open.class)
+                                                        .negotiateOpen()
                                                         .begin().consumeResponse(Begin.class)
                                                         .attachSource(source)
                                                         .attachRole(Role.RECEIVER)
@@ -150,8 +145,7 @@ public class DecodeErrorTest extends BrokerAdminUsingTestBase
             target.setDynamicNodeProperties(Collections.singletonMap(Symbol.valueOf("supported-dist-modes"),
                                                                      UnsignedInteger.ZERO));
             final Interaction interaction = transport.newInteraction()
-                                                        .negotiateProtocol().consumeResponse()
-                                                        .open().consumeResponse(Open.class)
+                                                        .negotiateOpen()
                                                         .begin().consumeResponse(Begin.class)
                                                         .attachTarget(target)
                                                         .attachRole(Role.SENDER)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/anonymousterminus/AnonymousTerminusTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/anonymousterminus/AnonymousTerminusTest.java
index 58864b4..a0f244b 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/anonymousterminus/AnonymousTerminusTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/anonymousterminus/AnonymousTerminusTest.java
@@ -551,9 +551,7 @@ public class AnonymousTerminusTest extends BrokerAdminUsingTestBase
     private Interaction openInteractionWithAnonymousRelayCapability(final FrameTransport transport) throws Exception
     {
         final Interaction interaction = transport.newInteraction();
-        interaction.negotiateProtocol().consumeResponse()
-                   .openDesiredCapabilities(ANONYMOUS_RELAY)
-                   .open().consumeResponse(Open.class);
+        interaction.openDesiredCapabilities(ANONYMOUS_RELAY).negotiateOpen();
 
         Open open = interaction.getLatestResponse(Open.class);
         assumeThat(open.getOfferedCapabilities(), hasItemInArray((ANONYMOUS_RELAY)));
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TemporaryDestinationTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TemporaryDestinationTest.java
index bfa999a..daf6e9e 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TemporaryDestinationTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TemporaryDestinationTest.java
@@ -46,7 +46,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.Response;
 import org.apache.qpid.tests.protocol.SpecificationTest;
@@ -97,8 +96,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
             Target target = createTarget(targetCapabilities);
 
             final Interaction interaction = transport.newInteraction();
-            final Attach attachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach attachResponse = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachTarget(target)
@@ -148,8 +146,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
             final UnsignedInteger senderHandle = UnsignedInteger.ONE;
-            final Attach senderAttachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                           .open().consumeResponse(Open.class)
+            final Attach senderAttachResponse = interaction.negotiateOpen()
                                                            .begin().consumeResponse(Begin.class)
                                                            .attachRole(Role.SENDER)
                                                            .attachHandle(senderHandle)
@@ -209,8 +206,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
             final UnsignedInteger senderHandle = UnsignedInteger.ONE;
-            final Attach senderAttachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                           .open().consumeResponse(Open.class)
+            final Attach senderAttachResponse = interaction.negotiateOpen()
                                                            .begin().consumeResponse(Begin.class)
                                                            .attachRole(Role.SENDER)
                                                            .attachHandle(senderHandle)
@@ -249,8 +245,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
             final UnsignedInteger senderHandle = UnsignedInteger.ONE;
-            final Attach senderAttachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                           .open().consumeResponse(Open.class)
+            final Attach senderAttachResponse = interaction.negotiateOpen()
                                                            .begin().consumeResponse(Begin.class)
                                                            .attachRole(Role.SENDER)
                                                            .attachHandle(senderHandle)
@@ -305,8 +300,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
             final UnsignedInteger receiverHandle = UnsignedInteger.ONE;
-            final Attach receiverAttachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                             .open().consumeResponse(Open.class)
+            final Attach receiverAttachResponse = interaction.negotiateOpen()
                                                              .begin().consumeResponse(Begin.class)
                                                              .attachRole(Role.RECEIVER)
                                                              .attachSource(source)
@@ -370,8 +364,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
             final UnsignedInteger receiverHandle = UnsignedInteger.ONE;
-            final Attach receiverAttachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                             .open().consumeResponse(Open.class)
+            final Attach receiverAttachResponse = interaction.negotiateOpen()
                                                              .begin().consumeResponse(Begin.class)
                                                              .attachRole(Role.RECEIVER)
                                                              .attachSource(source)
@@ -412,8 +405,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
             final UnsignedInteger receiverHandle = UnsignedInteger.ONE;
-            final Attach receiverAttachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                             .open().consumeResponse(Open.class)
+            final Attach receiverAttachResponse = interaction.negotiateOpen()
                                                              .begin().consumeResponse(Begin.class)
                                                              .attachRole(Role.RECEIVER)
                                                              .attachSource(source)
@@ -438,10 +430,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            final Detach responseDetach = interaction.negotiateProtocol()
-                                                     .consumeResponse()
-                                                     .open()
-                                                     .consumeResponse(Open.class)
+            final Detach responseDetach = interaction.negotiateOpen()
                                                      .begin()
                                                      .consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
@@ -465,10 +454,7 @@ public class TemporaryDestinationTest extends BrokerAdminUsingTestBase
             target.setAddress(address);
 
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                        .consumeResponse()
-                        .open()
-                        .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                         .begin()
                         .consumeResponse(Begin.class)
                         .attachRole(Role.SENDER)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TopicDestinationTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TopicDestinationTest.java
index dde3e51..968de73 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TopicDestinationTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/bindmapjms/TopicDestinationTest.java
@@ -46,7 +46,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.AmqpError;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
@@ -87,8 +86,7 @@ public class TopicDestinationTest extends BrokerAdminUsingTestBase
             source.setDurable(TerminusDurability.NONE);
 
             final Interaction interaction = transport.newInteraction();
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSource(source)
@@ -122,8 +120,7 @@ public class TopicDestinationTest extends BrokerAdminUsingTestBase
             source.setDurable(TerminusDurability.UNSETTLED_STATE);
 
             final Interaction interaction = transport.newInteraction();
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSource(source)
@@ -158,8 +155,7 @@ public class TopicDestinationTest extends BrokerAdminUsingTestBase
             source.setDurable(TerminusDurability.NONE);
 
             final Interaction interaction = transport.newInteraction();
-            final Attach responseAttach1 = interaction.negotiateProtocol().consumeResponse()
-                                                      .open().consumeResponse(Open.class)
+            final Attach responseAttach1 = interaction.negotiateOpen()
                                                       .begin().consumeResponse(Begin.class)
                                                       .attachName(subscriptionName + "|global-volatile")
                                                       .attachHandle(UnsignedInteger.ZERO)
@@ -217,8 +213,7 @@ public class TopicDestinationTest extends BrokerAdminUsingTestBase
             source.setDurable(TerminusDurability.CONFIGURATION);
 
             final Interaction interaction = transport.newInteraction();
-            final Attach responseAttach1 = interaction.negotiateProtocol().consumeResponse()
-                                                      .open().consumeResponse(Open.class)
+            final Attach responseAttach1 = interaction.negotiateOpen()
                                                       .begin().consumeResponse(Begin.class)
                                                       .attachName(subscriptionName + "|global")
                                                       .attachHandle(UnsignedInteger.ZERO)
@@ -300,8 +295,7 @@ public class TopicDestinationTest extends BrokerAdminUsingTestBase
             source.setDurable(TerminusDurability.CONFIGURATION);
 
             final Interaction interaction = transport.newInteraction();
-            final Attach responseAttach1 = interaction.negotiateProtocol().consumeResponse()
-                                                      .open().consumeResponse(Open.class)
+            final Attach responseAttach1 = interaction.negotiateOpen()
                                                       .begin().consumeResponse(Begin.class)
                                                       .attachName(subscriptionName + "|global")
                                                       .attachHandle(UnsignedInteger.ZERO)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/filter/FilterTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/filter/FilterTest.java
index 527b20c..fd47982 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/filter/FilterTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/filter/FilterTest.java
@@ -51,7 +51,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.ReceiverSettleMode;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.SpecificationTest;
@@ -85,8 +84,7 @@ public class FilterTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
                        .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -110,8 +108,7 @@ public class FilterTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
                        .attachRole(Role.RECEIVER)
                        .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -154,8 +151,7 @@ public class FilterTest extends BrokerAdminUsingTestBase
             final Map<Symbol, Filter> filters = new HashMap<>();
             filters.put(Symbol.valueOf("selector-filter"), new JMSSelectorFilter("index=1"));
             filters.put(Symbol.valueOf("test-filter"), new TestFilter("foo"));
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/management/ManagementTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/management/ManagementTest.java
index 0025fb5..5034d6e 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/management/ManagementTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/management/ManagementTest.java
@@ -43,13 +43,11 @@ import org.apache.qpid.server.protocol.v1_0.type.messaging.TerminusExpiryPolicy;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.ReceiverSettleMode;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.protocol.v1_0.Interaction;
-import org.apache.qpid.tests.protocol.v1_0.Utils;
 import org.apache.qpid.tests.utils.BrokerAdmin;
 import org.apache.qpid.tests.utils.BrokerAdminUsingTestBase;
 
@@ -82,9 +80,8 @@ public class ManagementTest extends BrokerAdminUsingTestBase
             target.setCapabilities(new Symbol[]{Symbol.valueOf("temporary-queue")});
 
             final Interaction interaction = transport.newInteraction();
-            final Attach attachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                     .openHostname("$management")
-                                                     .open().consumeResponse(Open.class)
+            final Attach attachResponse = interaction.openHostname("$management")
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachTarget(target)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/message/MalformedMessage.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/message/MalformedMessage.java
index 296edf6..66fd9f3 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/message/MalformedMessage.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/message/MalformedMessage.java
@@ -46,7 +46,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.protocol.v1_0.Interaction;
@@ -76,10 +75,7 @@ public class MalformedMessage extends BrokerAdminUsingTestBase
         try (final FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/queue/QueueDeletionTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/queue/QueueDeletionTest.java
index dff32cc..ab67702 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/queue/QueueDeletionTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/queue/QueueDeletionTest.java
@@ -47,7 +47,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Error;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.ReceiverSettleMode;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.Response;
@@ -77,8 +76,7 @@ public class QueueDeletionTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Interaction interaction = transport.newInteraction();
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -103,10 +101,7 @@ public class QueueDeletionTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Interaction interaction = transport.newInteraction();
-            final Attach responseAttach = interaction.negotiateProtocol()
-                                                     .consumeResponse()
-                                                     .open()
-                                                     .consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin()
                                                      .consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
@@ -134,10 +129,7 @@ public class QueueDeletionTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
 
-            Attach attach = interaction.negotiateProtocol()
-                                       .consumeResponse()
-                                       .open()
-                                       .consumeResponse(Open.class)
+            Attach attach = interaction.negotiateOpen()
                                        .begin()
                                        .consumeResponse(Begin.class)
 
@@ -187,10 +179,7 @@ public class QueueDeletionTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            Attach attach = interaction.negotiateProtocol()
-                                       .consumeResponse()
-                                       .open()
-                                       .consumeResponse(Open.class)
+            Attach attach = interaction.negotiateOpen()
                                        .begin()
                                        .consumeResponse(Begin.class)
 
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/transactiontimeout/TransactionTimeoutTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/transactiontimeout/TransactionTimeoutTest.java
index 85dff52..3cf5a10 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/transactiontimeout/TransactionTimeoutTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/qpid/transactiontimeout/TransactionTimeoutTest.java
@@ -40,7 +40,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Close;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.ReceiverSettleMode;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.Response;
@@ -73,10 +72,7 @@ public class TransactionTimeoutTest extends BrokerAdminUsingTestBase
             final UnsignedInteger linkHandle = UnsignedInteger.ONE;
 
             final Interaction interaction = transport.newInteraction();
-            Disposition responseDisposition = interaction.negotiateProtocol()
-                                                         .consumeResponse()
-                                                         .open()
-                                                         .consumeResponse(Open.class)
+            Disposition responseDisposition = interaction.negotiateOpen()
                                                          .begin()
                                                          .consumeResponse(Begin.class)
 
@@ -114,10 +110,7 @@ public class TransactionTimeoutTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
 
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/CloseExistingPolicy.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/CloseExistingPolicy.java
index 0427c96..065cbbf 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/CloseExistingPolicy.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/CloseExistingPolicy.java
@@ -64,13 +64,12 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Open responseOpen = transport.newInteraction()
-                                         .negotiateProtocol().consumeResponse()
                                          .openContainerId("testContainerId")
                                          .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                          .openProperties(Collections.singletonMap(
                                                  SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                  CLOSE_EXISTING))
-                                         .open().consumeResponse()
+                                         .negotiateOpen()
                                          .getLatestResponse(Open.class);
 
             assumeSoleConnectionCapability(responseOpen);
@@ -91,12 +90,11 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport1 = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction1 = transport1.newInteraction();
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
+            interaction1.openContainerId("testContainerId")
                         .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                         .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                  CLOSE_EXISTING))
-                        .open().consumeResponse(Open.class);
+                        .negotiateOpen();
 
             final Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -105,12 +103,11 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
             try (FrameTransport transport2 = new FrameTransport(_brokerAddress).connect())
             {
                 final Interaction interaction2 = transport2.newInteraction();
-                interaction2.negotiateProtocol().consumeResponse()
-                            .openContainerId("testContainerId")
+                interaction2.openContainerId("testContainerId")
                             .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                             .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                      CLOSE_EXISTING))
-                            .open()
+                            .sendOpen()
                             .sync();
 
                 assertResourceLocked(interaction1.consumeResponse().getLatestResponse(Close.class));
@@ -130,9 +127,8 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
         {
             final Interaction interaction1 = transport1.newInteraction();
             // Omit setting the desired capability to test weak detection
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
-                        .open().consumeResponse(Open.class);
+            interaction1.openContainerId("testContainerId")
+                        .negotiateOpen();
 
             final Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -141,13 +137,11 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
             try (FrameTransport transport2 = new FrameTransport(_brokerAddress).connect())
             {
                 final Interaction interaction2 = transport2.newInteraction();
-                interaction2.negotiateProtocol().consumeResponse()
-                            .openContainerId("testContainerId")
+                interaction2.openContainerId("testContainerId")
                             .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                             .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                      CLOSE_EXISTING))
-                            .open()
-                            .consumeResponse(Open.class);
+                            .negotiateOpen();
 
                 final Open responseOpen2 = interaction2.getLatestResponse(Open.class);
                 assumeSoleConnectionCapability(responseOpen2);
@@ -164,13 +158,12 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport1 = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction1 = transport1.newInteraction();
-            Open responseOpen = interaction1.negotiateProtocol().consumeResponse()
-                                            .openContainerId("testContainerId")
+            Open responseOpen = interaction1.openContainerId("testContainerId")
                                             .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                             .openProperties(Collections.singletonMap(
                                                     SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                     CLOSE_EXISTING))
-                                            .open().consumeResponse()
+                                            .negotiateOpen()
                                             .getLatestResponse(Open.class);
 
             assumeSoleConnectionCapability(responseOpen);
@@ -181,9 +174,8 @@ public class CloseExistingPolicy extends BrokerAdminUsingTestBase
             {
                 final Interaction interaction2 = transport2.newInteraction();
                 // Omit setting the desired capability to test strong detection
-                interaction2.negotiateProtocol().consumeResponse()
-                            .openContainerId("testContainerId")
-                            .open().sync();
+                interaction2.openContainerId("testContainerId")
+                            .sendOpen().sync();
 
                 assertResourceLocked(interaction1.consumeResponse().getLatestResponse(Close.class));
                 assertSoleConnectionCapability(interaction2.consumeResponse().getLatestResponse(Open.class));
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/MixedPolicy.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/MixedPolicy.java
index 5e32c86..48b71a7 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/MixedPolicy.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/MixedPolicy.java
@@ -57,12 +57,11 @@ public class MixedPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport1 = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction1 = transport1.newInteraction();
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
+            interaction1.openContainerId("testContainerId")
                         .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                         .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                  CLOSE_EXISTING))
-                        .open().consumeResponse(Open.class);
+                        .negotiateOpen();
 
             Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -71,12 +70,11 @@ public class MixedPolicy extends BrokerAdminUsingTestBase
             try (FrameTransport transport2 = new FrameTransport(_brokerAddress).connect())
             {
                 final Interaction interaction2 = transport2.newInteraction();
-                interaction2.negotiateProtocol().consumeResponse()
-                            .openContainerId("testContainerId")
+                interaction2.openContainerId("testContainerId")
                             .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                             .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                      REFUSE_CONNECTION))
-                            .open().sync();
+                            .sendOpen().sync();
 
                 interaction1.consumeResponse(Close.class);
 
@@ -85,13 +83,11 @@ public class MixedPolicy extends BrokerAdminUsingTestBase
                 try (FrameTransport transport3 = new FrameTransport(_brokerAddress).connect())
                 {
                     final Interaction interaction3 = transport3.newInteraction();
-                    interaction3.negotiateProtocol().consumeResponse()
-                                .openContainerId("testContainerId")
+                    interaction3.openContainerId("testContainerId")
                                 .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                 .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                          CLOSE_EXISTING))
-                                .open()
-                                .consumeResponse(Open.class)
+                                .negotiateOpen()
                                 .consumeResponse(Close.class);
                 }
             }
@@ -104,12 +100,11 @@ public class MixedPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport1 = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction1 = transport1.newInteraction();
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
+            interaction1.openContainerId("testContainerId")
                         .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                         .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                  REFUSE_CONNECTION))
-                        .open().consumeResponse(Open.class);
+                        .negotiateOpen();
 
             final Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -118,13 +113,11 @@ public class MixedPolicy extends BrokerAdminUsingTestBase
             try (FrameTransport transport2 = new FrameTransport(_brokerAddress).connect())
             {
                 final Interaction interaction2 = transport2.newInteraction();
-                interaction2.negotiateProtocol().consumeResponse()
-                            .openContainerId("testContainerId")
+                interaction2.openContainerId("testContainerId")
                             .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                             .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                      CLOSE_EXISTING))
-                            .open()
-                            .consumeResponse(Open.class)
+                            .negotiateOpen()
                             .consumeResponse(Close.class);
             }
         }
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/RefuseConnectionPolicy.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/RefuseConnectionPolicy.java
index 08ebda1..5ea0e38 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/RefuseConnectionPolicy.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/soleconn/RefuseConnectionPolicy.java
@@ -64,13 +64,12 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect();)
         {
             final Interaction interaction = transport.newInteraction();
-            final Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                                 .openContainerId("testContainerId")
+            final Open responseOpen = interaction.openContainerId("testContainerId")
                                                  .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                                  .openProperties(Collections.singletonMap(
                                                          SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                          REFUSE_CONNECTION))
-                                                 .open().consumeResponse()
+                                                 .negotiateOpen()
                                                  .getLatestResponse(Open.class);
 
             assumeSoleConnectionCapability(responseOpen);
@@ -91,12 +90,11 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport1 = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction1 = transport1.newInteraction();
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
+            interaction1.openContainerId("testContainerId")
                         .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                         .openProperties(Collections.singletonMap(SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                  REFUSE_CONNECTION))
-                        .open().consumeResponse(Open.class);
+                        .negotiateOpen();
 
             final Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -105,13 +103,12 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
             try (FrameTransport transport2 = new FrameTransport(_brokerAddress).connect())
             {
                 final Interaction interaction2 = transport2.newInteraction();
-                final Open responseOpen2 = interaction2.negotiateProtocol().consumeResponse()
-                                                       .openContainerId("testContainerId")
+                final Open responseOpen2 = interaction2.openContainerId("testContainerId")
                                                        .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                                        .openProperties(Collections.singletonMap(
                                                                SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                REFUSE_CONNECTION))
-                                                       .open().consumeResponse()
+                                                       .negotiateOpen()
                                                        .getLatestResponse(Open.class);
 
                 assertConnectionEstablishmentFailed(responseOpen2);
@@ -128,9 +125,8 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
         {
             final Interaction interaction1 = transport1.newInteraction();
             // Omit setting the desired capability to test weak detection
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
-                        .open().consumeResponse(Open.class);
+            interaction1.openContainerId("testContainerId")
+                        .negotiateOpen();
 
             final Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -139,13 +135,12 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
             try (FrameTransport transport2 = new FrameTransport(_brokerAddress).connect())
             {
                 final Interaction interaction2 = transport2.newInteraction();
-                final Open responseOpen2 = interaction2.negotiateProtocol().consumeResponse()
-                                                       .openContainerId("testContainerId")
+                final Open responseOpen2 = interaction2.openContainerId("testContainerId")
                                                        .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                                        .openProperties(Collections.singletonMap(
                                                                SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                                REFUSE_CONNECTION))
-                                                       .open().consumeResponse()
+                                                       .negotiateOpen()
                                                        .getLatestResponse(Open.class);
 
                 assumeConnectionEstablishmentFailed(responseOpen2);
@@ -160,13 +155,12 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
         try (FrameTransport transport1 = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction1 = transport1.newInteraction();
-            final Open responseOpen = interaction1.negotiateProtocol().consumeResponse()
-                                                  .openContainerId("testContainerId")
+            final Open responseOpen = interaction1.openContainerId("testContainerId")
                                                   .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
                                                   .openProperties(Collections.singletonMap(
                                                           SOLE_CONNECTION_ENFORCEMENT_POLICY,
                                                           REFUSE_CONNECTION.getValue()))
-                                                  .open().consumeResponse()
+                                                  .negotiateOpen()
                                                   .getLatestResponse(Open.class);
 
             assumeSoleConnectionCapability(responseOpen);
@@ -177,9 +171,8 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
             {
                 final Interaction interaction2 = transport2.newInteraction();
                 // Omit setting the desired capability to test strong detection
-                final Open responseOpen2 = interaction2.negotiateProtocol().consumeResponse()
-                                                       .openContainerId("testContainerId")
-                                                       .open().consumeResponse()
+                final Open responseOpen2 = interaction2.openContainerId("testContainerId")
+                                                       .negotiateOpen()
                                                        .getLatestResponse(Open.class);
 
                 assertConnectionEstablishmentFailed(responseOpen2);
@@ -195,10 +188,9 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
         {
             final Interaction interaction1 = transport1.newInteraction();
             // Omit setting the enforcement policy explicitly. The default is refuse.
-            interaction1.negotiateProtocol().consumeResponse()
-                        .openContainerId("testContainerId")
+            interaction1.openContainerId("testContainerId")
                         .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
-                        .open().consumeResponse(Open.class);
+                        .negotiateOpen();
 
             final Open responseOpen = interaction1.getLatestResponse(Open.class);
             assumeSoleConnectionCapability(responseOpen);
@@ -208,10 +200,9 @@ public class RefuseConnectionPolicy extends BrokerAdminUsingTestBase
             {
                 final Interaction interaction2 = transport2.newInteraction();
                 // Omit setting the enforcement policy explicitly. The default is refuse.
-                final Open responseOpen2 = interaction2.negotiateProtocol().consumeResponse()
-                                                       .openContainerId("testContainerId")
+                final Open responseOpen2 = interaction2.openContainerId("testContainerId")
                                                        .openDesiredCapabilities(SOLE_CONNECTION_FOR_CONTAINER)
-                                                       .open().consumeResponse()
+                                                       .negotiateOpen()
                                                        .getLatestResponse(Open.class);
 
                 assertConnectionEstablishmentFailed(responseOpen2);
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/websocket/WebSocketTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/websocket/WebSocketTest.java
index e85f356..e7e9aed 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/websocket/WebSocketTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/extensions/websocket/WebSocketTest.java
@@ -39,11 +39,11 @@ import org.junit.Test;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 import org.apache.qpid.server.protocol.v1_0.type.UnsignedShort;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
+import org.apache.qpid.tests.protocol.SpecificationTest;
+import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.protocol.v1_0.Interaction;
 import org.apache.qpid.tests.utils.BrokerAdmin;
-import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.utils.BrokerAdminUsingTestBase;
-import org.apache.qpid.tests.protocol.SpecificationTest;
 
 public class WebSocketTest extends BrokerAdminUsingTestBase
 {
@@ -76,8 +76,7 @@ public class WebSocketTest extends BrokerAdminUsingTestBase
         {
             Interaction interaction = transport.newInteraction();
             final Open responseOpen = interaction
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse()
+                                               .negotiateOpen()
                                                .getLatestResponse(Open.class);
 
             assertThat(responseOpen.getContainerId(), is(notNullValue()));
@@ -101,8 +100,7 @@ public class WebSocketTest extends BrokerAdminUsingTestBase
         {
             Interaction interaction = transport.newInteraction();
             final Open responseOpen = interaction
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse()
+                                               .negotiateOpen()
                                                .getLatestResponse(Open.class);
 
             assertThat(responseOpen.getContainerId(), is(notNullValue()));
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/DeleteOnCloseTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/DeleteOnCloseTest.java
index 63f914f..01534ee 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/DeleteOnCloseTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/DeleteOnCloseTest.java
@@ -43,8 +43,8 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
+
 import org.apache.qpid.tests.protocol.Response;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
@@ -75,8 +75,7 @@ public class DeleteOnCloseTest extends BrokerAdminUsingTestBase
             source.setDynamicNodeProperties(Collections.singletonMap(Session_1_0.LIFETIME_POLICY, new DeleteOnClose()));
             source.setDynamic(true);
             final Interaction interaction = transport.newInteraction();
-            final Attach attachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach attachResponse = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSource(source)
@@ -111,8 +110,7 @@ public class DeleteOnCloseTest extends BrokerAdminUsingTestBase
             target.setDynamicNodeProperties(Collections.singletonMap(Session_1_0.LIFETIME_POLICY, new DeleteOnClose()));
             target.setDynamic(true);
             final Interaction interaction = transport.newInteraction();
-            final Attach attachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach attachResponse = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachTarget(target)
@@ -150,8 +148,7 @@ public class DeleteOnCloseTest extends BrokerAdminUsingTestBase
             source.setDynamicNodeProperties(Collections.singletonMap(Session_1_0.LIFETIME_POLICY, new DeleteOnClose()));
             source.setDynamic(true);
             final Interaction interaction = transport.newInteraction();
-            final Attach attachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach attachResponse = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSource(source)
@@ -195,8 +192,7 @@ public class DeleteOnCloseTest extends BrokerAdminUsingTestBase
             source.setExpiryPolicy(TerminusExpiryPolicy.NEVER);
             source.setDynamic(true);
             final Interaction interaction = transport.newInteraction();
-            final Attach attachResponse = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach attachResponse = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSource(source)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MessageFormat.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MessageFormat.java
index dfca049..f92beb1 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MessageFormat.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MessageFormat.java
@@ -35,7 +35,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
@@ -67,8 +66,7 @@ public class MessageFormat extends BrokerAdminUsingTestBase
             QpidByteBuffer[] payloads = Utils.splitPayload(getTestName(), 2);
 
             transport.newInteraction()
-                     .negotiateProtocol().consumeResponse()
-                     .open().consumeResponse(Open.class)
+                     .negotiateOpen()
                      .begin().consumeResponse(Begin.class)
                      .attachRole(Role.SENDER)
                      .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MultiTransferTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MultiTransferTest.java
index 96920c6..c9571df 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MultiTransferTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/MultiTransferTest.java
@@ -40,14 +40,9 @@ import org.apache.qpid.server.protocol.v1_0.type.UnsignedInteger;
 import org.apache.qpid.server.protocol.v1_0.type.messaging.Accepted;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Attach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Close;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
-import org.apache.qpid.server.protocol.v1_0.type.transport.End;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
-import org.apache.qpid.tests.protocol.ChannelClosedResponse;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.protocol.v1_0.Interaction;
@@ -83,8 +78,7 @@ public class MultiTransferTest extends BrokerAdminUsingTestBase
             final Binary deliveryTag = new Binary("testTransfer".getBytes(UTF_8));
 
             Interaction interaction = transport.newInteraction();
-            Disposition disposition = interaction.negotiateProtocol().consumeResponse()
-                                                 .open().consumeResponse(Open.class)
+            Disposition disposition = interaction.negotiateOpen()
                                                  .begin().consumeResponse(Begin.class)
                                                  .attachRole(Role.SENDER)
                                                  .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -129,8 +123,7 @@ public class MultiTransferTest extends BrokerAdminUsingTestBase
             final Binary deliveryTag = new Binary("testTransfer".getBytes(UTF_8));
 
             Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
                        .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -190,8 +183,7 @@ public class MultiTransferTest extends BrokerAdminUsingTestBase
             final Binary deliveryTag = new Binary("testTransfer".getBytes(UTF_8));
 
             Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
                        .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -241,8 +233,7 @@ public class MultiTransferTest extends BrokerAdminUsingTestBase
 
             Interaction interaction = transport.newInteraction();
 
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
 
                        .attachName("testLink1")
@@ -345,8 +336,7 @@ public class MultiTransferTest extends BrokerAdminUsingTestBase
 
             Interaction interaction = transport.newInteraction();
 
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
 
                        .attachRole(Role.SENDER)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/OutcomeTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/OutcomeTest.java
index 6fd1b58..f65ab0e 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/OutcomeTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/OutcomeTest.java
@@ -45,9 +45,9 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
+import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.protocol.v1_0.Interaction;
-import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.Utils;
 import org.apache.qpid.tests.utils.BrokerAdmin;
 import org.apache.qpid.tests.utils.BrokerAdminUsingTestBase;
@@ -76,8 +76,7 @@ public class OutcomeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -133,8 +132,7 @@ public class OutcomeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Interaction interaction = transport.newInteraction();
-            Disposition disposition = interaction.negotiateProtocol().consumeResponse()
-                                                 .open().consumeResponse(Open.class)
+            Disposition disposition = interaction.negotiateOpen()
                                                  .begin().consumeResponse(Begin.class)
                                                  .attachRole(Role.SENDER)
                                                  .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/TransferTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/TransferTest.java
index 9d81ee7..1142dfc 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/TransferTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/messaging/TransferTest.java
@@ -109,8 +109,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Interaction interact = transport.newInteraction();
-            Response<?> response = interact.negotiateProtocol().consumeResponse()
-                                           .open().consumeResponse(Open.class)
+            Response<?> response = interact.negotiateOpen()
                                            .begin().consumeResponse(Begin.class)
                                            .attachRole(Role.SENDER)
                                            .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -142,8 +141,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Interaction interact = transport.newInteraction();
-            Response<?> response = interact.negotiateProtocol().consumeResponse()
-                                           .open().consumeResponse(Open.class)
+            Response<?> response = interact.negotiateOpen()
                                            .begin().consumeResponse(Begin.class)
                                            .attachRole(Role.SENDER)
                                            .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -175,8 +173,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Interaction interaction = transport.newInteraction()
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse(Open.class)
+                                               .negotiateOpen()
                                                .begin().consumeResponse(Begin.class)
                                                .attachRole(Role.SENDER)
                                                .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -210,8 +207,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         {
             final UnsignedInteger linkHandle = UnsignedInteger.ONE;
             Disposition responseDisposition = transport.newInteraction()
-                                                       .negotiateProtocol().consumeResponse()
-                                                       .open().consumeResponse(Open.class)
+                                                       .negotiateOpen()
                                                        .begin().consumeResponse(Begin.class)
                                                        .attachRole(Role.SENDER)
                                                        .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -244,8 +240,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
             final UnsignedInteger link2Handle = UnsignedInteger.valueOf(2);
             final Binary deliveryTag = new Binary("deliveryTag".getBytes(StandardCharsets.UTF_8));
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                                     .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                                      .begin().consumeResponse(Begin.class)
 
                                      .attachName("test1")
@@ -302,8 +297,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Disposition responseDisposition = transport.newInteraction()
-                                                       .negotiateProtocol().consumeResponse()
-                                                       .open().consumeResponse(Open.class)
+                                                       .negotiateOpen()
                                                        .begin().consumeResponse(Begin.class)
                                                        .attachRole(Role.SENDER)
                                                        .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -335,8 +329,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             Response<?> response = transport.newInteraction()
-                                     .negotiateProtocol().consumeResponse()
-                                     .open().consumeResponse(Open.class)
+                                     .negotiateOpen()
                                      .begin().consumeResponse(Begin.class)
                                      .attachRole(Role.SENDER)
                                      .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -411,8 +404,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
             messageEncoder.setHeader(header);
             messageEncoder.addData(getTestName());
             final Disposition receivedDisposition = transport.newInteraction()
-                                                             .negotiateProtocol().consumeResponse()
-                                                             .open().consumeResponse(Open.class)
+                                                             .negotiateOpen()
                                                              .begin().consumeResponse(Begin.class)
                                                              .attachRole(Role.SENDER)
                                                              .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -459,8 +451,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
             messageEncoder.setHeader(header);
             messageEncoder.addData(getTestName());
             final Response<?> response = transport.newInteraction()
-                                                  .negotiateProtocol().consumeResponse()
-                                                  .open().consumeResponse(Open.class)
+                                                  .negotiateOpen()
                                                   .begin().consumeResponse(Begin.class)
                                                   .attachRole(Role.SENDER)
                                                   .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -504,8 +495,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -543,8 +533,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -579,8 +568,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -626,8 +614,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -684,8 +671,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -802,8 +788,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -845,10 +830,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
             final Binary deliveryTag = new Binary("testDeliveryTag".getBytes(UTF_8));
 
             Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
@@ -909,10 +891,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
             final Binary deliveryTag = new Binary("testDeliveryTag".getBytes(UTF_8));
 
             Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
                        .attachRole(Role.SENDER)
@@ -953,8 +932,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
             final Binary deliveryTag = new Binary("testDeliveryTag".getBytes(UTF_8));
 
             Interaction interaction = transport.newInteraction();
-            Open open = interaction.negotiateProtocol().consumeResponse()
-                                   .open().consumeResponse(Open.class)
+            Open open = interaction.negotiateOpen()
                                    .getLatestResponse(Open.class);
 
             long maxFrameSize = open.getMaxFrameSize() == null ? Integer.MAX_VALUE : open.getMaxFrameSize().longValue();
@@ -1020,8 +998,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -1062,8 +1039,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         final String[] contents = Utils.createTestMessageContents(3, getTestName());
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
-            final Interaction interaction = transport.newInteraction().negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Interaction interaction = transport.newInteraction().negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachTargetAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -1111,8 +1087,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -1163,8 +1138,7 @@ public class TransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/DischargeTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/DischargeTest.java
index f14a306..3fecc02 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/DischargeTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/DischargeTest.java
@@ -50,7 +50,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Error;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.ReceiverSettleMode;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Transfer;
@@ -84,8 +83,7 @@ public class DischargeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
 
                        .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected, Rejected.REJECTED_SYMBOL)
@@ -117,8 +115,7 @@ public class DischargeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                                           .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                                            .begin().consumeResponse(Begin.class)
                                            .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected, Accepted.ACCEPTED_SYMBOL)
                                            .txnDeclare();
@@ -149,8 +146,7 @@ public class DischargeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
 
                        .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected)
@@ -207,8 +203,7 @@ public class DischargeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
 
                        .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected)
@@ -248,8 +243,7 @@ public class DischargeTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class)
 
                        .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/TransactionalTransferTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/TransactionalTransferTest.java
index 938e144..d215d91 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/TransactionalTransferTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transaction/TransactionalTransferTest.java
@@ -53,7 +53,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.End;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Error;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.ReceiverSettleMode;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Transfer;
@@ -88,10 +87,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
             final UnsignedInteger linkHandle = UnsignedInteger.ONE;
 
             final Interaction interaction = transport.newInteraction();
-            Disposition responseDisposition = interaction.negotiateProtocol()
-                                                         .consumeResponse()
-                                                         .open()
-                                                         .consumeResponse(Open.class)
+            Disposition responseDisposition = interaction.negotiateOpen()
                                                          .begin()
                                                          .consumeResponse(Begin.class)
 
@@ -136,10 +132,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
             final UnsignedInteger linkHandle = UnsignedInteger.ONE;
 
             final Interaction interaction = transport.newInteraction();
-            Disposition responseDisposition = interaction.negotiateProtocol()
-                                                         .consumeResponse()
-                                                         .open()
-                                                         .consumeResponse(Open.class)
+            Disposition responseDisposition = interaction.negotiateOpen()
                                                          .begin()
                                                          .consumeResponse(Begin.class)
 
@@ -186,10 +179,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
             final UnsignedInteger linkHandle = UnsignedInteger.ONE;
 
             final Interaction interaction = transport.newInteraction();
-            Disposition responseDisposition = interaction.negotiateProtocol()
-                                                         .consumeResponse()
-                                                         .open()
-                                                         .consumeResponse(Open.class)
+            Disposition responseDisposition = interaction.negotiateOpen()
                                                          .begin()
                                                          .consumeResponse(Begin.class)
 
@@ -243,8 +233,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
 
             final Interaction interaction = transport.newInteraction();
 
-            ErrorCarryingFrameBody response = interaction.negotiateProtocol().consumeResponse()
-                                              .open().consumeResponse(Open.class)
+            ErrorCarryingFrameBody response = interaction.negotiateOpen()
                                               .begin().consumeResponse(Begin.class)
 
                                               .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected)
@@ -280,10 +269,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         {
             final Interaction interaction = transport.newInteraction();
 
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
 
@@ -329,10 +315,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
 
@@ -385,8 +368,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            List<Transfer> transfers = interaction.negotiateProtocol().consumeResponse()
-                                                  .open().consumeResponse(Open.class)
+            List<Transfer> transfers = interaction.negotiateOpen()
                                                   .begin().consumeResponse(Begin.class)
 
                                                   .txnAttachCoordinatorLink(UnsignedInteger.ZERO, this::coordinatorAttachExpected)
@@ -443,10 +425,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
 
@@ -504,10 +483,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
 
@@ -570,10 +546,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
-                       .open()
-                       .consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
 
@@ -635,10 +608,7 @@ public class TransactionalTransferTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            ErrorCarryingFrameBody response = interaction.negotiateProtocol()
-                                              .consumeResponse()
-                                              .open()
-                                              .consumeResponse(Open.class)
+            ErrorCarryingFrameBody response = interaction.negotiateOpen()
                                               .begin()
                                               .consumeResponse(Begin.class)
 
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/IdleTimeoutTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/IdleTimeoutTest.java
index bcfa4a5..d024cab 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/IdleTimeoutTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/IdleTimeoutTest.java
@@ -59,9 +59,8 @@ public class IdleTimeoutTest extends BrokerAdminUsingTestBase
         {
             Interaction interaction = transport.newInteraction();
             Open responseOpen = interaction
-                    .negotiateProtocol().consumeResponse()
                     .openContainerId("testContainerId")
-                    .open().consumeResponse()
+                    .negotiateOpen()
                     .getLatestResponse(Open.class);
             assertThat(responseOpen.getIdleTimeOut().intValue(), is(equalTo(IDLE_TIMEOUT_MS)));
 
@@ -80,10 +79,9 @@ public class IdleTimeoutTest extends BrokerAdminUsingTestBase
         {
             Interaction interaction = transport.newInteraction();
             Open responseOpen = interaction
-                    .negotiateProtocol().consumeResponse()
                     .openContainerId("testContainerId")
                     .openIdleTimeOut(IDLE_TIMEOUT_MS)
-                    .open().consumeResponse()
+                    .negotiateOpen()
                     .getLatestResponse(Open.class);
             assertThat(responseOpen.getIdleTimeOut().intValue(), is(equalTo(IDLE_TIMEOUT_MS)));
 
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/OpenTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/OpenTest.java
index f20b8c0..b607ca5 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/OpenTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/connection/OpenTest.java
@@ -64,9 +64,8 @@ public class OpenTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                           .openContainerId(null)
-                                           .open().consumeResponse()
+            Open responseOpen = interaction.openContainerId(null)
+                                           .negotiateOpen()
                                            .getLatestResponse(Open.class);
             assertThat(responseOpen.getContainerId(), is(notNullValue()));
 
@@ -92,9 +91,8 @@ public class OpenTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction();
-            final Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                                 .openContainerId("testContainerId")
-                                                 .open().consumeResponse()
+            final Open responseOpen = interaction.openContainerId("testContainerId")
+                                                 .negotiateOpen()
                                                  .getLatestResponse(Open.class);
 
             assertThat(responseOpen.getContainerId(), is(notNullValue()));
@@ -118,9 +116,8 @@ public class OpenTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .openContainerId("testContainerId")
-                       .open().consumeResponse(Open.class)
+            interaction.openContainerId("testContainerId")
+                       .negotiateOpen()
                        .emptyFrame()
                        .doCloseConnection();
         }
@@ -136,10 +133,9 @@ public class OpenTest extends BrokerAdminUsingTestBase
         {
             Interaction interaction = transport.newInteraction();
             final int idleTimeOut = 1000;
-            Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                           .openContainerId("testContainerId")
+            Open responseOpen = interaction.openContainerId("testContainerId")
                                            .openIdleTimeOut(idleTimeOut)
-                                           .open().consumeResponse()
+                                           .negotiateOpen()
                                            .getLatestResponse(Open.class);
 
             final UnsignedInteger peerIdleTimeOut = responseOpen.getIdleTimeOut();
@@ -164,10 +160,9 @@ public class OpenTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                           .openContainerId("testContainerId")
+            Open responseOpen = interaction.openContainerId("testContainerId")
                                            .connectionChannel(UnsignedShort.valueOf((short) 1))
-                                           .open().consumeResponse()
+                                           .negotiateOpen()
                                            .getLatestResponse(Open.class);
             assertThat(responseOpen.getContainerId(), is(notNullValue()));
 
@@ -192,10 +187,9 @@ public class OpenTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                           .openContainerId("testContainerId")
+            Open responseOpen = interaction.openContainerId("testContainerId")
                                            .openHostname("non-existing-virtual-host-" + System.currentTimeMillis())
-                                           .open().consumeResponse()
+                                           .negotiateOpen()
                                            .getLatestResponse(Open.class);
             assertThat(responseOpen.getContainerId(), is(notNullValue()));
 
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/AttachTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/AttachTest.java
index a6caac1..b79fc3a 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/AttachTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/AttachTest.java
@@ -42,7 +42,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Begin;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.End;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Error;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.Response;
 import org.apache.qpid.tests.protocol.SpecificationTest;
@@ -63,8 +62,7 @@ public class AttachTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Response<?> response = transport.newInteraction()
-                                                  .negotiateProtocol().consumeResponse()
-                                                  .open().consumeResponse(Open.class)
+                                                  .negotiateOpen()
                                                   .begin().consumeResponse(Begin.class)
                                                   .attachRole(null)
                                                   .attachHandle(null)
@@ -93,8 +91,7 @@ public class AttachTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Attach responseAttach = transport.newInteraction()
-                                                   .negotiateProtocol().consumeResponse()
-                                                   .open().consumeResponse(Open.class)
+                                                   .negotiateOpen()
                                                    .begin().consumeResponse(Begin.class)
                                                    .attachRole(Role.SENDER)
                                                    .attachInitialDeliveryCount(UnsignedInteger.ZERO)
@@ -121,8 +118,7 @@ public class AttachTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Attach responseAttach = transport.newInteraction()
-                                                   .negotiateProtocol().consumeResponse()
-                                                   .open().consumeResponse(Open.class)
+                                                   .negotiateOpen()
                                                    .begin().consumeResponse(Begin.class)
                                                    .attachRole(Role.RECEIVER)
                                                    .attachSourceAddress(queueName)
@@ -150,8 +146,7 @@ public class AttachTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction();
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(queueName)
@@ -193,8 +188,7 @@ public class AttachTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction();
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachSource(null)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/FlowTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/FlowTest.java
index 747fc02..5c62b85 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/FlowTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/FlowTest.java
@@ -43,7 +43,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.End;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Error;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.server.protocol.v1_0.type.transport.SessionError;
 import org.apache.qpid.tests.protocol.Response;
@@ -66,8 +65,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Response<?> response = transport.newInteraction()
-                                                  .negotiateProtocol().consumeResponse()
-                                                  .open().consumeResponse(Open.class)
+                                                  .negotiateOpen()
                                                   .begin().consumeResponse(Begin.class)
                                                   .flowIncomingWindow(null)
                                                   .flowNextIncomingId(null)
@@ -95,8 +93,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Flow responseFlow = transport.newInteraction()
-                                         .negotiateProtocol().consumeResponse()
-                                         .open().consumeResponse(Open.class)
+                                         .negotiateOpen()
                                          .begin().consumeResponse(Begin.class)
                                          .flowEcho(true)
                                          .flowOutgoingWindow(UnsignedInteger.ZERO)
@@ -123,8 +120,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Flow responseFlow = transport.newInteraction()
-                                         .negotiateProtocol().consumeResponse()
-                                         .open().consumeResponse(Open.class)
+                                         .negotiateOpen()
                                          .begin().consumeResponse(Begin.class)
                                          .attachRole(Role.RECEIVER)
                                          .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -157,8 +153,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse()
+            interaction.negotiateOpen()
                        .begin().consumeResponse()
                        .attachRole(Role.RECEIVER)
                        .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -196,8 +191,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Flow responseFlow = transport.newInteraction()
-                                         .negotiateProtocol().consumeResponse()
-                                         .open().consumeResponse(Open.class)
+                                         .negotiateOpen()
                                          .begin().consumeResponse(Begin.class)
                                          .attachRole(Role.RECEIVER)
                                          .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -228,8 +222,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             End responseEnd = transport.newInteraction()
-                                       .negotiateProtocol().consumeResponse()
-                                       .open().consumeResponse(Open.class)
+                                       .negotiateOpen()
                                        .begin().consumeResponse(Begin.class)
                                        .flowEcho(true)
                                        .flowIncomingWindow(UnsignedInteger.ONE)
@@ -260,8 +253,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction()
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse(Open.class)
+                                               .negotiateOpen()
                                                .begin().consumeResponse(Begin.class)
                                                .attachRole(Role.RECEIVER)
                                                .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -315,8 +307,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction()
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse(Open.class)
+                                               .negotiateOpen()
                                                .begin().consumeResponse(Begin.class)
                                                .attachRole(Role.RECEIVER)
                                                .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -387,8 +378,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction()
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse(Open.class)
+                                               .negotiateOpen()
                                                .begin().consumeResponse(Begin.class)
                                                .attachRole(Role.RECEIVER)
                                                .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -454,8 +444,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction()
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse(Open.class)
+                                               .negotiateOpen()
                                                .begin().consumeResponse(Begin.class)
                                                .attachRole(Role.RECEIVER)
                                                .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -545,8 +534,7 @@ public class FlowTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(addr).connect())
         {
             Interaction interaction = transport.newInteraction()
-                                               .negotiateProtocol().consumeResponse()
-                                               .open().consumeResponse(Open.class)
+                                               .negotiateOpen()
                                                .begin().consumeResponse(Begin.class)
                                                .attachRole(Role.RECEIVER)
                                                .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/LinkStealingTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/LinkStealingTest.java
index fabcfa9..e4feb26 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/LinkStealingTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/LinkStealingTest.java
@@ -40,7 +40,6 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.Detach;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Disposition;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Flow;
 import org.apache.qpid.server.protocol.v1_0.type.transport.LinkError;
-import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Role;
 import org.apache.qpid.tests.protocol.SpecificationTest;
 import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
@@ -67,8 +66,7 @@ public class LinkStealingTest extends BrokerAdminUsingTestBase
         {
             final Interaction interaction = transport.newInteraction();
             final Attach responseAttach = interaction
-                    .negotiateProtocol().consumeResponse()
-                    .open().consumeResponse(Open.class)
+                    .negotiateOpen()
                     .begin().consumeResponse(Begin.class)
                     .attachRole(Role.SENDER)
                     .attachInitialDeliveryCount(UnsignedInteger.ZERO)
@@ -106,8 +104,7 @@ public class LinkStealingTest extends BrokerAdminUsingTestBase
         {
             final Interaction interaction = transport.newInteraction();
             final String linkName = "test";
-            final Attach responseAttach = interaction.negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse(Open.class)
+            final Attach responseAttach = interaction.negotiateOpen()
                                                      .begin().consumeResponse(Begin.class)
                                                      .attachRole(Role.SENDER)
                                                      .attachName(linkName)
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/ResumeDeliveriesTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/ResumeDeliveriesTest.java
index e8b6160..30c12ff 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/ResumeDeliveriesTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/link/ResumeDeliveriesTest.java
@@ -103,8 +103,7 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
 
             final UnsignedInteger linkHandle1 = UnsignedInteger.ZERO;
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class);
 
             // 1. attach with ReceiverSettleMode.SECOND
@@ -161,11 +160,10 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse();
 
             // 0. Open connection with small max-frame-size
             final Open open = interaction.openMaxFrameSize(UnsignedInteger.valueOf(MIN_MAX_FRAME_SIZE))
-                                         .open().consumeResponse()
+                                         .negotiateOpen()
                                          .getLatestResponse(Open.class);
             interaction.begin().consumeResponse(Begin.class);
 
@@ -256,11 +254,10 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse();
 
             // 0. Open connection with small max-frame-size
             final Open open = interaction.openMaxFrameSize(UnsignedInteger.valueOf(MIN_MAX_FRAME_SIZE))
-                                         .open().consumeResponse()
+                                         .negotiateOpen()
                                          .getLatestResponse(Open.class);
             interaction.begin().consumeResponse(Begin.class);
 
@@ -347,11 +344,9 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
             //    with rcv-settle-mode=second, snd-settle-mode=unsettled,
             //    flow with incoming-window=MAX_INTEGER and link-credit=MAX_INTEGER
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol()
-                       .consumeResponse()
+            interaction.consumeResponse()
                        .openMaxFrameSize(UnsignedInteger.valueOf(MIN_MAX_FRAME_SIZE))
-                       .open()
-                       .consumeResponse()
+                       .negotiateOpen()
                        .begin()
                        .consumeResponse(Begin.class)
                        .attachRole(Role.RECEIVER)
@@ -462,8 +457,7 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -514,8 +508,7 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -600,8 +593,7 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
         try (FrameTransport transport = new FrameTransport(_brokerAddress).connect())
         {
             final Interaction interaction = transport.newInteraction()
-                                                     .negotiateProtocol().consumeResponse()
-                                                     .open().consumeResponse()
+                                                     .negotiateOpen()
                                                      .begin().consumeResponse()
                                                      .attachRole(Role.RECEIVER)
                                                      .attachSourceAddress(BrokerAdmin.TEST_QUEUE_NAME)
@@ -686,8 +678,7 @@ public class ResumeDeliveriesTest extends BrokerAdminUsingTestBase
 
             final UnsignedInteger linkHandle1 = UnsignedInteger.ZERO;
             final Interaction interaction = transport.newInteraction();
-            interaction.negotiateProtocol().consumeResponse()
-                       .open().consumeResponse(Open.class)
+            interaction.negotiateOpen()
                        .begin().consumeResponse(Begin.class);
 
             // 1. attach with ReceiverSettleMode.SECOND
diff --git a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/session/BeginTest.java b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/session/BeginTest.java
index e05de00..320294a 100644
--- a/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/session/BeginTest.java
+++ b/systests/protocol-tests-amqp-1-0/src/test/java/org/apache/qpid/tests/protocol/v1_0/transport/session/BeginTest.java
@@ -43,11 +43,11 @@ import org.apache.qpid.server.protocol.v1_0.type.transport.End;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Error;
 import org.apache.qpid.server.protocol.v1_0.type.transport.Open;
 import org.apache.qpid.tests.protocol.Response;
+import org.apache.qpid.tests.protocol.SpecificationTest;
+import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.protocol.v1_0.Interaction;
 import org.apache.qpid.tests.utils.BrokerAdmin;
-import org.apache.qpid.tests.protocol.v1_0.FrameTransport;
 import org.apache.qpid.tests.utils.BrokerAdminUsingTestBase;
-import org.apache.qpid.tests.protocol.SpecificationTest;
 
 public class BeginTest extends BrokerAdminUsingTestBase
 {
@@ -60,8 +60,7 @@ public class BeginTest extends BrokerAdminUsingTestBase
         try(FrameTransport transport = new FrameTransport(addr).connect())
         {
             final Response<?> response =  transport.newInteraction()
-                                           .negotiateProtocol().consumeResponse()
-                                           .open().consumeResponse(Open.class)
+                                           .negotiateOpen()
                                            .beginNextOutgoingId(null)
                                            .beginIncomingWindow(null)
                                            .beginOutgoingWindow(null)
@@ -89,8 +88,7 @@ public class BeginTest extends BrokerAdminUsingTestBase
             final UnsignedShort channel = UnsignedShort.valueOf(37);
             Interaction interaction = transport.newInteraction();
             Begin responseBegin = interaction
-                                           .negotiateProtocol().consumeResponse()
-                                           .open().consumeResponse(Open.class)
+                                           .negotiateOpen()
                                            .sessionChannel(channel)
                                            .begin().consumeResponse()
                                            .getLatestResponse(Begin.class);
@@ -116,9 +114,8 @@ public class BeginTest extends BrokerAdminUsingTestBase
         {
             final Interaction interaction = transport.newInteraction();
             final int ourChannelMax = 5;
-            final Open responseOpen = interaction.negotiateProtocol().consumeResponse()
-                                                 .openChannelMax(UnsignedShort.valueOf(ourChannelMax))
-                                                 .open().consumeResponse(Open.class).getLatestResponse(Open.class);
+            final Open responseOpen = interaction.openChannelMax(UnsignedShort.valueOf(ourChannelMax))
+                                                 .negotiateOpen().getLatestResponse(Open.class);
 
             final UnsignedShort remoteChannelMax = responseOpen.getChannelMax();
             assumeThat(remoteChannelMax, is(notNullValue()));


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