@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public void clear(boolean waitForOnMessage) throws ActiveMQException { synchronized (this) { // Need to send credits for the messages in the buffer Iterator<ClientMessageInternal> iter = buffer.iterator(); while (iter.hasNext()) { try { ClientMessageInternal message = iter.next(); if (message.isLargeMessage()) { ClientLargeMessageInternal largeMessage = (ClientLargeMessageInternal) message; largeMessage.getLargeMessageController().cancel(); } flowControlBeforeConsumption(message); } catch (Exception e) { ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } clearBuffer(); try { resetLargeMessageController(); } catch (Throwable e) { // nothing that could be done here ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } // Need to send credits for the messages in the buffer waitForOnMessageToComplete(waitForOnMessage); }
@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public void stop(final boolean waitForOnMessage) throws ActiveMQException { if (browseOnly) { // stop shouldn't affect browser delivery return; } synchronized (this) { if (stopped) { return; } stopped = true; } waitForOnMessageToComplete(waitForOnMessage); }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public synchronized ClientConsumerImpl setMessageHandler(final MessageHandler theHandler) throws ActiveMQException { checkClosed(); if (receiverThread != null) { throw ActiveMQClientMessageBundle.BUNDLE.inReceive(); } boolean noPreviousHandler = handler == null; if (handler != theHandler && clientWindowSize == 0) { startSlowConsumer(); } handler = theHandler; // if no previous handler existed queue up messages for delivery if (handler != null && noPreviousHandler) { requeueExecutors(); } else if (handler == null && !noPreviousHandler) { // if unsetting a previous handler may be in onMessage so wait for completion waitForOnMessageToComplete(true); } return this; }
@Override public void clear(boolean waitForOnMessage) throws ActiveMQException { synchronized (this) { // Need to send credits for the messages in the buffer Iterator<ClientMessageInternal> iter = buffer.iterator(); while (iter.hasNext()) { try { ClientMessageInternal message = iter.next(); if (message.isLargeMessage()) { ClientLargeMessageInternal largeMessage = (ClientLargeMessageInternal) message; largeMessage.getLargeMessageController().cancel(); } flowControlBeforeConsumption(message); } catch (Exception e) { ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } clearBuffer(); try { resetLargeMessageController(); } catch (Throwable e) { // nothing that could be done here ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } // Need to send credits for the messages in the buffer waitForOnMessageToComplete(waitForOnMessage); }
@Override public void clear(boolean waitForOnMessage) throws ActiveMQException { synchronized (this) { // Need to send credits for the messages in the buffer Iterator<ClientMessageInternal> iter = buffer.iterator(); while (iter.hasNext()) { try { ClientMessageInternal message = iter.next(); if (message.isLargeMessage()) { ClientLargeMessageInternal largeMessage = (ClientLargeMessageInternal) message; largeMessage.getLargeMessageController().cancel(); } flowControlBeforeConsumption(message); } catch (Exception e) { ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } clearBuffer(); try { resetLargeMessageController(); } catch (Throwable e) { // nothing that could be done here ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } // Need to send credits for the messages in the buffer waitForOnMessageToComplete(waitForOnMessage); }
@Override public void clear(boolean waitForOnMessage) throws ActiveMQException { synchronized (this) { // Need to send credits for the messages in the buffer Iterator<ClientMessageInternal> iter = buffer.iterator(); while (iter.hasNext()) { try { ClientMessageInternal message = iter.next(); if (message.isLargeMessage()) { ClientLargeMessageInternal largeMessage = (ClientLargeMessageInternal) message; largeMessage.getLargeMessageController().cancel(); } flowControlBeforeConsumption(message); } catch (Exception e) { ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } clearBuffer(); try { resetLargeMessageController(); } catch (Throwable e) { // nothing that could be done here ActiveMQClientLogger.LOGGER.errorClearingMessages(e); } } // Need to send credits for the messages in the buffer waitForOnMessageToComplete(waitForOnMessage); }