org.ikasan.framework.initiator.messagedriven.spring
Class SpringMessageListenerContainer

java.lang.Object
  extended by org.springframework.jms.support.JmsAccessor
      extended by org.springframework.jms.support.destination.JmsDestinationAccessor
          extended by org.springframework.jms.listener.AbstractJmsListeningContainer
              extended by org.springframework.jms.listener.AbstractMessageListenerContainer
                  extended by org.springframework.jms.listener.AbstractPollingMessageListenerContainer
                      extended by org.springframework.jms.listener.DefaultMessageListenerContainer
                          extended by org.ikasan.framework.initiator.messagedriven.spring.SpringMessageListenerContainer
All Implemented Interfaces:
MessageListenerContainer, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.Lifecycle

public class SpringMessageListenerContainer
extends org.springframework.jms.listener.DefaultMessageListenerContainer
implements MessageListenerContainer

Extension of Spring's DefaultMessageListenerContainer to expose listener setup failures to a registered Listener

Author:
Ikasan Development Team

Nested Class Summary
 
Nested classes/interfaces inherited from class org.springframework.jms.listener.AbstractJmsListeningContainer
org.springframework.jms.listener.AbstractJmsListeningContainer.SharedConnectionNotInitializedException
 
Field Summary
 
Fields inherited from class org.springframework.jms.listener.DefaultMessageListenerContainer
CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, CACHE_SESSION, DEFAULT_RECOVERY_INTERVAL, DEFAULT_THREAD_NAME_PREFIX
 
Fields inherited from class org.springframework.jms.listener.AbstractPollingMessageListenerContainer
DEFAULT_RECEIVE_TIMEOUT
 
Fields inherited from class org.springframework.jms.listener.AbstractJmsListeningContainer
lifecycleMonitor, sharedConnectionMonitor
 
Constructor Summary
SpringMessageListenerContainer()
           
 
Method Summary
protected  void handleListenerSetupFailure(Throwable ex, boolean alreadyRecovered)
           
 boolean isListenerSetupFailure()
          Accessor for listenerSetupFailure flag
protected  boolean receiveAndExecute(Object invoker, javax.jms.Session session, javax.jms.MessageConsumer consumer)
           
 void setListenerSetupExceptionListener(ListenerSetupFailureListener listenerSetupExceptionListener)
          Allows registration of a listener object that responds to listener setup failures
 
Methods inherited from class org.springframework.jms.listener.DefaultMessageListenerContainer
createDefaultTaskExecutor, doInitialize, doRescheduleTask, doShutdown, establishSharedConnection, getActiveConsumerCount, getCacheLevel, getConcurrentConsumers, getIdleTaskExecutionLimit, getMaxConcurrentConsumers, getMaxMessagesPerTask, getScheduledConsumerCount, initialize, messageReceived, noMessageReceived, recoverAfterListenerSetupFailure, refreshConnectionUntilSuccessful, refreshDestination, scheduleNewInvokerIfAppropriate, setCacheLevel, setCacheLevelName, setConcurrentConsumers, setIdleTaskExecutionLimit, setMaxConcurrentConsumers, setMaxMessagesPerTask, setRecoveryInterval, setTaskExecutor, sharedConnectionEnabled, sleepInbetweenRecoveryAttempts, start, startSharedConnection, stop, stopSharedConnection, validateConfiguration
 
Methods inherited from class org.springframework.jms.listener.AbstractPollingMessageListenerContainer
createConsumer, createListenerConsumer, doReceiveAndExecute, getConnection, getSession, getTransactionManager, isPubSubNoLocal, isSessionLocallyTransacted, receiveMessage, setPubSubNoLocal, setReceiveTimeout, setSessionTransacted, setTransactionManager, setTransactionName, setTransactionTimeout
 
Methods inherited from class org.springframework.jms.listener.AbstractMessageListenerContainer
checkMessageListener, commitIfNecessary, doExecuteListener, doInvokeListener, doInvokeListener, executeListener, getDefaultSubscriptionName, getDestination, getDestinationDescription, getDestinationName, getDurableSubscriptionName, getExceptionListener, getMessageListener, getMessageSelector, handleListenerException, invokeExceptionListener, invokeListener, isAcceptMessagesWhileStopping, isExposeListenerSession, isSubscriptionDurable, rollbackIfNecessary, rollbackOnExceptionIfNecessary, setAcceptMessagesWhileStopping, setDestination, setDestinationName, setDurableSubscriptionName, setExceptionListener, setExposeListenerSession, setMessageListener, setMessageSelector, setSubscriptionDurable
 
Methods inherited from class org.springframework.jms.listener.AbstractJmsListeningContainer
afterPropertiesSet, createSharedConnection, destroy, doStart, doStop, getBeanName, getClientId, getPausedTaskCount, getSharedConnection, isActive, isRunning, logRejectedTask, prepareSharedConnection, refreshSharedConnection, rescheduleTaskIfNecessary, resumePausedTasks, runningAllowed, setAutoStartup, setBeanName, setClientId, shutdown, stop
 
Methods inherited from class org.springframework.jms.support.destination.JmsDestinationAccessor
getDestinationResolver, isPubSubDomain, resolveDestinationName, setDestinationResolver, setPubSubDomain
 
Methods inherited from class org.springframework.jms.support.JmsAccessor
convertJmsAccessException, createConnection, createSession, getConnectionFactory, getSessionAcknowledgeMode, isClientAcknowledge, isSessionTransacted, setConnectionFactory, setSessionAcknowledgeMode, setSessionAcknowledgeModeName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.ikasan.framework.initiator.messagedriven.MessageListenerContainer
isRunning, start, stop
 
Methods inherited from interface org.springframework.beans.factory.BeanNameAware
setBeanName
 

Constructor Detail

SpringMessageListenerContainer

public SpringMessageListenerContainer()
Method Detail

setListenerSetupExceptionListener

public void setListenerSetupExceptionListener(ListenerSetupFailureListener listenerSetupExceptionListener)
Description copied from interface: MessageListenerContainer
Allows registration of a listener object that responds to listener setup failures

Specified by:
setListenerSetupExceptionListener in interface MessageListenerContainer

isListenerSetupFailure

public boolean isListenerSetupFailure()
Accessor for listenerSetupFailure flag

Returns:
listenerSetupFailure

handleListenerSetupFailure

protected void handleListenerSetupFailure(Throwable ex,
                                          boolean alreadyRecovered)
Overrides:
handleListenerSetupFailure in class org.springframework.jms.listener.DefaultMessageListenerContainer

receiveAndExecute

protected boolean receiveAndExecute(Object invoker,
                                    javax.jms.Session session,
                                    javax.jms.MessageConsumer consumer)
                             throws javax.jms.JMSException
Overrides:
receiveAndExecute in class org.springframework.jms.listener.AbstractPollingMessageListenerContainer
Throws:
javax.jms.JMSException


Copyright © 2007-2012 Ikasan. All Rights Reserved.