@Test public void testFQNConsumer() throws Exception { Connection exConn = null; SimpleString durableQueue = new SimpleString("myqueue"); this.server.createQueue(durableQueue, RoutingType.ANYCAST, durableQueue, null, true, false, -1, false, true); try { ActiveMQConnectionFactory exFact = new ActiveMQConnectionFactory(); exConn = exFact.createConnection(); exConn.start(); Session session = exConn.createSession(false, Session.AUTO_ACKNOWLEDGE); Destination destination = session.createQueue(durableQueue.toString()); MessageProducer producer = session.createProducer(destination); TextMessage message = session.createTextMessage("This is a text message"); producer.send(message); Destination destinationFQN = session.createQueue(CompositeAddress.toFullyQualified(durableQueue, durableQueue).toString()); MessageConsumer messageConsumer = session.createConsumer(destinationFQN); TextMessage messageReceived = (TextMessage) messageConsumer.receive(5000); assertEquals("This is a text message", messageReceived.getText()); } finally { if (exConn != null) { exConn.close(); } } }
/** * Broker should return exception if no address is passed in FQQN. * @throws Exception */ @Test public void testQueueSpecial() throws Exception { server.createQueue(anycastAddress, RoutingType.ANYCAST, anycastQ1, null, true, false, -1, false, true); Connection connection = createConnection(); Exception expectedException = null; try { connection.start(); Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); //::queue ok! String specialName = CompositeAddress.toFullyQualified(new SimpleString(""), anycastQ1).toString(); javax.jms.Queue q1 = session.createQueue(specialName); session.createConsumer(q1); } catch (InvalidDestinationException e) { expectedException = e; } assertNotNull(expectedException); assertTrue(expectedException.getMessage().contains("Queue: 'q1' does not exist for address ''")); } }
MessageProducer producer = session.createProducer(destination); Destination destinationFQN = session.createQueue(CompositeAddress.toFullyQualified(topic, subscriptionQ).toString()); MessageConsumer messageConsumerA = session.createConsumer(destinationFQN); MessageConsumer messageConsumerB = session.createConsumer(destinationFQN);
Queue q1 = session.createQueue(CompositeAddress.toFullyQualified(forwardAddress, "queue1")); Queue q2 = session.createQueue(CompositeAddress.toFullyQualified(testAddress, "queue2"));
MessageProducer producer = session.createProducer(destination); Destination destinationFQN = session.createQueue(CompositeAddress.toFullyQualified(topic, subscriptionQ).toString());
MessageProducer producer = session.createProducer(destination); Destination destinationFQN = session.createQueue(CompositeAddress.toFullyQualified(topic, subscriptionQ).toString());
Queue q1 = session.createQueue(CompositeAddress.toFullyQualified(testAddress, "queue1")); Queue q2 = session.createQueue(CompositeAddress.toFullyQualified(forwardAddress, "queue2"));
Destination destinationFQN = session.createQueue(CompositeAddress.toFullyQualified(topic, subscriptionQ).toString());
Queue q1 = session.createQueue(CompositeAddress.toFullyQualified(forwardAddress, "queue1")); Queue q2 = session.createQueue(CompositeAddress.toFullyQualified(testAddress, "queue2")); Queue q3 = session.createQueue(CompositeAddress.toFullyQualified(testAddress, "queue3")); Queue q4 = session.createQueue(CompositeAddress.toFullyQualified(testAddress, "queue4"));
MessageProducer producer = session.createProducer(destination); Destination destinationFQN = session.createQueue(CompositeAddress.toFullyQualified(topic, subscriptionQ).toString());
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); Queue q1 = session.createQueue(CompositeAddress.toFullyQualified(anycastAddress, anycastQ1).toString()); Queue q2 = session.createQueue(CompositeAddress.toFullyQualified(anycastAddress, anycastQ2).toString()); Queue q3 = session.createQueue(CompositeAddress.toFullyQualified(anycastAddress, anycastQ3).toString()); QueueQueryResult query = server.queueQuery(CompositeAddress.toFullyQualified(anycastAddress, q)); assertTrue(query.isExists() || query.isAutoCreateQueues()); assertEquals(anycastAddress, query.getAddress());
SimpleString qName = b.getUniqueName(); QueueQueryResult result = server.queueQuery(CompositeAddress.toFullyQualified(multicastAddress, qName)); assertTrue(result.isExists()); assertEquals(result.getName(), qName);
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE); javax.jms.Queue q1 = session.createQueue(CompositeAddress.toFullyQualified(anycastAddress, anycastQ1).toString()); javax.jms.Queue q2 = session.createQueue(CompositeAddress.toFullyQualified(anycastAddress, anycastQ2).toString()); javax.jms.Queue q3 = session.createQueue(CompositeAddress.toFullyQualified(anycastAddress, anycastQ3).toString()); QueueQueryResult query = server.queueQuery(CompositeAddress.toFullyQualified(anycastAddress, q)); assertTrue(query.isExists() || query.isAutoCreateQueues()); assertEquals(anycastAddress, query.getAddress());
Queue q1 = session.createQueue(CompositeAddress.toFullyQualified(testAddress, "queue1")); Queue q2 = session.createQueue(CompositeAddress.toFullyQualified(forwardAddress, "queue2"));
SimpleString qName = b.getUniqueName(); QueueQueryResult result = server.queueQuery(CompositeAddress.toFullyQualified(multicastAddress, qName)); assertTrue(result.isExists()); assertEquals(result.getName(), qName);
sendMessages(session, producer, num); ClientConsumer consumer1 = session.createConsumer(CompositeAddress.toFullyQualified(mixedAddress, anycastQ1)); ClientConsumer consumer2 = session.createConsumer(CompositeAddress.toFullyQualified(mixedAddress, anycastQ2)); ClientConsumer consumer3 = session.createConsumer(CompositeAddress.toFullyQualified(mixedAddress, anycastQ3)); ClientConsumer consumer4 = session.createConsumer(CompositeAddress.toFullyQualified(mixedAddress, multicastQ1)); ClientConsumer consumer5 = session.createConsumer(CompositeAddress.toFullyQualified(mixedAddress, multicastQ2)); ClientConsumer consumer6 = session.createConsumer(CompositeAddress.toFullyQualified(mixedAddress, multicastQ3)); QueueQueryResult query = server.queueQuery(CompositeAddress.toFullyQualified(mixedAddress, q)); assertTrue(query.isExists()); assertEquals(mixedAddress, query.getAddress());
ClientConsumer consumer1 = session.createConsumer(CompositeAddress.toFullyQualified(new SimpleString(""), anycastQ1)); session.start(); session.createConsumer(CompositeAddress.toFullyQualified(anycastQ1, new SimpleString(""))); fail("should get exception"); } catch (ActiveMQNonExistentQueueException e) { session.createConsumer(CompositeAddress.toFullyQualified(new SimpleString(""), new SimpleString(""))); fail("should get exception"); } catch (ActiveMQNonExistentQueueException e) {
sendMessages(session, producer, 1); ClientConsumer consumer1 = session.createConsumer(CompositeAddress.toFullyQualified(multicastAddress, multicastQ1)); ClientConsumer consumer2 = session.createConsumer(CompositeAddress.toFullyQualified(multicastAddress, multicastQ2)); ClientConsumer consumer3 = session.createConsumer(CompositeAddress.toFullyQualified(multicastAddress, multicastQ3)); session.start(); QueueQueryResult query = server.queueQuery(CompositeAddress.toFullyQualified(multicastAddress, q)); assertTrue(query.isExists()); assertEquals(multicastAddress, query.getAddress());
session.start(); ClientProducer producer1 = session.createProducer(CompositeAddress.toFullyQualified(anycastAddress, anycastQ1).toString()); for (int i = 0; i < 2; i++) { producer1.send(session.createMessage(false)); ClientProducer producer2 = session.createProducer(CompositeAddress.toFullyQualified(anycastAddress, anycastQ2).toString()); for (int i = 0; i < 3; i++) { producer2.send(session.createMessage(false)); ClientProducer producer3 = session.createProducer(CompositeAddress.toFullyQualified(anycastAddress, anycastQ3).toString()); for (int i = 0; i < 5; i++) { producer3.send(session.createMessage(false)); ClientConsumer consumer1 = session.createConsumer(CompositeAddress.toFullyQualified(anycastAddress, anycastQ1)); ClientConsumer consumer2 = session.createConsumer(CompositeAddress.toFullyQualified(anycastAddress, anycastQ2)); ClientConsumer consumer3 = session.createConsumer(CompositeAddress.toFullyQualified(anycastAddress, anycastQ3)); QueueQueryResult query = server.queueQuery(CompositeAddress.toFullyQualified(anycastAddress, q)); assertTrue(query.isExists()); assertEquals(anycastAddress, query.getAddress());