From edde8e6a4b8d318007a724b251661f3605e2854a Mon Sep 17 00:00:00 2001 From: Keith Wall Date: Fri, 20 Apr 2012 11:00:13 +0000 Subject: QPID-3936: stop queue creator from leaving open session behind git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1328318 13f79535-47bb-0310-9956-ffa450edef68 --- .../qpid/disttest/jms/ControllerJmsDelegate.java | 4 ++-- .../apache/qpid/disttest/jms/QpidQueueCreator.java | 25 ++++++---------------- .../org/apache/qpid/disttest/jms/QueueCreator.java | 6 +++--- .../systest/disttest/QpidQueueCreatorTest.java | 15 ++++++------- 4 files changed, 18 insertions(+), 32 deletions(-) (limited to 'qpid/java/perftests/src') diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ControllerJmsDelegate.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ControllerJmsDelegate.java index 3bf8e6ff4a..69da409be5 100644 --- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ControllerJmsDelegate.java +++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/ControllerJmsDelegate.java @@ -190,12 +190,12 @@ public class ControllerJmsDelegate public void createQueues(List queues) { - _queueCreator.createQueues(_connection, queues); + _queueCreator.createQueues(_session, queues); } public void deleteQueues(List queues) { - _queueCreator.deleteQueues(_connection, queues); + _queueCreator.deleteQueues(_session, queues); } public void addCommandListener(CommandListener commandListener) diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QpidQueueCreator.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QpidQueueCreator.java index 6b21181b2a..912ce54495 100644 --- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QpidQueueCreator.java +++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QpidQueueCreator.java @@ -20,8 +20,6 @@ package org.apache.qpid.disttest.jms; import java.util.List; -import javax.jms.Connection; -import javax.jms.JMSException; import javax.jms.Session; import org.apache.qpid.client.AMQDestination; @@ -39,22 +37,22 @@ public class QpidQueueCreator implements QueueCreator private static final FieldTable EMPTY_QUEUE_BIND_ARGUMENTS = new FieldTable(); @Override - public void createQueues(Connection connection, List configs) + public void createQueues(Session session, List configs) { - AMQSession session = createSession(connection); + AMQSession amqSession = (AMQSession)session; for (QueueConfig queueConfig : configs) { - createQueue(session, queueConfig); + createQueue(amqSession, queueConfig); } } @Override - public void deleteQueues(Connection connection, List configs) + public void deleteQueues(Session session, List configs) { - AMQSession session = createSession(connection); + AMQSession amqSession = (AMQSession)session; for (QueueConfig queueConfig : configs) { - deleteQueue(session, queueConfig); + deleteQueue(amqSession, queueConfig); } } @@ -96,15 +94,4 @@ public class QpidQueueCreator implements QueueCreator } } - private AMQSession createSession(Connection connection) - { - try - { - return (AMQSession) connection.createSession(false, Session.AUTO_ACKNOWLEDGE); - } - catch (JMSException e) - { - throw new DistributedTestException("Failed to create session!", e); - } - } } diff --git a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QueueCreator.java b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QueueCreator.java index dd9faef39f..0947dd53cb 100644 --- a/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QueueCreator.java +++ b/qpid/java/perftests/src/main/java/org/apache/qpid/disttest/jms/QueueCreator.java @@ -20,12 +20,12 @@ package org.apache.qpid.disttest.jms; import java.util.List; -import javax.jms.Connection; +import javax.jms.Session; import org.apache.qpid.disttest.controller.config.QueueConfig; public interface QueueCreator { - public void createQueues(final Connection connection, final List configs); - public void deleteQueues(final Connection connection, final List configs); + public void createQueues(final Session session, final List configs); + public void deleteQueues(final Session session, final List configs); } diff --git a/qpid/java/perftests/src/test/java/org/apache/qpid/systest/disttest/QpidQueueCreatorTest.java b/qpid/java/perftests/src/test/java/org/apache/qpid/systest/disttest/QpidQueueCreatorTest.java index 3fa2b9836e..784e43469e 100644 --- a/qpid/java/perftests/src/test/java/org/apache/qpid/systest/disttest/QpidQueueCreatorTest.java +++ b/qpid/java/perftests/src/test/java/org/apache/qpid/systest/disttest/QpidQueueCreatorTest.java @@ -38,7 +38,6 @@ public class QpidQueueCreatorTest extends DistributedTestSystemTestBase private static final Map EMPTY_ATTRIBUTES = Collections.emptyMap(); private QpidQueueCreator _creator; - private Connection _connection; private Session _session; private List _configs; private String _queueName; @@ -47,8 +46,8 @@ public class QpidQueueCreatorTest extends DistributedTestSystemTestBase public void setUp() throws Exception { super.setUp(); - _connection = getConnection(); - _session = _connection.createSession(false, Session.AUTO_ACKNOWLEDGE); + Connection connection = getConnection(); + _session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); _creator = new QpidQueueCreator(); _configs = new ArrayList(); _queueName = "direct://amq.direct//" + getTestQueueName(); @@ -60,7 +59,7 @@ public class QpidQueueCreatorTest extends DistributedTestSystemTestBase assertQueueBound(_queueName, false); - _creator.createQueues(_connection, _configs); + _creator.createQueues(_session, _configs); assertQueueBound(_queueName, true); } @@ -73,7 +72,7 @@ public class QpidQueueCreatorTest extends DistributedTestSystemTestBase assertQueueBound(_queueName, false); - _creator.createQueues(_connection, _configs); + _creator.createQueues(_session, _configs); assertQueueBound(_queueName, true); } @@ -84,10 +83,10 @@ public class QpidQueueCreatorTest extends DistributedTestSystemTestBase assertQueueBound(_queueName, false); - _creator.createQueues(_connection, _configs); + _creator.createQueues(_session, _configs); assertQueueBound(_queueName, true); - _creator.deleteQueues(_connection, _configs); + _creator.deleteQueues(_session, _configs); assertQueueBound(_queueName, false); } @@ -100,7 +99,7 @@ public class QpidQueueCreatorTest extends DistributedTestSystemTestBase try { - _creator.deleteQueues(_connection, configs); + _creator.deleteQueues(_session, configs); fail("Exception not thrown"); } catch (DistributedTestException e) -- cgit v1.2.1