Author: aidan
Date: Fri Feb 22 08:50:26 2008
New Revision: 630247
URL: http://svn.apache.org/viewvc?rev=630247&view=rev
Log:
QPID-771: fix up exception handling a bit more, this is so lovely.
Modified:
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java
incubator/qpid/branches/M2.1/java/client/src/test/java/org/apache/qpid/test/unit/client/connection/ConnectionTest.java
Modified:
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java
URL:
http://svn.apache.org/viewvc/incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java?rev=630247&r1=630246&r2=630247&view=diff
==============================================================================
---
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java
(original)
+++
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java
Fri Feb 22 08:50:26 2008
@@ -438,7 +438,7 @@
if (exceptions.size() > 0)
{
- JMSException e = exceptions.get(exceptions.size() - 1);
+ JMSException e = exceptions.get(0);
int code = -1;
try
{
Modified:
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java
URL:
http://svn.apache.org/viewvc/incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java?rev=630247&r1=630246&r2=630247&view=diff
==============================================================================
---
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java
(original)
+++
incubator/qpid/branches/M2.1/java/client/src/main/java/org/apache/qpid/client/protocol/AMQProtocolHandler.java
Fri Feb 22 08:50:26 2008
@@ -373,8 +373,8 @@
AMQException amqe = new AMQException("Protocol handler
error: " + cause, cause);
propagateExceptionToWaiters(amqe);
- _connection.exceptionReceived(cause);
}
+ _connection.exceptionReceived(cause);
}
Modified:
incubator/qpid/branches/M2.1/java/client/src/test/java/org/apache/qpid/test/unit/client/connection/ConnectionTest.java
URL:
http://svn.apache.org/viewvc/incubator/qpid/branches/M2.1/java/client/src/test/java/org/apache/qpid/test/unit/client/connection/ConnectionTest.java?rev=630247&r1=630246&r2=630247&view=diff
==============================================================================
---
incubator/qpid/branches/M2.1/java/client/src/test/java/org/apache/qpid/test/unit/client/connection/ConnectionTest.java
(original)
+++
incubator/qpid/branches/M2.1/java/client/src/test/java/org/apache/qpid/test/unit/client/connection/ConnectionTest.java
Fri Feb 22 08:50:26 2008
@@ -33,6 +33,7 @@
import junit.framework.TestCase;
import javax.jms.Connection;
+import javax.jms.JMSException;
import javax.jms.QueueSession;
import javax.jms.TopicSession;
@@ -115,8 +116,8 @@
}
}
- //fixme AMQAuthenticationException is not propogaged
- public void PasswordFailureConnection() throws Exception
+ //See QPID-771
+ public void testPasswordFailureConnection() throws Exception
{
try
{
@@ -125,10 +126,9 @@
}
catch (AMQException amqe)
{
- if (!(amqe instanceof AMQAuthenticationException))
- {
- fail("Correct exception not thrown. Excpected
'AMQAuthenticationException' got: " + amqe);
- }
+ assertEquals("Exception was wrong type", JMSException.class,
amqe.getCause().getClass());
+ Exception linked = ((JMSException)
amqe.getCause()).getLinkedException();
+ assertEquals("Exception was wrong type",
AMQAuthenticationException.class, linked.getClass());
}
}