public boolean isClosed() { return consumer.isClosed(); }
private void checkClosed() throws JMSException { if (consumer.isClosed() || session.getCoreSession().isClosed()) { throw new IllegalStateException("Consumer is closed"); } }
try { if (!consumer.isClosed() && !transactedOrClientAck) { message.acknowledge();
public boolean isClosed() { return consumer.isClosed(); }
public boolean isClosed() { return consumer.isClosed(); }
public boolean isClosed() { return consumer.isClosed(); }
public boolean isClosed() { return consumer.isClosed(); }
@Override public boolean isSatisfied() throws Exception { return consumer.isClosed(); } }, 1000, 100);
private void checkClosed() throws JMSException { if (consumer.isClosed() || session.getCoreSession().isClosed()) { throw new IllegalStateException("Consumer is closed"); } }
private void checkClosed() throws JMSException { if (consumer.isClosed() || session.getCoreSession().isClosed()) { throw new IllegalStateException("Consumer is closed"); } }
private void assertAllClientConsumersAreClosed() { synchronized (clientConsumers) { for (ClientConsumer cc : clientConsumers) { if (cc == null) continue; assertTrue(cc.isClosed()); } clientConsumers.clear(); } }
private void checkClosed() throws JMSException { if (consumer.isClosed() || session.getCoreSession().isClosed()) { throw new IllegalStateException("Consumer is closed"); } }
private void checkClosed() throws JMSException { if (consumer.isClosed() || session.getCoreSession().isClosed()) { throw new IllegalStateException("Consumer is closed"); } }
private void dumpConsumers() throws Exception { for (int i = 0; i < consumers.length; i++) { if (consumers[i] != null && !consumers[i].consumer.isClosed()) { log.info("Dumping consumer " + i); checkReceive(i); } } }
@Test public void testCloseCOREclient() throws Exception { SimpleString address = RandomUtil.randomSimpleString(); SimpleString name = RandomUtil.randomSimpleString(); boolean durable = true; ActiveMQServerControl serverControl = createManagementControl(); checkNoResource(ObjectNameBuilder.DEFAULT.getQueueObjectName(address, name, RoutingType.ANYCAST)); serverControl.createAddress(address.toString(), "ANYCAST"); serverControl.createQueue(address.toString(), "ANYCAST", name.toString(), null, durable, -1, false, false); ServerLocator receiveLocator = createInVMNonHALocator(); ClientSessionFactory receiveCsf = createSessionFactory(receiveLocator); ClientSession receiveClientSession = receiveCsf.createSession(true, false, false); final ClientConsumer COREclient = receiveClientSession.createConsumer(name); ServerSession ss = server.getSessions().iterator().next(); ServerConsumer sc = ss.getServerConsumers().iterator().next(); Assert.assertFalse(COREclient.isClosed()); serverControl.closeConsumerWithID(((ClientSessionImpl)receiveClientSession).getName(), Long.toString(sc.sequentialID())); Wait.waitFor(() -> COREclient.isClosed()); Assert.assertTrue(COREclient.isClosed()); }
@Test public void testClose() throws Exception { cf = createSessionFactory(locator); ClientSession clientSession = cf.createSession(false, true, true); clientSession.createQueue(queueName, queueName, false); ClientProducer p = clientSession.createProducer(); ClientProducer p1 = clientSession.createProducer(queueName); ClientConsumer c = clientSession.createConsumer(queueName); ClientConsumer c1 = clientSession.createConsumer(queueName); clientSession.close(); Assert.assertTrue(clientSession.isClosed()); Assert.assertTrue(p.isClosed()); Assert.assertTrue(p1.isClosed()); Assert.assertTrue(c.isClosed()); Assert.assertTrue(c1.isClosed()); }
@Test public void testCanNotUseAClosedConsumer() throws Exception { final ClientConsumer consumer = session.createConsumer(queue); consumer.close(); Assert.assertTrue(consumer.isClosed()); expectActiveMQException(ActiveMQExceptionType.OBJECT_CLOSED, new ActiveMQAction() { @Override public void run() throws ActiveMQException { consumer.receive(); } }); expectActiveMQException(ActiveMQExceptionType.OBJECT_CLOSED, new ActiveMQAction() { @Override public void run() throws ActiveMQException { consumer.receiveImmediate(); } }); expectActiveMQException(ActiveMQExceptionType.OBJECT_CLOSED, new ActiveMQAction() { @Override public void run() throws ActiveMQException { consumer.setMessageHandler(new MessageHandler() { @Override public void onMessage(final ClientMessage message) { } }); } }); }
@Test public void testCloseHierarchy() throws Exception { SimpleString address = RandomUtil.randomSimpleString(); SimpleString queue = RandomUtil.randomSimpleString(); ClientSession session = sf.createSession(false, true, true); session.createQueue(address, queue, false); ClientProducer producer = session.createProducer(address); ClientConsumer consumer = session.createConsumer(queue); session.close(); Assert.assertTrue(session.isClosed()); Assert.assertTrue(producer.isClosed()); Assert.assertTrue(consumer.isClosed()); }
@Test public void testCreateAndDestroyQueueClosingConsumers() throws Exception { SimpleString address = RandomUtil.randomSimpleString(); SimpleString name = RandomUtil.randomSimpleString(); boolean durable = true; ActiveMQServerControl serverControl = createManagementControl(); checkNoResource(ObjectNameBuilder.DEFAULT.getQueueObjectName(address, name, RoutingType.ANYCAST)); serverControl.createAddress(address.toString(), "ANYCAST"); serverControl.createQueue(address.toString(), "ANYCAST", name.toString(), null, durable, -1, false, false); ServerLocator receiveLocator = createInVMNonHALocator(); ClientSessionFactory receiveCsf = createSessionFactory(receiveLocator); ClientSession receiveClientSession = receiveCsf.createSession(true, false, false); final ClientConsumer consumer = receiveClientSession.createConsumer(name); Assert.assertFalse(consumer.isClosed()); checkResource(ObjectNameBuilder.DEFAULT.getQueueObjectName(address, name, RoutingType.ANYCAST)); serverControl.destroyQueue(name.toString(), true); Wait.waitFor(new Wait.Condition() { @Override public boolean isSatisfied() throws Exception { return consumer.isClosed(); } }, 1000, 100); Assert.assertTrue(consumer.isClosed()); checkNoResource(ObjectNameBuilder.DEFAULT.getQueueObjectName(address, name, RoutingType.ANYCAST)); }
Assert.assertTrue(cons.isClosed());