public Queue locateQueue(SimpleString queueName) { return server.getActiveMQServer().locateQueue(queueName); }
void clean() throws Exception { SimpleString managementAddress = createManagementAddress(); Queue queue = session.getServer().locateQueue(managementAddress); if (queue != null) { queue.deleteQueue(); } }
private void createManagementQueue() throws Exception { Queue q = session.getServer().locateQueue(managementAddress); if (q == null) { session.getServer().createQueue(managementAddress, RoutingType.ANYCAST, managementAddress, null, MQTTUtil.DURABLE_MESSAGES, false); } }
private void createManagementQueue() throws Exception { Queue q = session.getServer().locateQueue(managementAddress); if (q == null) { session.getServer().createQueue(managementAddress, RoutingType.ANYCAST, managementAddress, null, MQTTUtil.DURABLE_MESSAGES, false); } }
void clean() throws Exception { SimpleString managementAddress = createManagementAddress(); Queue queue = session.getServer().locateQueue(managementAddress); if (queue != null) { queue.deleteQueue(); } }
public Queue getProxyToQueue(String queueName) { return server.locateQueue(SimpleString.toSimpleString(queueName)); }
private void flushQueue() throws Exception { Queue queue = server.locateQueue(SimpleString.toSimpleString(queueName)); assertNotNull(queue); queue.flushExecutor(); }
@Test public void testAutoDeleteAutoCreatedQueue() throws Exception { // auto-delete-queues defaults to true server.createQueue(addressA, RoutingType.ANYCAST, queueA, null, null, true, false, false, false, true, 1, false, true); assertNotNull(server.locateQueue(queueA)); cf.createSession().createConsumer(queueA).close(); assertNull(server.locateQueue(queueA)); }
@Test public void defaultAutoCreatedQueueConfigTest2() throws Exception { final String queueName = "q1"; server.getAddressSettingsRepository().addMatch(queueName, new AddressSettings().setDefaultMaxConsumers(5).setDefaultPurgeOnNoConsumers(true)); Connection connection = cf.createConnection(); Session session = connection.createSession(); session.createProducer(session.createQueue(queueName)); org.apache.activemq.artemis.core.server.Queue queue = server.locateQueue(SimpleString.toSimpleString(queueName)); assertEquals(5, queue.getMaxConsumers()); assertEquals(true, queue.isPurgeOnNoConsumers()); connection.close(); }
@Test public void testPurgeOnNoConsumersFalse() throws Exception { SimpleString address = new SimpleString("test.address"); SimpleString queueName = SimpleString.toSimpleString(UUID.randomUUID().toString()); server.createQueue(address, RoutingType.ANYCAST, queueName, null, null, true, false, false, false, false, 1, false, true); assertNotNull(server.locateQueue(queueName)); ClientSession session = sessionFactory.createSession(); ClientProducer producer = session.createProducer(address); producer.send(session.createMessage(true)); session.createConsumer(queueName).close(); assertNotNull(server.locateQueue(queueName)); assertEquals(1, server.locateQueue(queueName).getMessageCount()); }
@Test public void defaultAutoCreatedQueueConfigTest() throws Exception { final String queueName = "q1"; server.getAddressSettingsRepository() .addMatch(queueName, new AddressSettings() .setDefaultMaxConsumers(5) .setDefaultPurgeOnNoConsumers(true)); Connection connection = cf.createConnection(); Session session = connection.createSession(); session.createConsumer(session.createQueue(queueName)); org.apache.activemq.artemis.core.server.Queue queue = server.locateQueue(SimpleString.toSimpleString(queueName)); assertEquals(5, queue.getMaxConsumers()); assertEquals(true, queue.isPurgeOnNoConsumers()); connection.close(); }
@Test public void testAutoCreatedMulticastAddress() throws Exception { conn.connect(defUser, defPass); String queueName = UUID.randomUUID().toString(); SimpleString simpleQueueName = SimpleString.toSimpleString(queueName); Assert.assertNull(server.getAddressInfo(simpleQueueName)); Assert.assertNull(server.locateQueue(simpleQueueName)); send(conn, queueName, null, "Hello MULTICAST"); assertTrue("Address should be created now", Wait.waitFor(() -> (server.getAddressInfo(simpleQueueName) != null), 2000, 200)); assertTrue(server.getAddressInfo(simpleQueueName).getRoutingTypes().contains(RoutingType.MULTICAST)); Assert.assertNull(server.locateQueue(simpleQueueName)); } }
private void assertPaging() throws Exception { Queue queue = server.locateQueue(QUEUE); if (isPaging) { Assert.assertTrue(queue.getPageSubscription().isPaging()); } else { Assert.assertFalse(queue.getPageSubscription().isPaging()); } }
@Test public void testNegativeAutoDeleteAutoCreatedQueue() throws Exception { server.getAddressSettingsRepository().addMatch(addressA.toString(), new AddressSettings().setAutoDeleteQueues(false)); server.createQueue(addressA, RoutingType.ANYCAST, queueA, null, null, true, false, false, false, true, 1, false, true); assertNotNull(server.locateQueue(queueA)); cf.createSession().createConsumer(queueA).close(); assertNotNull(server.locateQueue(queueA)); } }
@Test(timeout = 60000) public void testAnycastMessageRoutingExclusivityUsingProperty() throws Exception { final String addressA = "addressA"; final String queueA = "queueA"; final String queueB = "queueB"; final String queueC = "queueC"; ActiveMQServerControl serverControl = server.getActiveMQServerControl(); serverControl.createAddress(addressA, RoutingType.ANYCAST.toString() + "," + RoutingType.MULTICAST.toString()); serverControl.createQueue(addressA, queueA, RoutingType.ANYCAST.toString()); serverControl.createQueue(addressA, queueB, RoutingType.ANYCAST.toString()); serverControl.createQueue(addressA, queueC, RoutingType.MULTICAST.toString()); sendMessages(addressA, 1, RoutingType.ANYCAST); assertEquals(1, server.locateQueue(SimpleString.toSimpleString(queueA)).getMessageCount() + server.locateQueue(SimpleString.toSimpleString(queueB)).getMessageCount()); assertEquals(0, server.locateQueue(SimpleString.toSimpleString(queueC)).getMessageCount()); }
@Test(timeout = 60000) public void testMulticastMessageRoutingExclusivityUsingProperty() throws Exception { final String addressA = "addressA"; final String queueA = "queueA"; final String queueB = "queueB"; final String queueC = "queueC"; ActiveMQServerControl serverControl = server.getActiveMQServerControl(); serverControl.createAddress(addressA, RoutingType.ANYCAST.toString() + "," + RoutingType.MULTICAST.toString()); serverControl.createQueue(addressA, queueA, RoutingType.ANYCAST.toString()); serverControl.createQueue(addressA, queueB, RoutingType.MULTICAST.toString()); serverControl.createQueue(addressA, queueC, RoutingType.MULTICAST.toString()); sendMessages(addressA, 1, RoutingType.MULTICAST); assertEquals(0, server.locateQueue(SimpleString.toSimpleString(queueA)).getMessageCount()); assertEquals(2, server.locateQueue(SimpleString.toSimpleString(queueC)).getMessageCount() + server.locateQueue(SimpleString.toSimpleString(queueB)).getMessageCount()); }
@Test public void testDuplicateQueue() throws Exception { String filename = "duplicateQueue.xml"; FileConfiguration fc = new FileConfiguration(); FileDeploymentManager deploymentManager = new FileDeploymentManager(filename); deploymentManager.addDeployable(fc); deploymentManager.readConfiguration(); ActiveMQServer server = addServer((ActiveMQServer) deploymentManager.buildService(null, null).get("core")); server.start(); assertEquals(0, server.locateQueue(SimpleString.toSimpleString("q")).getMaxConsumers()); }
@Test public void testReceiveThenCheckCounter() throws Exception { Queue queue = server.locateQueue(ADDRESS); assertEquals(numMsgs, queue.getMessagesAdded()); receiveAllMessages(); queue.getPageSubscription().cleanupEntries(true); assertEquals(numMsgs, queue.getMessagesAdded()); }
@Test public void defaultAutoCreatedQueueConfigTest() throws Exception { final String queueName = "q1"; server.getAddressSettingsRepository().addMatch(queueName, new AddressSettings().setDefaultMaxConsumers(5).setDefaultPurgeOnNoConsumers(true)); Queue q1 = context.createQueue(queueName); context.createProducer().setProperty("prop1", 1).setProperty("prop2", 2).send(q1, "Text1"); org.apache.activemq.artemis.core.server.Queue queue = server.locateQueue(SimpleString.toSimpleString(queueName)); assertEquals(5, queue.getMaxConsumers()); assertEquals(true, queue.isPurgeOnNoConsumers()); }
@Test public void testSetExpiryAddress() throws Exception { SimpleString address = RandomUtil.randomSimpleString(); SimpleString queue = RandomUtil.randomSimpleString(); String expiryAddress = RandomUtil.randomString(); session.createQueue(address, RoutingType.MULTICAST, queue, null, durable); QueueControl queueControl = createManagementControl(address, queue); AddressSettings addressSettings = new AddressSettings().setExpiryAddress(new SimpleString(expiryAddress)); server.getAddressSettingsRepository().addMatch(address.toString(), addressSettings); Assert.assertEquals(expiryAddress, queueControl.getExpiryAddress()); Queue serverqueue = server.locateQueue(queue); assertEquals(expiryAddress, serverqueue.getExpiryAddress().toString()); session.deleteQueue(queue); }