Package org.frankframework.jms
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
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
lifecycleCondition, lifecycleLock, sharedConnectionLock
Fields inherited from class org.springframework.jms.support.destination.JmsDestinationAccessor
RECEIVE_TIMEOUT_INDEFINITE_WAIT, RECEIVE_TIMEOUT_NO_WAIT
Fields inherited from class org.springframework.jms.support.JmsAccessor
logger
Fields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected void
commitIfNecessary
(jakarta.jms.Session session, jakarta.jms.Message message) protected jakarta.jms.Connection
protected jakarta.jms.Session
createSession
(jakarta.jms.Connection conn) protected jakarta.jms.Connection
protected boolean
doReceiveAndExecute
(Object invoker, jakarta.jms.Session session, jakarta.jms.MessageConsumer consumer, org.springframework.transaction.TransactionStatus txStatus) protected jakarta.jms.Connection
getConnection
(org.springframework.jms.connection.JmsResourceHolder holder) protected jakarta.jms.Session
getSession
(org.springframework.jms.connection.JmsResourceHolder holder) protected boolean
receiveAndExecute
(Object asyncMessageListenerInvoker, jakarta.jms.Session session, jakarta.jms.MessageConsumer consumer) void
setCredentialFactory
(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, stopSharedConnection
Methods inherited from class org.springframework.jms.listener.AbstractPollingMessageListenerContainer
createListenerConsumer, getReceiveTimeout, getTransactionManager, isSessionLocallyTransacted, receiveMessage, setReceiveTimeout, setSessionTransacted, setTransactionManager, setTransactionName, setTransactionTimeout, shouldCommitAfterNoMessageReceived
Methods 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, isExposeListenerSession, isPubSubNoLocal, isReplyPubSubDomain, isSubscriptionDurable, isSubscriptionShared, rollbackIfNecessary, rollbackOnExceptionIfNecessary, setAcceptMessagesWhileStopping, setDestination, setDestinationName, setDurableSubscriptionName, setErrorHandler, setExceptionListener, setExposeListenerSession, setMessageConverter, setMessageListener, setMessageSelector, setObservationRegistry, setPubSubNoLocal, setReplyPubSubDomain, setReplyQosSettings, setSubscriptionDurable, setSubscriptionName, setSubscriptionShared, setupMessageListener, validateConfiguration
Methods 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, stop
Methods inherited from class org.springframework.jms.support.destination.JmsDestinationAccessor
getDestinationResolver, isPubSubDomain, receiveFromConsumer, resolveDestinationName, setDestinationResolver, setPubSubDomain
Methods inherited from class org.springframework.jms.support.JmsAccessor
convertJmsAccessException, getConnectionFactory, getSessionAcknowledgeMode, isClientAcknowledge, isSessionTransacted, obtainConnectionFactory, 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.springframework.context.Lifecycle
isRunning, stop
Methods inherited from interface org.springframework.jms.listener.MessageListenerContainer
getDestinationResolver, isPubSubDomain
Methods inherited from interface org.springframework.context.SmartLifecycle
getPhase, isAutoStartup
-
Field Details
-
log
protected org.apache.logging.log4j.Logger log
-
-
Constructor Details
-
IbisMessageListenerContainer
public IbisMessageListenerContainer()
-
-
Method Details
-
createConnection
@Nonnull protected jakarta.jms.Connection createConnection() throws jakarta.jms.JMSException- Overrides:
createConnection
in classorg.springframework.jms.support.JmsAccessor
- Throws:
jakarta.jms.JMSException
-
createSession
@Nonnull protected jakarta.jms.Session createSession(@Nonnull jakarta.jms.Connection conn) throws jakarta.jms.JMSException - Overrides:
createSession
in classorg.springframework.jms.support.JmsAccessor
- Throws:
jakarta.jms.JMSException
-
getConnection
protected jakarta.jms.Connection getConnection(@Nonnull org.springframework.jms.connection.JmsResourceHolder holder) - Overrides:
getConnection
in classorg.springframework.jms.listener.AbstractPollingMessageListenerContainer
-
getSession
protected jakarta.jms.Session getSession(@Nonnull org.springframework.jms.connection.JmsResourceHolder holder) - Overrides:
getSession
in 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:
receiveAndExecute
in 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:
doReceiveAndExecute
in 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:
commitIfNecessary
in classorg.springframework.jms.listener.AbstractMessageListenerContainer
- Throws:
jakarta.jms.JMSException
-
setCredentialFactory
-
getCredentialFactory
-