Repository: qpid-jms Updated Branches: refs/heads/master 52a4a6eaa -> c9439171d
QPIDJMS-167 Add event point to get notified that the remote has closed a session, producer or consumer. Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/c9439171 Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/c9439171 Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/c9439171 Branch: refs/heads/master Commit: c9439171d52a3d1246094df1324fd8bb6c08f086 Parents: 52a4a6e Author: Timothy Bish <[email protected]> Authored: Tue Apr 5 09:47:30 2016 -0400 Committer: Timothy Bish <[email protected]> Committed: Tue Apr 5 09:47:30 2016 -0400 ---------------------------------------------------------------------- .../java/org/apache/qpid/jms/JmsConnection.java | 23 ++++++---- .../apache/qpid/jms/JmsConnectionListener.java | 34 ++++++++++++++ .../java/org/apache/qpid/jms/JmsSession.java | 48 +++++++++++--------- .../org/apache/qpid/jms/JmsConnectionTest.java | 25 +--------- .../qpid/jms/JmsDefaultConnectionListener.java | 16 +++++++ .../integration/ConsumerIntegrationTest.java | 12 ++++- .../integration/ProducerIntegrationTest.java | 13 +++++- .../jms/integration/SessionIntegrationTest.java | 24 +++++++++- .../FailoverProviderOfflineBehaviorTest.java | 22 ++------- .../JmsConsumerPriorityDispatchTest.java | 24 ++++++++++ .../jms/discovery/FileWatcherDiscoveryTest.java | 15 ++++++ .../jms/discovery/JmsAmqpDiscoveryTest.java | 15 ++++++ .../transactions/JmsTransactedConsumerTest.java | 12 +++++ 13 files changed, 206 insertions(+), 77 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java index ee0bba4..2ead1bf 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnection.java @@ -1211,24 +1211,31 @@ public class JmsConnection implements AutoCloseable, Connection, TopicConnection JmsSession session = sessions.get(resource.getId()); if (session != null) { session.remotelyClosed(cause); - - // TODO: exception listener? + for (JmsConnectionListener listener : connectionListeners) { + listener.onSessionRemotelyClosed(session, cause); + } } } else if (resource instanceof JmsProducerInfo) { JmsSessionId parentId = ((JmsProducerInfo) resource).getParentId(); JmsSession session = sessions.get(parentId); if (session != null) { - session.resourceRemotelyClosed(resource, cause); - - // TODO: exception listener? + JmsMessageProducer producer = session.producerRemotelyClosed((JmsProducerInfo) resource, cause); + if (producer != null) { + for (JmsConnectionListener listener : connectionListeners) { + listener.onProducerRemotelyClosed(producer, cause); + } + } } } else if (resource instanceof JmsConsumerInfo) { JmsSessionId parentId = ((JmsConsumerInfo) resource).getParentId(); JmsSession session = sessions.get(parentId); if (session != null) { - session.resourceRemotelyClosed(resource, cause); - - // TODO: exception listener? + JmsMessageConsumer consumer = session.consumerRemotelyClosed((JmsConsumerInfo) resource, cause); + if (consumer != null) { + for (JmsConnectionListener listener : connectionListeners) { + listener.onConsumerRemotelyClosed(consumer, cause); + } + } } } else { LOG.info("A JMS resource has been remotely closed: {}", resource); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionListener.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionListener.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionListener.java index 09130ae..f06f343 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionListener.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsConnectionListener.java @@ -18,6 +18,10 @@ package org.apache.qpid.jms; import java.net.URI; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Session; + import org.apache.qpid.jms.message.JmsInboundMessageDispatch; /** @@ -70,4 +74,34 @@ public interface JmsConnectionListener { */ void onInboundMessage(JmsInboundMessageDispatch envelope); + /** + * Called when the remote peer closes a session. + * + * @param session + * The session that was closed on the remote end. + * @param cause + * The exception that provides additional context on the remote closure. + */ + void onSessionRemotelyClosed(Session session, Exception cause); + + /** + * Called when the remote peer closes a MessageConsumer. + * + * @param consumer + * The consumer that was closed on the remote end. + * @param cause + * The exception that provides additional context on the remote closure. + */ + void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause); + + /** + * Called when the remote peer closes a MessageProducer. + * + * @param producer + * The producer that was closed on the remote end. + * @param cause + * The exception that provides additional context on the remote closure. + */ + void onProducerRemotelyClosed(MessageProducer producer, Exception cause); + } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java index 4a10a4e..8e5088e 100644 --- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java +++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/JmsSession.java @@ -67,7 +67,6 @@ import org.apache.qpid.jms.meta.JmsConsumerId; import org.apache.qpid.jms.meta.JmsConsumerInfo; import org.apache.qpid.jms.meta.JmsProducerId; import org.apache.qpid.jms.meta.JmsProducerInfo; -import org.apache.qpid.jms.meta.JmsResource; import org.apache.qpid.jms.meta.JmsSessionId; import org.apache.qpid.jms.meta.JmsSessionInfo; import org.apache.qpid.jms.provider.Provider; @@ -275,31 +274,36 @@ public class JmsSession implements AutoCloseable, Session, QueueSession, TopicSe } } - /* - * Called to indicate that a session resource was closed by the remote peer. - */ - void resourceRemotelyClosed(JmsResource resource, Exception cause) { - LOG.info("A JMS resource has been remotely closed: {}", resource); + JmsMessageConsumer consumerRemotelyClosed(JmsConsumerInfo resource, Exception cause) { + LOG.info("A JMS MessageConsumer has been remotely closed: {}", resource); - if (resource instanceof JmsConsumerInfo) { - try { - JmsMessageConsumer consumer = consumers.get(resource.getId()); - if (consumer != null) { - consumer.shutdown(cause); - } - } catch (Throwable error) { - LOG.trace("Ignoring exception thrown during cleanup of remotely closed consumer", error); + JmsMessageConsumer consumer = consumers.get(resource.getId()); + + try { + if (consumer != null) { + consumer.shutdown(cause); } - } else if (resource instanceof JmsProducerInfo) { - try { - JmsMessageProducer producer = producers.get(resource.getId()); - if (producer != null) { - producer.shutdown(cause); - } - } catch (Throwable error) { - LOG.trace("Ignoring exception thrown during cleanup of remotely closed producer", error); + } catch (Throwable error) { + LOG.trace("Ignoring exception thrown during cleanup of remotely closed consumer", error); + } + + return consumer; + } + + JmsMessageProducer producerRemotelyClosed(JmsProducerInfo resource, Exception cause) { + LOG.info("A JMS MessageProducer has been remotely closed: {}", resource); + + JmsMessageProducer producer = producers.get(resource.getId()); + + try { + if (producer != null) { + producer.shutdown(cause); } + } catch (Throwable error) { + LOG.trace("Ignoring exception thrown during cleanup of remotely closed producer", error); } + + return producer; } ////////////////////////////////////////////////////////////////////////// http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java index bf5bbcf..1ac4c3d 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsConnectionTest.java @@ -35,7 +35,6 @@ import javax.jms.Session; import javax.jms.TemporaryQueue; import javax.jms.TemporaryTopic; -import org.apache.qpid.jms.message.JmsInboundMessageDispatch; import org.apache.qpid.jms.provider.mock.MockProvider; import org.apache.qpid.jms.provider.mock.MockProviderFactory; import org.apache.qpid.jms.util.IdGenerator; @@ -116,29 +115,7 @@ public class JmsConnectionTest { @Test(timeout=30000) public void testAddConnectionListener() throws JMSException { connection = new JmsConnection("ID:TEST:1", provider, clientIdGenerator); - JmsConnectionListener listener = new JmsConnectionListener() { - - @Override - public void onInboundMessage(JmsInboundMessageDispatch envelope) { - } - - @Override - public void onConnectionRestored(URI remoteURI) { - } - - @Override - public void onConnectionInterrupted(URI remoteURI) { - } - - @Override - public void onConnectionFailure(Throwable error) { - } - - @Override - public void onConnectionEstablished(URI remoteURI) { - } - }; - + JmsConnectionListener listener = new JmsDefaultConnectionListener(); assertFalse(connection.removeConnectionListener(listener)); connection.addConnectionListener(listener); assertTrue(connection.removeConnectionListener(listener)); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsDefaultConnectionListener.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsDefaultConnectionListener.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsDefaultConnectionListener.java index 439b1ec..80de69a 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsDefaultConnectionListener.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/JmsDefaultConnectionListener.java @@ -20,6 +20,10 @@ package org.apache.qpid.jms; import java.net.URI; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Session; + import org.apache.qpid.jms.message.JmsInboundMessageDispatch; public class JmsDefaultConnectionListener implements JmsConnectionListener { @@ -43,4 +47,16 @@ public class JmsDefaultConnectionListener implements JmsConnectionListener { @Override public void onInboundMessage(JmsInboundMessageDispatch envelope) { } + + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + } + + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause) { + } + + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception cause) { + } } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConsumerIntegrationTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConsumerIntegrationTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConsumerIntegrationTest.java index 33a8806..4096efb 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConsumerIntegrationTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ConsumerIntegrationTest.java @@ -28,6 +28,7 @@ import static org.junit.Assert.fail; import java.io.IOException; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; import javax.jms.Connection; import javax.jms.IllegalStateException; @@ -123,7 +124,14 @@ public class ConsumerIntegrationTest extends QpidJmsTestCase { final String BREAD_CRUMB = "ErrorMessage"; try (TestAmqpPeer testPeer = new TestAmqpPeer();) { - Connection connection = testFixture.establishConnecton(testPeer); + final AtomicBoolean consumerClosed = new AtomicBoolean(); + JmsConnection connection = (JmsConnection) testFixture.establishConnecton(testPeer); + connection.addConnectionListener(new JmsDefaultConnectionListener() { + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception exception) { + consumerClosed.set(true); + } + }); testPeer.expectBegin(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); @@ -156,6 +164,8 @@ public class ConsumerIntegrationTest extends QpidJmsTestCase { } }, 10000, 10)); + assertTrue("Consumer closed callback didn't trigger", consumerClosed.get()); + // Try closing it explicitly, should effectively no-op in client. // The test peer will throw during close if it sends anything. consumer.close(); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java index 4d38dd6..2e49080 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/ProducerIntegrationTest.java @@ -40,6 +40,7 @@ import java.util.Set; import java.util.UUID; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; import javax.jms.Connection; import javax.jms.DeliveryMode; @@ -54,6 +55,7 @@ import javax.jms.TextMessage; import org.apache.qpid.jms.JmsConnection; import org.apache.qpid.jms.JmsConnectionFactory; +import org.apache.qpid.jms.JmsDefaultConnectionListener; import org.apache.qpid.jms.JmsOperationTimedOutException; import org.apache.qpid.jms.JmsSendTimedOutException; import org.apache.qpid.jms.message.foreign.ForeignJmsMessage; @@ -796,7 +798,14 @@ public class ProducerIntegrationTest extends QpidJmsTestCase { final String BREAD_CRUMB = "ErrorMessageBreadCrumb"; try (TestAmqpPeer testPeer = new TestAmqpPeer();) { - Connection connection = testFixture.establishConnecton(testPeer); + final AtomicBoolean producerClosed = new AtomicBoolean(); + JmsConnection connection = (JmsConnection) testFixture.establishConnecton(testPeer); + connection.addConnectionListener(new JmsDefaultConnectionListener() { + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception exception) { + producerClosed.set(true); + } + }); testPeer.expectBegin(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); @@ -828,6 +837,8 @@ public class ProducerIntegrationTest extends QpidJmsTestCase { } }, 10000, 10)); + assertTrue("Producer closed callback didn't trigger", producerClosed.get()); + // Try closing it explicitly, should effectively no-op in client. // The test peer will throw during close if it sends anything. producer.close(); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/SessionIntegrationTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/SessionIntegrationTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/SessionIntegrationTest.java index 2a52ce8..cf4c0a6 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/SessionIntegrationTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/integration/SessionIntegrationTest.java @@ -33,6 +33,7 @@ import static org.junit.Assert.fail; import java.io.IOException; import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; import javax.jms.Connection; @@ -56,6 +57,7 @@ import javax.jms.Topic; import javax.jms.TopicSubscriber; import org.apache.qpid.jms.JmsConnection; +import org.apache.qpid.jms.JmsDefaultConnectionListener; import org.apache.qpid.jms.JmsOperationTimedOutException; import org.apache.qpid.jms.JmsPrefetchPolicy; import org.apache.qpid.jms.provider.amqp.message.AmqpDestinationHelper; @@ -1265,7 +1267,14 @@ public class SessionIntegrationTest extends QpidJmsTestCase { final String BREAD_CRUMB = "ErrorMessage"; try (TestAmqpPeer testPeer = new TestAmqpPeer();) { - Connection connection = testFixture.establishConnecton(testPeer); + final AtomicBoolean sessionClosed = new AtomicBoolean(); + JmsConnection connection = (JmsConnection) testFixture.establishConnecton(testPeer); + connection.addConnectionListener(new JmsDefaultConnectionListener() { + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + sessionClosed.set(true); + } + }); testPeer.expectBegin(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); @@ -1308,6 +1317,8 @@ public class SessionIntegrationTest extends QpidJmsTestCase { assertTrue(message.contains(BREAD_CRUMB)); } + assertTrue("Session closed callback didn't trigger", sessionClosed.get()); + // Try closing it explicitly, should effectively no-op in client. // The test peer will throw during close if it sends anything. producer.close(); @@ -1319,7 +1330,14 @@ public class SessionIntegrationTest extends QpidJmsTestCase { final String BREAD_CRUMB = "ErrorMessage"; try (TestAmqpPeer testPeer = new TestAmqpPeer();) { - Connection connection = testFixture.establishConnecton(testPeer); + final AtomicBoolean sessionClosed = new AtomicBoolean(); + JmsConnection connection = (JmsConnection) testFixture.establishConnecton(testPeer); + connection.addConnectionListener(new JmsDefaultConnectionListener() { + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + sessionClosed.set(true); + } + }); testPeer.expectBegin(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); @@ -1362,6 +1380,8 @@ public class SessionIntegrationTest extends QpidJmsTestCase { assertTrue(message.contains(BREAD_CRUMB)); } + assertTrue("Session closed callback didn't trigger", sessionClosed.get()); + // Try closing it explicitly, should effectively no-op in client. // The test peer will throw during close if it sends anything. consumer.close(); http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverProviderOfflineBehaviorTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverProviderOfflineBehaviorTest.java b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverProviderOfflineBehaviorTest.java index 25d8703..1ee03ec 100644 --- a/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverProviderOfflineBehaviorTest.java +++ b/qpid-jms-client/src/test/java/org/apache/qpid/jms/provider/failover/FailoverProviderOfflineBehaviorTest.java @@ -31,8 +31,7 @@ import javax.jms.TransactionRolledBackException; import org.apache.qpid.jms.JmsConnection; import org.apache.qpid.jms.JmsConnectionFactory; -import org.apache.qpid.jms.JmsConnectionListener; -import org.apache.qpid.jms.message.JmsInboundMessageDispatch; +import org.apache.qpid.jms.JmsDefaultConnectionListener; import org.apache.qpid.jms.meta.JmsResource; import org.apache.qpid.jms.meta.JmsSessionInfo; import org.apache.qpid.jms.provider.mock.ResourceLifecycleFilter; @@ -234,26 +233,11 @@ public class FailoverProviderOfflineBehaviorTest extends FailoverProviderTestSup connection.close(); } - private class ConnectionInterruptionListener implements JmsConnectionListener { + private class ConnectionInterruptionListener extends JmsDefaultConnectionListener { + @Override public void onConnectionInterrupted(URI remoteURI) { connectionInterrupted.countDown(); } - - @Override - public void onConnectionEstablished(URI remoteURI) { - } - - @Override - public void onConnectionFailure(Throwable error) { - } - - @Override - public void onConnectionRestored(URI remoteURI) { - } - - @Override - public void onInboundMessage(JmsInboundMessageDispatch envelope) { - } } } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsConsumerPriorityDispatchTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsConsumerPriorityDispatchTest.java b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsConsumerPriorityDispatchTest.java index 3525822..5c15770 100644 --- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsConsumerPriorityDispatchTest.java +++ b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/consumer/JmsConsumerPriorityDispatchTest.java @@ -75,6 +75,18 @@ public class JmsConsumerPriorityDispatchTest extends AmqpTestSupport { @Override public void onConnectionEstablished(URI remoteURI) { } + + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + } + + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause) { + } + + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception cause) { + } }); connection.start(); @@ -131,6 +143,18 @@ public class JmsConsumerPriorityDispatchTest extends AmqpTestSupport { @Override public void onConnectionEstablished(URI remoteURI) { } + + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + } + + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause) { + } + + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception cause) { + } }); assertFalse("Client side priority ordering expected to be disabled for this test", http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/FileWatcherDiscoveryTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/FileWatcherDiscoveryTest.java b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/FileWatcherDiscoveryTest.java index 2aea0ae..19d8a0a 100644 --- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/FileWatcherDiscoveryTest.java +++ b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/FileWatcherDiscoveryTest.java @@ -26,6 +26,9 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.TimeUnit; import javax.jms.Connection; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Session; import org.apache.qpid.jms.JmsConnection; import org.apache.qpid.jms.JmsConnectionFactory; @@ -204,6 +207,18 @@ public class FileWatcherDiscoveryTest extends AmqpTestSupport { @Override public void onInboundMessage(JmsInboundMessageDispatch envelope) { } + + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + } + + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause) { + } + + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception cause) { + } }); return connection; http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/JmsAmqpDiscoveryTest.java ---------------------------------------------------------------------- diff --git a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/JmsAmqpDiscoveryTest.java b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/JmsAmqpDiscoveryTest.java index e46e359..24b1a09 100644 --- a/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/JmsAmqpDiscoveryTest.java +++ b/qpid-jms-interop-tests/qpid-jms-activemq-tests/src/test/java/org/apache/qpid/jms/discovery/JmsAmqpDiscoveryTest.java @@ -26,6 +26,9 @@ import java.util.concurrent.TimeUnit; import javax.jms.Connection; import javax.jms.JMSException; +import javax.jms.MessageConsumer; +import javax.jms.MessageProducer; +import javax.jms.Session; import org.apache.qpid.jms.JmsConnection; import org.apache.qpid.jms.JmsConnectionFactory; @@ -219,4 +222,16 @@ public class JmsAmqpDiscoveryTest extends AmqpTestSupport implements JmsConnecti @Override public void onInboundMessage(JmsInboundMessageDispatch envelope) { } + + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + } + + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause) { + } + + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception cause) { + } } http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/c9439171/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 e4078a1..d536b1e 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 @@ -358,6 +358,18 @@ public class JmsTransactedConsumerTest extends AmqpTestSupport { @Override public void onConnectionEstablished(URI remoteURI) { } + + @Override + public void onSessionRemotelyClosed(Session session, Exception exception) { + } + + @Override + public void onConsumerRemotelyClosed(MessageConsumer consumer, Exception cause) { + } + + @Override + public void onProducerRemotelyClosed(MessageProducer producer, Exception cause) { + } }); MessageProducer pr = session.createProducer(queue); --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
