allow controlling response state and settlement, for use in transaction 
declare+commit etc


Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/9d40af8f
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/9d40af8f
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/9d40af8f

Branch: refs/heads/master
Commit: 9d40af8f1d94a7c2b9488def35938043ca03b44b
Parents: 63f843f
Author: Robert Gemmell <[email protected]>
Authored: Mon Nov 17 09:43:05 2014 +0000
Committer: Robert Gemmell <[email protected]>
Committed: Mon Nov 17 09:43:05 2014 +0000

----------------------------------------------------------------------
 .../qpid/jms/test/testpeer/TestAmqpPeer.java       | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/9d40af8f/qpid-jms-client/src/test/java/org/apache/qpid/jms/test/testpeer/TestAmqpPeer.java
----------------------------------------------------------------------
diff --git 
a/qpid-jms-client/src/test/java/org/apache/qpid/jms/test/testpeer/TestAmqpPeer.java
 
b/qpid-jms-client/src/test/java/org/apache/qpid/jms/test/testpeer/TestAmqpPeer.java
index 8f0eb8c..fb9e1b4 100644
--- 
a/qpid-jms-client/src/test/java/org/apache/qpid/jms/test/testpeer/TestAmqpPeer.java
+++ 
b/qpid-jms-client/src/test/java/org/apache/qpid/jms/test/testpeer/TestAmqpPeer.java
@@ -71,6 +71,7 @@ import org.apache.qpid.proton.amqp.Symbol;
 import org.apache.qpid.proton.amqp.UnsignedByte;
 import org.apache.qpid.proton.amqp.UnsignedInteger;
 import org.apache.qpid.proton.amqp.UnsignedShort;
+import org.apache.qpid.proton.amqp.transport.DeliveryState;
 import org.apache.qpid.proton.codec.Data;
 import org.apache.qpid.proton.engine.impl.AmqpHeader;
 import org.hamcrest.Matcher;
@@ -758,23 +759,29 @@ public class TestAmqpPeer implements AutoCloseable
 
     public void expectTransfer(Matcher<Binary> expectedPayloadMatcher)
     {
+        expectTransfer(expectedPayloadMatcher, new Accepted(), true);
+    }
+
+    //TODO: fix responseState to only admit applicable types.
+    public void expectTransfer(Matcher<Binary> expectedPayloadMatcher, 
ListDescribedType responseState, boolean responseSettled)
+    {
         final TransferMatcher transferMatcher = new TransferMatcher();
         transferMatcher.setPayloadMatcher(expectedPayloadMatcher);
 
-        final DispositionFrame dispositionFrame = new DispositionFrame()
+        final DispositionFrame dispositionResponse = new DispositionFrame()
                                                    .setRole(Role.RECEIVER)
-                                                   .setSettled(true)
-                                                   .setState(new Accepted());
+                                                   .setSettled(responseSettled)
+                                                   .setState(responseState);
 
         // The response frame channel will be dynamically set based on the 
incoming frame. Using the -1 is an illegal placeholder.
-        final FrameSender dispositionFrameSender = new FrameSender(this, 
FrameType.AMQP, -1, dispositionFrame, null);
+        final FrameSender dispositionFrameSender = new FrameSender(this, 
FrameType.AMQP, -1, dispositionResponse, null);
         dispositionFrameSender.setValueProvider(new ValueProvider()
         {
             @Override
             public void setValues()
             {
                 
dispositionFrameSender.setChannel(transferMatcher.getActualChannel());
-                
dispositionFrame.setFirst(transferMatcher.getReceivedDeliveryId());
+                
dispositionResponse.setFirst(transferMatcher.getReceivedDeliveryId());
             }
         });
         transferMatcher.onSuccess(dispositionFrameSender);


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to