You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ta...@apache.org on 2011/10/06 01:17:22 UTC
svn commit: r1179470 -
/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/util/TraceBrokerPathPlugin.java
Author: tabish
Date: Wed Oct 5 23:17:22 2011
New Revision: 1179470
URL: http://svn.apache.org/viewvc?rev=1179470&view=rev
Log:
fix for: https://issues.apache.org/jira/browse/AMQ-3524
Modified:
activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/util/TraceBrokerPathPlugin.java
Modified: activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/util/TraceBrokerPathPlugin.java
URL: http://svn.apache.org/viewvc/activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/util/TraceBrokerPathPlugin.java?rev=1179470&r1=1179469&r2=1179470&view=diff
==============================================================================
--- activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/util/TraceBrokerPathPlugin.java (original)
+++ activemq/trunk/activemq-core/src/main/java/org/apache/activemq/broker/util/TraceBrokerPathPlugin.java Wed Oct 5 23:17:22 2011
@@ -17,7 +17,6 @@
package org.apache.activemq.broker.util;
import java.io.IOException;
-import java.util.Map;
import org.apache.activemq.broker.BrokerPluginSupport;
import org.apache.activemq.command.MessageDispatch;
@@ -25,41 +24,44 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
- * The TraceBrokerPathPlugin can be used in a network of Brokers. Each Broker
- * that has the plugin configured, will add it's brokerName to the content
- * of a JMS Property. If all Brokers have this property enabled, the path the
+ * The TraceBrokerPathPlugin can be used in a network of Brokers. Each Broker
+ * that has the plugin configured, will add it's brokerName to the content
+ * of a JMS Property. If all Brokers have this property enabled, the path the
* message actually took through the network can be seen in the defined property.
- *
+ *
* @org.apache.xbean.XBean element="traceBrokerPathPlugin"
- *
- *
+ *
*/
-
+@SuppressWarnings("unchecked")
public class TraceBrokerPathPlugin extends BrokerPluginSupport {
- private String stampProperty = "BrokerPath";
+ private String stampProperty = "BrokerPath";
private static final Logger LOG = LoggerFactory.getLogger(TraceBrokerPathPlugin.class);
-
- public String getStampProperty() {
- return stampProperty;
- }
-
- public void setStampProperty(String stampProperty) {
- this.stampProperty = stampProperty;
- }
-
- public void preProcessDispatch(MessageDispatch messageDispatch) {
- try {
- String brokerStamp = (String)messageDispatch.getMessage().getProperty(getStampProperty());
- if (brokerStamp == null) {
- brokerStamp = getBrokerName();
- } else {
- brokerStamp += "," + getBrokerName();
- }
- messageDispatch.getMessage().setProperty(getStampProperty(), brokerStamp);
- } catch (IOException ioe) {
- LOG.warn("Setting broker property failed " + ioe, ioe);
- }
- super.preProcessDispatch(messageDispatch);
- }
+
+ public String getStampProperty() {
+ return stampProperty;
+ }
+
+ public void setStampProperty(String stampProperty) {
+ if (stampProperty != null && !stampProperty.isEmpty()) {
+ this.stampProperty = stampProperty;
+ }
+ }
+
+ public void preProcessDispatch(MessageDispatch messageDispatch) {
+ try {
+ if (messageDispatch != null && messageDispatch.getMessage() != null) {
+ String brokerStamp = (String)messageDispatch.getMessage().getProperty(getStampProperty());
+ if (brokerStamp == null) {
+ brokerStamp = getBrokerName();
+ } else {
+ brokerStamp += "," + getBrokerName();
+ }
+ messageDispatch.getMessage().setProperty(getStampProperty(), brokerStamp);
+ }
+ } catch (IOException ioe) {
+ LOG.warn("Setting broker property failed " + ioe, ioe);
+ }
+ super.preProcessDispatch(messageDispatch);
+ }
}