Author: rajith Date: Tue May 11 17:35:08 2010 New Revision: 943200 URL: http://svn.apache.org/viewvc?rev=943200&view=rev Log: Commiting a patch by Emmanuel Bourg attached to QPID-2594
Modified: qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/test/java/org/apache/qpid/systest/SlowConsumerTest.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionFactory.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/JMSAMQException.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesMessage.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesTypedMessage.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSBytesMessage.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSHeaderAdapter.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSTextMessage.java qpid/trunk/qpid/java/client/src/old_test/java/org/apache/qpid/config/JBossConnectionFactoryInitialiser.java Modified: qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/test/java/org/apache/qpid/systest/SlowConsumerTest.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/test/java/org/apache/qpid/systest/SlowConsumerTest.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/test/java/org/apache/qpid/systest/SlowConsumerTest.java (original) +++ qpid/trunk/qpid/java/broker-plugins/experimental/slowconsumerdetection/src/test/java/org/apache/qpid/systest/SlowConsumerTest.java Tue May 11 17:35:08 2010 @@ -154,6 +154,7 @@ public class SlowConsumerTest extends Qp { JMSException jmsException = new JMSException(amqe.getMessage()); jmsException.setLinkedException(amqe); + jmsException.initCause(amqe); _connectionException = jmsException; } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java Tue May 11 17:35:08 2010 @@ -1077,6 +1077,7 @@ public class AMQConnection extends Close _logger.error("error:", e); JMSException jmse = new JMSException("Error closing connection: " + e); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } } @@ -1391,9 +1392,7 @@ public class AMQConnection extends Close if (code != null) { - je = - new JMSException(Integer.toString(code.getCode()), "Exception thrown against " + toString() + ": " - + cause); + je = new JMSException(Integer.toString(code.getCode()), "Exception thrown against " + toString() + ": " + cause); } else { @@ -1416,6 +1415,8 @@ public class AMQConnection extends Close { je.setLinkedException((Exception) cause); } + + je.initCause(cause); } boolean closer = false; Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java Tue May 11 17:35:08 2010 @@ -265,6 +265,7 @@ public class AMQConnectionDelegate_0_10 } JMSException ex = new JMSException(exc.getMessage(), code); + ex.setLinkedException(exc); ex.initCause(exc); listener.onException(ex); } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java Tue May 11 17:35:08 2010 @@ -168,6 +168,7 @@ public class AMQConnectionDelegate_8_0 i { JMSException jmse = new JMSException("Error creating session: " + e); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } finally Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionFactory.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionFactory.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionFactory.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionFactory.java Tue May 11 17:35:08 2010 @@ -285,6 +285,7 @@ public class AMQConnectionFactory implem { JMSException jmse = new JMSException("Error creating connection: " + e.getMessage()); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } @@ -324,6 +325,7 @@ public class AMQConnectionFactory implem { JMSException jmse = new JMSException("Error creating connection: " + e.getMessage()); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } } @@ -461,6 +463,7 @@ public class AMQConnectionFactory implem { JMSException jmse = new JMSException("Error creating connection: " + e.getMessage()); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/AMQSession.java Tue May 11 17:35:08 2010 @@ -539,6 +539,7 @@ public abstract class AMQSession<C exten if (manager.getCurrentState().equals(AMQState.CONNECTION_CLOSED) && manager.getLastException() != null) { ise.setLinkedException(manager.getLastException()); + ise.initCause(ise.getLinkedException()); } throw ise; @@ -702,6 +703,7 @@ public abstract class AMQSession<C exten { JMSException jmse = new JMSException("Error closing session: " + e); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } // This is ignored because the channel is already marked as closed so the fail-over process will @@ -1087,7 +1089,7 @@ public abstract class AMQSession<C exten _logger.error("", urlse); JMSException jmse = new JMSException(urlse.getReason()); jmse.setLinkedException(urlse); - + jmse.initCause(urlse); throw jmse; } } @@ -1297,9 +1299,10 @@ public abstract class AMQSession<C exten } catch (Exception e) { - JMSException ex = new JMSException("Cannot create temporary queue"); - ex.setLinkedException(e); - throw ex; + JMSException jmse = new JMSException("Cannot create temporary queue"); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } @@ -1352,7 +1355,7 @@ public abstract class AMQSession<C exten { JMSException jmse = new JMSException(urlse.getReason()); jmse.setLinkedException(urlse); - + jmse.initCause(urlse); throw jmse; } } @@ -1807,16 +1810,17 @@ public abstract class AMQSession<C exten } catch (AMQInvalidArgumentException ise) { - JMSException ex = new InvalidSelectorException(ise.getMessage()); - ex.setLinkedException(ise); - throw ex; + JMSException jmse = new InvalidSelectorException(ise.getMessage()); + jmse.setLinkedException(ise); + jmse.initCause(ise); + throw jmse; } catch (AMQInvalidRoutingKeyException e) { - JMSException ide = - new InvalidDestinationException("Invalid routing key:" + amqd.getRoutingKey().toString()); - ide.setLinkedException(e); - throw ide; + JMSException jmse = new InvalidDestinationException("Invalid routing key:" + amqd.getRoutingKey().toString()); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } catch (AMQException e) { @@ -1826,8 +1830,8 @@ public abstract class AMQSession<C exten } JMSException ex = new JMSException("Error registering consumer: " + e); - ex.setLinkedException(e); + ex.initCause(e); throw ex; } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer.java Tue May 11 17:35:08 2010 @@ -510,6 +510,7 @@ public abstract class BasicMessageConsum if (o instanceof Throwable) { JMSException e = new JMSException("Message consumer forcibly closed due to error: " + o); + e.initCause((Throwable) o); if (o instanceof Exception) { e.setLinkedException((Exception) o); Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_10.java Tue May 11 17:35:08 2010 @@ -210,11 +210,12 @@ public class BasicMessageProducer_0_10 e } - catch (RuntimeException rte) + catch (RuntimeException e) { - JMSException ex = new JMSException("Exception when sending message"); - ex.initCause(rte); - throw ex; + JMSException jmse = new JMSException("Exception when sending message"); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/BasicMessageProducer_0_8.java Tue May 11 17:35:08 2010 @@ -162,9 +162,10 @@ public class BasicMessageProducer_0_8 ex } catch (InterruptedException e) { - JMSException jmsEx = new JMSException("Interrupted while waiting for flow control to be removed"); - jmsEx.setLinkedException(e); - throw jmsEx; + JMSException jmse = new JMSException("Interrupted while waiting for flow control to be removed"); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } _protocolHandler.writeFrame(compositeFrame, wait); Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/JMSAMQException.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/JMSAMQException.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/JMSAMQException.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/JMSAMQException.java Tue May 11 17:35:08 2010 @@ -49,17 +49,19 @@ public class JMSAMQException extends JMS if (cause != null) { setLinkedException(cause); + initCause(cause); } } /** - * @param s The underlying exception. + * @param cause The underlying exception. * * @deprecated Use the other constructor and write a helpfull message. This one will be deleted. */ - public JMSAMQException(AMQException s) + public JMSAMQException(AMQException cause) { - super(s.getMessage(), String.valueOf(s.getErrorCode())); - setLinkedException(s); + super(cause.getMessage(), String.valueOf(cause.getErrorCode())); + setLinkedException(cause); + initCause(cause); } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesMessage.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesMessage.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesMessage.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesMessage.java Tue May 11 17:35:08 2010 @@ -102,6 +102,7 @@ public abstract class AbstractBytesMessa { JMSException jmse = new JMSException(e.toString()); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesTypedMessage.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesTypedMessage.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesTypedMessage.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/AbstractBytesTypedMessage.java Tue May 11 17:35:08 2010 @@ -490,9 +490,10 @@ public abstract class AbstractBytesTyped } catch (CharacterCodingException e) { - JMSException je = new JMSException("Error decoding byte stream as a UTF8 string: " + e); - je.setLinkedException(e); - throw je; + JMSException jmse = new JMSException("Error decoding byte stream as a UTF8 string: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } @@ -705,9 +706,10 @@ public abstract class AbstractBytesTyped } catch (CharacterCodingException e) { - JMSException ex = new JMSException("Unable to encode string: " + e); - ex.setLinkedException(e); - throw ex; + JMSException jmse = new JMSException("Unable to encode string: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSBytesMessage.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSBytesMessage.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSBytesMessage.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSBytesMessage.java Tue May 11 17:35:08 2010 @@ -187,9 +187,10 @@ public class JMSBytesMessage extends Abs } catch (CharacterCodingException e) { - JMSException je = new JMSException("Error decoding byte stream as a UTF8 string: " + e); - je.setLinkedException(e); - throw je; + JMSException jmse = new JMSException("Error decoding byte stream as a UTF8 string: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } @@ -308,9 +309,10 @@ public class JMSBytesMessage extends Abs } catch (CharacterCodingException e) { - JMSException ex = new JMSException("Unable to encode string: " + e); - ex.setLinkedException(e); - throw ex; + JMSException jmse = new JMSException("Unable to encode string: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSHeaderAdapter.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSHeaderAdapter.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSHeaderAdapter.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSHeaderAdapter.java Tue May 11 17:35:08 2010 @@ -402,6 +402,7 @@ public final class JMSHeaderAdapter { MessageFormatException mfe = new MessageFormatException("Only primatives are allowed object is:" + object.getClass()); mfe.setLinkedException(aice); + mfe.initCause(aice); throw mfe; } } Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java Tue May 11 17:35:08 2010 @@ -119,6 +119,7 @@ public class JMSObjectMessage extends Ab { MessageFormatException mfe = new MessageFormatException("Message not serializable: " + e); mfe.setLinkedException(e); + mfe.initCause(e); throw mfe; } @@ -143,12 +144,14 @@ public class JMSObjectMessage extends Ab { MessageFormatException mfe = new MessageFormatException("Could not deserialize message: " + e); mfe.setLinkedException(e); + mfe.initCause(e); throw mfe; } catch (ClassNotFoundException e) { MessageFormatException mfe = new MessageFormatException("Could not deserialize message: " + e); mfe.setLinkedException(e); + mfe.initCause(e); throw mfe; } finally Modified: qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSTextMessage.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSTextMessage.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSTextMessage.java (original) +++ qpid/trunk/qpid/java/client/src/main/java/org/apache/qpid/client/message/JMSTextMessage.java Tue May 11 17:35:08 2010 @@ -116,6 +116,7 @@ public class JMSTextMessage extends Abst // should never occur JMSException jmse = new JMSException("Unable to decode text data"); jmse.setLinkedException(e); + jmse.initCause(e); throw jmse; } } @@ -146,9 +147,10 @@ public class JMSTextMessage extends Abst } catch (CharacterCodingException e) { - JMSException je = new JMSException("Could not decode string data: " + e); - je.setLinkedException(e); - throw je; + JMSException jmse = new JMSException("Could not decode string data: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } else @@ -159,9 +161,10 @@ public class JMSTextMessage extends Abst } catch (CharacterCodingException e) { - JMSException je = new JMSException("Could not decode string data: " + e); - je.setLinkedException(e); - throw je; + JMSException jmse = new JMSException("Could not decode string data: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } return _decodedValue; Modified: qpid/trunk/qpid/java/client/src/old_test/java/org/apache/qpid/config/JBossConnectionFactoryInitialiser.java URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/client/src/old_test/java/org/apache/qpid/config/JBossConnectionFactoryInitialiser.java?rev=943200&r1=943199&r2=943200&view=diff ============================================================================== --- qpid/trunk/qpid/java/client/src/old_test/java/org/apache/qpid/config/JBossConnectionFactoryInitialiser.java (original) +++ qpid/trunk/qpid/java/client/src/old_test/java/org/apache/qpid/config/JBossConnectionFactoryInitialiser.java Tue May 11 17:35:08 2010 @@ -63,11 +63,17 @@ public class JBossConnectionFactoryIniti } catch (NamingException e) { - throw new JMSException("Unable to lookup object: " + e); + JMSException jmse = new JMSException("Unable to lookup object: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } catch (Exception e) { - throw new JMSException("Error creating topic: " + e); + JMSException jmse = new JMSException("Error creating topic: " + e); + jmse.setLinkedException(e); + jmse.initCause(e); + throw jmse; } } --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:commits-subscr...@qpid.apache.org