Example usage for org.springframework.jms.listener DefaultMessageListenerContainer stop

List of usage examples for org.springframework.jms.listener DefaultMessageListenerContainer stop

Introduction

In this page you can find the example usage for org.springframework.jms.listener DefaultMessageListenerContainer stop.

Prototype

@Override
public void stop() throws JmsException 

Source Link

Document

Stop this container.

Usage

From source file:com.oneops.inductor.Listener.java

/**
 * init - configuration / defaults/*from   ww w  .  ja  va2  s .c o  m*/
 */
public void init() throws Exception {

    filesystem = new File(config.getDataDir());
    checkFreeSpace();
    logger.info(this);
    Runtime.getRuntime().addShutdownHook(new Thread(() -> {
        DefaultMessageListenerContainer listenerContainer = (DefaultMessageListenerContainer) applicationContext
                .getBean("listenerContainer");

        logger.info("Stopping listener container...");
        listenerContainer.stop();
        while (activeThreads.get() > 0) {
            logger.info("Shutdown in progress. sleeping for 10sec. activeThreads: " + activeThreads);
            try {
                Thread.currentThread().sleep(10000);
            } catch (InterruptedException e) {
                logger.info("Got InterruptedException, but will still let the activeThreads complete.");
            }
        }
        logger.info("Shutdown done.");
    }));

}

From source file:ch.algotrader.service.SubscriptionServiceImpl.java

private void updateMessageSelector(final DefaultMessageListenerContainer genericMessageListenerContainer,
        String messageSelector) {

    genericMessageListenerContainer.setMessageSelector(messageSelector);

    // restart the container (must do this in a separate thread to prevent dead-locks)
    (new Thread() {
        @Override/*  ww  w  .  j  a  v  a2 s. c om*/
        public void run() {
            genericMessageListenerContainer.stop();
            genericMessageListenerContainer.shutdown();
            genericMessageListenerContainer.start();
            genericMessageListenerContainer.initialize();
        }
    }).start();
}

From source file:com.oneops.inductor.Listener.java

/**
 * check for free space - shutdownshutdown listener and gracefully exit if full
 *//*from w w w  . j a  va  2 s . c  om*/
@SuppressWarnings("static-access")
private void checkFreeSpace() {
    long freeMB = filesystem.getFreeSpace() / 1024 / 1024;

    if (freeMB < config.getMinFreeSpaceMB()) {
        DefaultMessageListenerContainer listenerContainer = (DefaultMessageListenerContainer) applicationContext
                .getBean("listenerContainer");

        logger.info("Stopping listener container due to " + config.getDataDir() + " free space mb: " + freeMB
                + " ... min_free_space_mb: " + config.getMinFreeSpaceMB());
        listenerContainer.stop();
        while (activeThreads.get() > 0) {
            logger.error("Shutdown in progress due " + config.getDataDir() + " free space mb: " + freeMB
                    + " ... min_free_space_mb: " + config.getMinFreeSpaceMB()
                    + ". sleeping for 10sec. activeThreads: " + activeThreads);
            try {
                Thread.currentThread().sleep(10000);
            } catch (InterruptedException e) {
                logger.info("Got InterruptedException, but will still let the activeThreads complete.");
            }
        }
        Runtime.getRuntime().exit(1);
    } else
        logger.info(config.getDataDir() + " free space mb: " + freeMB);
}