Class IbisMessageListenerContainer
java.lang.Object
org.springframework.jms.support.JmsAccessor
org.springframework.jms.support.destination.JmsDestinationAccessor
org.springframework.jms.listener.AbstractJmsListeningContainer
org.springframework.jms.listener.AbstractMessageListenerContainer
org.springframework.jms.listener.AbstractPollingMessageListenerContainer
org.springframework.jms.listener.DefaultMessageListenerContainer
org.frankframework.jms.IbisMessageListenerContainer
- All Implemented Interfaces:
org.springframework.beans.factory.Aware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.InitializingBean, org.springframework.context.Lifecycle, org.springframework.context.Phased, org.springframework.context.SmartLifecycle, org.springframework.jms.listener.MessageListenerContainer
public class IbisMessageListenerContainer
extends org.springframework.jms.listener.DefaultMessageListenerContainer
Extend the DefaultMessageListenerContainer from Spring to add trace logging and make it possible to monitor the last
poll finished time.
- Author:
- Niels Meijer, Jaco de Groot
-
Nested Class Summary
Nested classes/interfaces inherited from class org.springframework.jms.listener.AbstractJmsListeningContainer
org.springframework.jms.listener.AbstractJmsListeningContainer.SharedConnectionNotInitializedException -
Field Summary
FieldsFields inherited from class org.springframework.jms.listener.DefaultMessageListenerContainer
CACHE_AUTO, CACHE_CONNECTION, CACHE_CONSUMER, CACHE_NONE, CACHE_SESSION, DEFAULT_RECOVERY_INTERVAL, DEFAULT_THREAD_NAME_PREFIXFields inherited from class org.springframework.jms.listener.AbstractPollingMessageListenerContainer
DEFAULT_RECEIVE_TIMEOUTFields inherited from class org.springframework.jms.listener.AbstractJmsListeningContainer
lifecycleCondition, lifecycleLock, sharedConnectionLockFields inherited from class org.springframework.jms.support.destination.JmsDestinationAccessor
RECEIVE_TIMEOUT_INDEFINITE_WAIT, RECEIVE_TIMEOUT_NO_WAITFields inherited from class org.springframework.jms.support.JmsAccessor
loggerFields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcommitIfNecessary(@NonNull jakarta.jms.Session session, @Nullable jakarta.jms.Message message) protected @NonNull jakarta.jms.Connectionprotected @NonNull jakarta.jms.SessioncreateSession(@NonNull jakarta.jms.Connection conn) protected @NonNull jakarta.jms.Connectionprotected booleandoReceiveAndExecute(@NonNull Object invoker, @Nullable jakarta.jms.Session session, @Nullable jakarta.jms.MessageConsumer consumer, @Nullable org.springframework.transaction.TransactionStatus txStatus) protected jakarta.jms.ConnectiongetConnection(@NonNull org.springframework.jms.connection.JmsResourceHolder holder) protected jakarta.jms.SessiongetSession(@NonNull org.springframework.jms.connection.JmsResourceHolder holder) protected booleanreceiveAndExecute(@NonNull Object asyncMessageListenerInvoker, @Nullable jakarta.jms.Session session, @Nullable jakarta.jms.MessageConsumer consumer) voidsetCredentialFactory(CredentialFactory credentialFactory) Methods inherited from class org.springframework.jms.listener.DefaultMessageListenerContainer
applyBackOffTime, createDefaultTaskExecutor, doInitialize, doRescheduleTask, doShutdown, establishSharedConnection, getActiveConsumerCount, getCacheLevel, getConcurrentConsumers, getIdleConsumerLimit, getIdleReceivesPerTaskLimit, getIdleTaskExecutionLimit, getMaxConcurrentConsumers, getMaxMessagesPerTask, getScheduledConsumerCount, handleListenerSetupFailure, initialize, isRecovering, isRegisteredWithDestination, messageReceived, noMessageReceived, recoverAfterListenerSetupFailure, refreshConnectionUntilSuccessful, refreshDestination, scheduleNewInvokerIfAppropriate, setBackOff, setCacheLevel, setCacheLevelName, setConcurrency, setConcurrentConsumers, setIdleConsumerLimit, setIdleReceivesPerTaskLimit, setIdleTaskExecutionLimit, setMaxConcurrentConsumers, setMaxMessagesPerTask, setRecoveryInterval, setTaskExecutor, setVirtualThreads, sharedConnectionEnabled, start, startSharedConnection, stop, stopSharedConnectionMethods inherited from class org.springframework.jms.listener.AbstractPollingMessageListenerContainer
createListenerConsumer, getReceiveTimeout, getTransactionManager, isSessionLocallyTransacted, receiveMessage, setReceiveTimeout, setSessionTransacted, setTransactionManager, setTransactionName, setTransactionTimeout, shouldCommitAfterNoMessageReceivedMethods inherited from class org.springframework.jms.listener.AbstractMessageListenerContainer
checkMessageListener, createConsumer, createObservation, doExecuteListener, doInvokeListener, doInvokeListener, executeListener, getDefaultSubscriptionName, getDestination, getDestinationDescription, getDestinationName, getDurableSubscriptionName, getErrorHandler, getExceptionListener, getMessageConverter, getMessageListener, getMessageSelector, getObservationRegistry, getReplyQosSettings, getSubscriptionName, handleListenerException, invokeErrorHandler, invokeExceptionListener, invokeListener, isAcceptMessagesWhileStopping, isAcknowledgeAfterListener, isExposeListenerSession, isPubSubNoLocal, isReplyPubSubDomain, isSubscriptionDurable, isSubscriptionShared, rollbackIfNecessary, rollbackOnExceptionIfNecessary, setAcceptMessagesWhileStopping, setAcknowledgeAfterListener, setDestination, setDestinationName, setDurableSubscriptionName, setErrorHandler, setExceptionListener, setExposeListenerSession, setMessageConverter, setMessageListener, setMessageSelector, setObservationRegistry, setPubSubNoLocal, setReplyPubSubDomain, setReplyQosSettings, setSubscriptionDurable, setSubscriptionName, setSubscriptionShared, setupMessageListener, validateConfigurationMethods inherited from class org.springframework.jms.listener.AbstractJmsListeningContainer
afterPropertiesSet, destroy, doStart, doStop, getBeanName, getClientId, getPausedTaskCount, getPhase, getSharedConnection, isActive, isAutoStartup, isRunning, logRejectedTask, prepareSharedConnection, refreshSharedConnection, releaseSharedConnection, rescheduleTaskIfNecessary, resumePausedTasks, runningAllowed, setAutoStartup, setBeanName, setClientId, setPhase, shutdown, stopMethods inherited from class org.springframework.jms.support.destination.JmsDestinationAccessor
getDestinationResolver, isPubSubDomain, receiveFromConsumer, resolveDestinationName, setDestinationResolver, setPubSubDomainMethods inherited from class org.springframework.jms.support.JmsAccessor
convertJmsAccessException, getConnectionFactory, getSessionAcknowledgeMode, isClientAcknowledge, isSessionTransacted, obtainConnectionFactory, setConnectionFactory, setSessionAcknowledgeMode, setSessionAcknowledgeModeNameMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.context.Lifecycle
isRunning, stopMethods inherited from interface org.springframework.jms.listener.MessageListenerContainer
getDestinationResolver, isPubSubDomainMethods inherited from interface org.springframework.context.SmartLifecycle
getPhase, isAutoStartup, isPauseable
-
Field Details
-
log
protected org.apache.logging.log4j.Logger log
-
-
Constructor Details
-
IbisMessageListenerContainer
public IbisMessageListenerContainer()
-
-
Method Details
-
createConnection
protected @NonNull jakarta.jms.Connection createConnection() throws jakarta.jms.JMSException- Overrides:
createConnectionin classorg.springframework.jms.support.JmsAccessor- Throws:
jakarta.jms.JMSException
-
createSession
protected @NonNull jakarta.jms.Session createSession(@NonNull jakarta.jms.Connection conn) throws jakarta.jms.JMSException - Overrides:
createSessionin classorg.springframework.jms.support.JmsAccessor- Throws:
jakarta.jms.JMSException
-
getConnection
protected jakarta.jms.Connection getConnection(@NonNull org.springframework.jms.connection.JmsResourceHolder holder) - Overrides:
getConnectionin classorg.springframework.jms.listener.AbstractPollingMessageListenerContainer
-
getSession
protected jakarta.jms.Session getSession(@NonNull org.springframework.jms.connection.JmsResourceHolder holder) - Overrides:
getSessionin classorg.springframework.jms.listener.AbstractPollingMessageListenerContainer
-
receiveAndExecute
protected boolean receiveAndExecute(@NonNull Object asyncMessageListenerInvoker, @Nullable jakarta.jms.Session session, @Nullable jakarta.jms.MessageConsumer consumer) throws jakarta.jms.JMSException - Overrides:
receiveAndExecutein classorg.springframework.jms.listener.AbstractPollingMessageListenerContainer- Throws:
jakarta.jms.JMSException
-
doReceiveAndExecute
protected boolean doReceiveAndExecute(@NonNull Object invoker, @Nullable jakarta.jms.Session session, @Nullable jakarta.jms.MessageConsumer consumer, @Nullable org.springframework.transaction.TransactionStatus txStatus) throws jakarta.jms.JMSException - Overrides:
doReceiveAndExecutein classorg.springframework.jms.listener.AbstractPollingMessageListenerContainer- Throws:
jakarta.jms.JMSException
-
commitIfNecessary
protected void commitIfNecessary(@NonNull jakarta.jms.Session session, @Nullable jakarta.jms.Message message) throws jakarta.jms.JMSException - Overrides:
commitIfNecessaryin classorg.springframework.jms.listener.AbstractMessageListenerContainer- Throws:
jakarta.jms.JMSException
-
setCredentialFactory
-
getCredentialFactory
-