You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2014/09/29 18:27:02 UTC
[01/11] git commit: only set the message format property when using
the transformer proces that needs it
Repository: qpid-jms
Updated Branches:
refs/heads/master 52e02b692 -> a83589eac
only set the message format property when using the transformer proces that needs it
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/05b73e48
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/05b73e48
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/05b73e48
Branch: refs/heads/master
Commit: 05b73e484c746c39d57b953e640ea0ade23736a8
Parents: a1bcdbb
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 12:03:22 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../qpid/jms/provider/amqp/AmqpFixedProducer.java | 18 +++++++-----------
1 file changed, 7 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/05b73e48/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpFixedProducer.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpFixedProducer.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpFixedProducer.java
index 020b12f..4271fc9 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpFixedProducer.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpFixedProducer.java
@@ -131,20 +131,11 @@ public class AmqpFixedProducer extends AmqpProducer {
JmsMessage message = envelope.getMessage();
message.setReadOnlyBody(true);
- // TODO: why do we need this?
- // Possibly because AMQP spec "2.7.5 Transfer" says message format MUST be set on at least
- // the first Transfer frame of a message. That is on the encoded Transfer frames though and
- // this property isn't, but rather within the application-properties map. We should probably
- // ensure this elsewhere (appears Proton does so itself in TransportImpl#processTransportWorkSender)
- if (!message.getProperties().containsKey(MESSAGE_FORMAT_KEY)) {
- message.setProperty(MESSAGE_FORMAT_KEY, 0);
- }
-
if (facade instanceof AmqpJmsMessageFacade) {
AmqpJmsMessageFacade amqpMessage = (AmqpJmsMessageFacade) facade;
encodeAndSend(amqpMessage.getAmqpMessage(), delivery);
} else {
- encodeAndSend(envelope.getMessage(), delivery);
+ encodeAndSendTransformed(envelope.getMessage(), delivery);
}
if (presettle) {
@@ -186,7 +177,7 @@ public class AmqpFixedProducer extends AmqpProducer {
}
}
- private void encodeAndSend(JmsMessage message, Delivery delivery) throws IOException {
+ private void encodeAndSendTransformed(JmsMessage message, Delivery delivery) throws IOException, JMSException {
byte[] sendBuffer = null;
int sendBufferSize = 0;
@@ -194,6 +185,11 @@ public class AmqpFixedProducer extends AmqpProducer {
EncodedMessage amqp = null;
+ // Needed by the transformer process.
+ if (!message.getProperties().containsKey(MESSAGE_FORMAT_KEY)) {
+ message.setProperty(MESSAGE_FORMAT_KEY, 0);
+ }
+
try {
amqp = outboundTransformer.transform(message);
} catch (Exception e) {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[06/11] git commit: add toString for the selector filter
Posted by ro...@apache.org.
add toString for the selector filter
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/a1bcdbbe
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/a1bcdbbe
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/a1bcdbbe
Branch: refs/heads/master
Commit: a1bcdbbee7e136a1772a2cbb6a41ebcba46d025a
Parents: 6d80d99
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 12:01:44 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../org/apache/qpid/jms/provider/amqp/AmqpJmsSelectorType.java | 5 +++++
1 file changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/a1bcdbbe/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJmsSelectorType.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJmsSelectorType.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJmsSelectorType.java
index 021f943..c6c2601 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJmsSelectorType.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJmsSelectorType.java
@@ -39,4 +39,9 @@ public class AmqpJmsSelectorType implements DescribedType {
public Object getDescribed() {
return this.selector;
}
+
+ @Override
+ public String toString() {
+ return "AmqpJmsSelectorType{" + selector + "}";
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[04/11] git commit: fix empty list initialization on new stream
message facades
Posted by ro...@apache.org.
fix empty list initialization on new stream message facades
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/88945f1c
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/88945f1c
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/88945f1c
Branch: refs/heads/master
Commit: 88945f1ce77cc51dbe97fbb79c7edf1cf41d4fee
Parents: 52e02b6
Author: Robert Gemmell <ro...@apache.org>
Authored: Sat Sep 27 17:41:17 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../amqp/message/AmqpJmsStreamMessageFacade.java | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/88945f1c/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
index edf7ea0..0955aed 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
@@ -50,7 +50,7 @@ public class AmqpJmsStreamMessageFacade extends AmqpJmsMessageFacade implements
*/
public AmqpJmsStreamMessageFacade(AmqpConnection connection) {
super(connection);
- initializeEmptyList();
+ list = initializeEmptyList();
setAnnotation(JMS_MSG_TYPE, JMS_STREAM_MESSAGE);
}
@@ -69,12 +69,12 @@ public class AmqpJmsStreamMessageFacade extends AmqpJmsMessageFacade implements
Section body = getAmqpMessage().getBody();
if (body == null) {
- initializeEmptyList();
+ list = initializeEmptyList();
} else if (body instanceof AmqpValue) {
Object value = ((AmqpValue) body).getValue();
if (value == null) {
- initializeEmptyList();
+ list = initializeEmptyList();
} else if (value instanceof List) {
list = (List<Object>) value;
} else {
@@ -157,8 +157,10 @@ public class AmqpJmsStreamMessageFacade extends AmqpJmsMessageFacade implements
return list.isEmpty();
}
- private void initializeEmptyList() {
- List<Object> list = new ArrayList<Object>();
- message.setBody(new AmqpValue(list));
+ private List<Object> initializeEmptyList() {
+ List<Object> emptyList = new ArrayList<Object>();
+ message.setBody(new AmqpValue(emptyList));
+
+ return emptyList;
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[05/11] git commit: stop application properties being overwritten
when retrieving the contents from the facade
Posted by ro...@apache.org.
stop application properties being overwritten when retrieving the contents from the facade
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/66bc0033
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/66bc0033
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/66bc0033
Branch: refs/heads/master
Commit: 66bc0033e0b0ee13da95202b706491af09c1fe29
Parents: 161bba6
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 10:02:31 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../amqp/message/AmqpJmsMessageFacade.java | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/66bc0033/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
index 8d1b774..5a514b8 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
@@ -151,7 +151,7 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade {
@Override
public Map<String, Object> getProperties() throws JMSException {
- lazyCreateProperties();
+ lazyCreateApplicationProperties();
return Collections.unmodifiableMap(new HashMap<String, Object>(applicationPropertiesMap));
}
@@ -204,10 +204,7 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade {
}
public void setApplicationProperty(String key, Object value) throws JMSException {
- if (applicationPropertiesMap == null) {
- lazyCreateProperties();
- }
-
+ lazyCreateApplicationProperties();
applicationPropertiesMap.put(key, value);
}
@@ -300,7 +297,7 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade {
}
if (applicationPropertiesMap != null) {
- target.lazyCreateProperties();
+ target.lazyCreateApplicationProperties();
target.applicationPropertiesMap.putAll(applicationPropertiesMap);
}
@@ -809,8 +806,10 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade {
}
}
- private void lazyCreateProperties() {
- applicationPropertiesMap = new HashMap<String,Object>();
- message.setApplicationProperties(new ApplicationProperties(applicationPropertiesMap));
+ private void lazyCreateApplicationProperties() {
+ if (applicationPropertiesMap == null) {
+ applicationPropertiesMap = new HashMap<String, Object>();
+ message.setApplicationProperties(new ApplicationProperties(applicationPropertiesMap));
+ }
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[02/11] git commit: use the x-opt-jms-type annotation for
transmitting the JMSType header
Posted by ro...@apache.org.
use the x-opt-jms-type annotation for transmitting the JMSType header
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/6d80d99e
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/6d80d99e
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/6d80d99e
Branch: refs/heads/master
Commit: 6d80d99e29884230d5f1ba3be7f9d9968ef2911a
Parents: c294a3c
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 11:54:41 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java | 5 +++--
.../qpid/jms/provider/amqp/message/AmqpMessageSupport.java | 6 ++++--
2 files changed, 7 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6d80d99e/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
index 5a514b8..6f9cc97 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFacade.java
@@ -19,6 +19,7 @@ package org.apache.qpid.jms.provider.amqp.message;
import static org.apache.qpid.jms.provider.amqp.message.AmqpMessageSupport.JMS_AMQP_TTL;
import static org.apache.qpid.jms.provider.amqp.message.AmqpMessageSupport.JMS_MESSAGE;
import static org.apache.qpid.jms.provider.amqp.message.AmqpMessageSupport.JMS_MSG_TYPE;
+import static org.apache.qpid.jms.provider.amqp.message.AmqpMessageSupport.JMS_TYPE;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
@@ -495,12 +496,12 @@ public class AmqpJmsMessageFacade implements JmsMessageFacade {
@Override
public String getType() {
- return (String) getAnnotation(JMS_MSG_TYPE);
+ return (String) getAnnotation(JMS_TYPE);
}
@Override
public void setType(String type) {
- setAnnotation(JMS_MSG_TYPE, type);
+ setAnnotation(JMS_TYPE, type);
}
@Override
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/6d80d99e/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpMessageSupport.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpMessageSupport.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpMessageSupport.java
index 70b1c57..0812208 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpMessageSupport.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpMessageSupport.java
@@ -81,12 +81,14 @@ public final class AmqpMessageSupport {
public static final String JMS_APP_CORRELATION_ID = "x-opt-app-correlation-id";
/**
- * Attribute used to mark the JMSType value set on the message.
+ * Attribute used to mark the JMSType header string value set on the message by
+ * an application.
*/
public static final String JMS_TYPE = "x-opt-jms-type";
/**
- * Attribute used to mark the JMS Type that the message instance represents.
+ * Attribute used to mark the class type of JMS message that a particular message
+ * instance represents, used internally by the client.
*/
public static final String JMS_MSG_TYPE = "x-opt-jms-msg-type";
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[09/11] git commit: switch to using the the AMQP message facades
Posted by ro...@apache.org.
switch to using the the AMQP message facades
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/1b10a6a7
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/1b10a6a7
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/1b10a6a7
Branch: refs/heads/master
Commit: 1b10a6a72fd9ffe4e65f238570d954b2aee5a1fc
Parents: 9e3b5ec
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 12:16:07 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:16:24 2014 +0100
----------------------------------------------------------------------
.../qpid/jms/provider/amqp/AmqpJMSVendor.java | 4 ++--
.../amqp/message/AmqpJmsMessageFactory.java | 25 +++++---------------
2 files changed, 8 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1b10a6a7/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJMSVendor.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJMSVendor.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJMSVendor.java
index eba019e..fbe2b21 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJMSVendor.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpJMSVendor.java
@@ -34,9 +34,9 @@ import org.apache.qpid.jms.JmsQueue;
import org.apache.qpid.jms.JmsTemporaryQueue;
import org.apache.qpid.jms.JmsTemporaryTopic;
import org.apache.qpid.jms.JmsTopic;
-import org.apache.qpid.jms.message.JmsDefaultMessageFactory;
import org.apache.qpid.jms.message.JmsMessage;
import org.apache.qpid.jms.message.JmsMessageFactory;
+import org.apache.qpid.jms.provider.amqp.message.AmqpJmsMessageFactory;
import org.apache.qpid.proton.jms.JMSVendor;
/**
@@ -48,7 +48,7 @@ public class AmqpJMSVendor extends JMSVendor {
public static final AmqpJMSVendor INSTANCE = new AmqpJMSVendor();
- private final JmsMessageFactory factory = new JmsDefaultMessageFactory();
+ private final JmsMessageFactory factory = new AmqpJmsMessageFactory();
private AmqpJMSVendor() {
}
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/1b10a6a7/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFactory.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFactory.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFactory.java
index 882c2ac..3a918de 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFactory.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageFactory.java
@@ -31,12 +31,6 @@ import org.apache.qpid.jms.message.JmsStreamMessage;
import org.apache.qpid.jms.message.JmsTextMessage;
import org.apache.qpid.jms.message.facade.JmsObjectMessageFacade;
import org.apache.qpid.jms.message.facade.JmsTextMessageFacade;
-import org.apache.qpid.jms.message.facade.defaults.JmsDefaultBytesMessageFacade;
-import org.apache.qpid.jms.message.facade.defaults.JmsDefaultMapMessageFacade;
-import org.apache.qpid.jms.message.facade.defaults.JmsDefaultMessageFacade;
-import org.apache.qpid.jms.message.facade.defaults.JmsDefaultObjectMessageFacade;
-import org.apache.qpid.jms.message.facade.defaults.JmsDefaultStreamMessageFacade;
-import org.apache.qpid.jms.message.facade.defaults.JmsDefaultTextMessageFacade;
import org.apache.qpid.jms.provider.amqp.AmqpConnection;
/**
@@ -66,8 +60,7 @@ public class AmqpJmsMessageFactory implements JmsMessageFactory {
@Override
public JmsMessage createMessage() throws JMSException {
- //return new JmsMessage(new AmqpJmsMessageFacade(connection));
- return new JmsMessage(new JmsDefaultMessageFacade());
+ return new JmsMessage(new AmqpJmsMessageFacade(connection));
}
@Override
@@ -78,8 +71,7 @@ public class AmqpJmsMessageFactory implements JmsMessageFactory {
@Override
public JmsTextMessage createTextMessage(String payload) throws JMSException {
- // JmsTextMessageFacade facade = new AmqpJmsTextMessageFacade(connection);
- JmsTextMessageFacade facade = new JmsDefaultTextMessageFacade();
+ JmsTextMessageFacade facade = new AmqpJmsTextMessageFacade(connection);
if (payload != null) {
facade.setText(payload);
@@ -90,20 +82,17 @@ public class AmqpJmsMessageFactory implements JmsMessageFactory {
@Override
public JmsBytesMessage createBytesMessage() throws JMSException {
- // return new JmsBytesMessage(new AmqpJmsBytesMessageFacade(connection));
- return new JmsBytesMessage(new JmsDefaultBytesMessageFacade());
+ return new JmsBytesMessage(new AmqpJmsBytesMessageFacade(connection));
}
@Override
public JmsMapMessage createMapMessage() throws JMSException {
- // return new JmsMapMessage(new AmqpJmsMapMessageFacade(connection));
- return new JmsMapMessage(new JmsDefaultMapMessageFacade());
+ return new JmsMapMessage(new AmqpJmsMapMessageFacade(connection));
}
@Override
public JmsStreamMessage createStreamMessage() throws JMSException {
- // return new JmsStreamMessage(new AmqpJmsStreamMessageFacade(connection));
- return new JmsStreamMessage(new JmsDefaultStreamMessageFacade());
+ return new JmsStreamMessage(new AmqpJmsStreamMessageFacade(connection));
}
@Override
@@ -113,9 +102,7 @@ public class AmqpJmsMessageFactory implements JmsMessageFactory {
@Override
public JmsObjectMessage createObjectMessage(Serializable payload) throws JMSException {
-
- // JmsObjectMessageFacade facade = new AmqpJmsSerializedObjectMessageFacade(connection);
- JmsObjectMessageFacade facade = new JmsDefaultObjectMessageFacade();
+ JmsObjectMessageFacade facade = new AmqpJmsObjectMessageFacade(connection);
if (payload != null) {
try {
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[10/11] git commit: use AmqpJmsMessageBuilder to create incoming
messages, remove transformer usage
Posted by ro...@apache.org.
use AmqpJmsMessageBuilder to create incoming messages, remove transformer usage
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/9e3b5ecc
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/9e3b5ecc
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/9e3b5ecc
Branch: refs/heads/master
Commit: 9e3b5ecc8cedd4c93dde00a0ae282404e31c4fcb
Parents: 05b73e4
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 12:10:24 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:16:24 2014 +0100
----------------------------------------------------------------------
.../org/apache/qpid/jms/provider/amqp/AmqpConsumer.java | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/9e3b5ecc/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpConsumer.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpConsumer.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpConsumer.java
index d949b70..9c04a5a 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpConsumer.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/AmqpConsumer.java
@@ -32,6 +32,7 @@ import org.apache.qpid.jms.meta.JmsConsumerId;
import org.apache.qpid.jms.meta.JmsConsumerInfo;
import org.apache.qpid.jms.provider.AsyncResult;
import org.apache.qpid.jms.provider.ProviderConstants.ACK_TYPE;
+import org.apache.qpid.jms.provider.amqp.message.AmqpJmsMessageBuilder;
import org.apache.qpid.jms.provider.ProviderListener;
import org.apache.qpid.jms.util.IOExceptionSupport;
import org.apache.qpid.proton.amqp.Binary;
@@ -49,8 +50,7 @@ import org.apache.qpid.proton.amqp.transport.SenderSettleMode;
import org.apache.qpid.proton.engine.Delivery;
import org.apache.qpid.proton.engine.Receiver;
import org.apache.qpid.proton.jms.EncodedMessage;
-import org.apache.qpid.proton.jms.InboundTransformer;
-import org.apache.qpid.proton.jms.JMSMappingInboundTransformer;
+import org.apache.qpid.proton.message.Message;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -66,8 +66,6 @@ public class AmqpConsumer extends AbstractAmqpResource<JmsConsumerInfo, Receiver
protected static final Symbol JMS_SELECTOR_SYMBOL = Symbol.valueOf("jms-selector");
protected final AmqpSession session;
- protected final InboundTransformer inboundTransformer =
- new JMSMappingInboundTransformer(AmqpJMSVendor.INSTANCE);;
protected final Map<JmsInboundMessageDispatch, Delivery> delivered = new LinkedHashMap<JmsInboundMessageDispatch, Delivery>();
protected boolean presettle;
@@ -310,7 +308,10 @@ public class AmqpConsumer extends AbstractAmqpResource<JmsConsumerInfo, Receiver
EncodedMessage encoded = readIncomingMessage(incoming);
JmsMessage message = null;
try {
- message = (JmsMessage) inboundTransformer.transform(encoded);
+ Message protonMessage = Message.Factory.create();
+ protonMessage.decode(encoded.getArray(), encoded.getArrayOffset(), encoded.getLength());
+
+ message = (JmsMessage) AmqpJmsMessageBuilder.createJmsMessage(this, protonMessage);
} catch (Exception e) {
LOG.warn("Error on transform: {}", e.getMessage());
// TODO - We could signal provider error but not sure we want to fail
@@ -431,6 +432,7 @@ public class AmqpConsumer extends AbstractAmqpResource<JmsConsumerInfo, Receiver
buffer = streamBuffer.toByteArray();
try {
+ //TODO: get rid of EncodedMessage usage
return new EncodedMessage(incoming.getMessageFormat(), buffer, 0, buffer.length);
} finally {
streamBuffer.reset();
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[03/11] git commit: add some logging of test phases to aid debugging
Posted by ro...@apache.org.
add some logging of test phases to aid debugging
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/c294a3c7
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/c294a3c7
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/c294a3c7
Branch: refs/heads/master
Commit: c294a3c7e7b15d663529ec09febaaafa059cf772
Parents: 270765a
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 11:52:07 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../java/org/apache/qpid/jms/support/QpidJmsTestSupport.java | 6 ++++++
1 file changed, 6 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c294a3c7/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/support/QpidJmsTestSupport.java
----------------------------------------------------------------------
diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/support/QpidJmsTestSupport.java b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/support/QpidJmsTestSupport.java
index abb1bb4..509a551 100644
--- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/support/QpidJmsTestSupport.java
+++ b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/support/QpidJmsTestSupport.java
@@ -80,6 +80,7 @@ public class QpidJmsTestSupport {
@Before
public void setUp() throws Exception {
+ LOG.info("========== setUp " + getTestName() + " ==========");
exceptions.clear();
startPrimaryBroker();
this.numberOfMessages = 2000;
@@ -87,6 +88,7 @@ public class QpidJmsTestSupport {
@After
public void tearDown() throws Exception {
+ LOG.info("========== tearDown " + getTestName() + " ==========");
if (connection != null) {
connection.close();
}
@@ -444,4 +446,8 @@ public class QpidJmsTestSupport {
protected boolean isSendAcksAsync() {
return false;
}
+
+ protected String getTestName() {
+ return getClass().getSimpleName() + "." + name.getMethodName();
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[07/11] git commit: add support for [single] amqp-sequence bodies
Posted by ro...@apache.org.
add support for [single] amqp-sequence bodies
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/161bba63
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/161bba63
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/161bba63
Branch: refs/heads/master
Commit: 161bba63398f5f92083428d9509f6fbd02935c4b
Parents: 88945f1
Author: Robert Gemmell <ro...@apache.org>
Authored: Sat Sep 27 17:48:24 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../amqp/message/AmqpJmsMessageBuilder.java | 5 ++--
.../message/AmqpJmsStreamMessageFacade.java | 24 ++++++++++++++++----
2 files changed, 22 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/161bba63/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilder.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilder.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilder.java
index 9eeef20..889a27e 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilder.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsMessageBuilder.java
@@ -38,6 +38,7 @@ import org.apache.qpid.jms.message.JmsStreamMessage;
import org.apache.qpid.jms.message.JmsTextMessage;
import org.apache.qpid.jms.provider.amqp.AmqpConsumer;
import org.apache.qpid.proton.amqp.Binary;
+import org.apache.qpid.proton.amqp.messaging.AmqpSequence;
import org.apache.qpid.proton.amqp.messaging.AmqpValue;
import org.apache.qpid.proton.amqp.messaging.Data;
import org.apache.qpid.proton.amqp.messaging.Section;
@@ -143,8 +144,8 @@ public class AmqpJmsMessageBuilder {
} else {
return createObjectMessage(consumer, message);
}
- } else {
- // TODO: AmqpSequence support
+ } else if (body instanceof AmqpSequence) {
+ return createStreamMessage(consumer, message);
}
return null;
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/161bba63/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
index 0955aed..fae76e6 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpJmsStreamMessageFacade.java
@@ -29,6 +29,7 @@ import org.apache.qpid.jms.message.facade.JmsStreamMessageFacade;
import org.apache.qpid.jms.provider.amqp.AmqpConnection;
import org.apache.qpid.jms.provider.amqp.AmqpConsumer;
import org.apache.qpid.proton.amqp.Binary;
+import org.apache.qpid.proton.amqp.messaging.AmqpSequence;
import org.apache.qpid.proton.amqp.messaging.AmqpValue;
import org.apache.qpid.proton.amqp.messaging.Section;
import org.apache.qpid.proton.message.Message;
@@ -50,7 +51,7 @@ public class AmqpJmsStreamMessageFacade extends AmqpJmsMessageFacade implements
*/
public AmqpJmsStreamMessageFacade(AmqpConnection connection) {
super(connection);
- list = initializeEmptyList();
+ list = initializeEmptyBodyList(false);
setAnnotation(JMS_MSG_TYPE, JMS_STREAM_MESSAGE);
}
@@ -69,17 +70,25 @@ public class AmqpJmsStreamMessageFacade extends AmqpJmsMessageFacade implements
Section body = getAmqpMessage().getBody();
if (body == null) {
- list = initializeEmptyList();
+ list = initializeEmptyBodyList(false);
} else if (body instanceof AmqpValue) {
Object value = ((AmqpValue) body).getValue();
if (value == null) {
- list = initializeEmptyList();
+ list = initializeEmptyBodyList(false);
} else if (value instanceof List) {
list = (List<Object>) value;
} else {
throw new IllegalStateException("Unexpected amqp-value body content type: " + value.getClass().getSimpleName());
}
+ } else if (body instanceof AmqpSequence) {
+ List<?> value = ((AmqpSequence) body).getValue();
+
+ if (value == null) {
+ list = initializeEmptyBodyList(true);
+ } else {
+ list = (List<Object>) value;
+ }
} else {
throw new IllegalStateException("Unexpected message body type: " + body.getClass().getSimpleName());
}
@@ -157,9 +166,14 @@ public class AmqpJmsStreamMessageFacade extends AmqpJmsMessageFacade implements
return list.isEmpty();
}
- private List<Object> initializeEmptyList() {
+ private List<Object> initializeEmptyBodyList(boolean useSequenceBody) {
List<Object> emptyList = new ArrayList<Object>();
- message.setBody(new AmqpValue(emptyList));
+
+ if (useSequenceBody) {
+ message.setBody(new AmqpSequence(emptyList));
+ } else {
+ message.setBody(new AmqpValue(emptyList));
+ }
return emptyList;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[11/11] git commit: add temporary ignore on test
Posted by ro...@apache.org.
add temporary ignore on test
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/a83589ea
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/a83589ea
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/a83589ea
Branch: refs/heads/master
Commit: a83589eac5146dc9b443b4fe6d00fb18e90a09c3
Parents: 1b10a6a
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 17:08:02 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:16:25 2014 +0100
----------------------------------------------------------------------
.../apache/qpid/jms/transactions/JmsTransactedConsumerTest.java | 5 +++++
1 file changed, 5 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/a83589ea/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/transactions/JmsTransactedConsumerTest.java
----------------------------------------------------------------------
diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/transactions/JmsTransactedConsumerTest.java b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/transactions/JmsTransactedConsumerTest.java
index 49121ad..14632ed 100644
--- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/transactions/JmsTransactedConsumerTest.java
+++ b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/transactions/JmsTransactedConsumerTest.java
@@ -28,6 +28,7 @@ import javax.jms.TextMessage;
import org.apache.activemq.broker.jmx.QueueViewMBean;
import org.apache.qpid.jms.support.AmqpTestSupport;
+import org.junit.Ignore;
import org.junit.Test;
/**
@@ -167,6 +168,10 @@ public class JmsTransactedConsumerTest extends AmqpTestSupport {
assertEquals(0, proxy.getQueueSize());
}
+ @Ignore // TODO: failing because the broker appears to be setting the AMQP
+ // delivery-count header too high after the first rollback. It
+ // arrives null initially (i.e, default 0), then jumps to 2 causing
+ // JMSXDeliveryCount to be 3 rather than 2.
@Test(timeout=60000)
public void testJMSXDeliveryCount() throws Exception {
sendToAmqQueue(1);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org
[08/11] git commit: update provider factory error logging,
correct class and include exception toString as further aid
Posted by ro...@apache.org.
update provider factory error logging, correct class and include exception toString as further aid
Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/270765ac
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/270765ac
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/270765ac
Branch: refs/heads/master
Commit: 270765ac2bfb86be695a136ac47c2b5fb787751c
Parents: 66bc003
Author: Robert Gemmell <ro...@apache.org>
Authored: Mon Sep 29 10:39:25 2014 +0100
Committer: Robert Gemmell <ro...@apache.org>
Committed: Mon Sep 29 17:09:37 2014 +0100
----------------------------------------------------------------------
.../main/java/org/apache/qpid/jms/provider/ProviderFactory.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/270765ac/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFactory.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFactory.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFactory.java
index c07518e..f1c5dbd 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFactory.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/ProviderFactory.java
@@ -71,7 +71,7 @@ public abstract class ProviderFactory {
result = factory.createAsyncProvider(remoteURI);
result.connect();
} catch (Exception ex) {
- LOG.error("Failed to create BlockingProvider instance for: {}", remoteURI.getScheme());
+ LOG.error("Failed to create Provider instance for {}, due to: {}", remoteURI.getScheme(), ex);
LOG.trace("Error: ", ex);
throw ex;
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org