You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2013/09/26 21:44:06 UTC
svn commit: r1526658 - in
/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms:
MessageRejectedException.java impl/MessageProducerImpl.java
Author: rgodfrey
Date: Thu Sep 26 19:44:05 2013
New Revision: 1526658
URL: http://svn.apache.org/r1526658
Log:
QPID-5178 : Flow detail from Rejected outcome though to MessageRejectedException
Modified:
qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/MessageRejectedException.java
qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java
Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/MessageRejectedException.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/MessageRejectedException.java?rev=1526658&r1=1526657&r2=1526658&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/MessageRejectedException.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/MessageRejectedException.java Thu Sep 26 19:44:05 2013
@@ -22,8 +22,13 @@ import javax.jms.JMSException;
public class MessageRejectedException extends JMSException
{
- public MessageRejectedException(String s)
+ public MessageRejectedException(String reason)
{
- super(s);
+ super(reason);
+ }
+
+ public MessageRejectedException(java.lang.String reason, java.lang.String errorCode)
+ {
+ super(reason, errorCode);
}
}
Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java?rev=1526658&r1=1526657&r2=1526658&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java Thu Sep 26 19:44:05 2013
@@ -34,7 +34,8 @@ import javax.jms.*;
import javax.jms.IllegalStateException;
import java.util.UUID;
import org.apache.qpid.amqp_1_0.type.messaging.Accepted;
-import org.apache.qpid.amqp_1_0.type.transport.*;
+import org.apache.qpid.amqp_1_0.type.messaging.Rejected;
+import org.apache.qpid.amqp_1_0.type.transport.Error;
public class MessageProducerImpl implements MessageProducer, QueueSender, TopicPublisher
{
@@ -302,7 +303,15 @@ public class MessageProducerImpl impleme
if(_syncPublish && !action.wasAccepted(_syncPublishTimeout + System.currentTimeMillis()))
{
- throw new MessageRejectedException("Message was rejected");
+ if (action.getOutcome() instanceof Rejected)
+ {
+ Error err = ((Rejected) action.getOutcome()).getError();
+ throw new MessageRejectedException(err.getDescription(), err.getCondition().toString());
+ }
+ else
+ {
+ throw new MessageRejectedException("Message was not accepted. Outcome was: " + action.getOutcome());
+ }
}
if(getDestination() != null)
@@ -486,5 +495,10 @@ public class MessageProducerImpl impleme
}
}
}
+
+ Outcome getOutcome()
+ {
+ return _outcome;
+ }
}
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org