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
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(jakarta.jms.Session session, jakarta.jms.Message message) protected jakarta.jms.Connectionprotected jakarta.jms.SessioncreateSession(jakarta.jms.Connection conn) protected jakarta.jms.Connectionprotected booleandoReceiveAndExecute(Object invoker, jakarta.jms.Session session, jakarta.jms.MessageConsumer consumer, org.springframework.transaction.TransactionStatus txStatus) protected jakarta.jms.ConnectiongetConnection(org.springframework.jms.connection.JmsResourceHolder holder) protected jakarta.jms.SessiongetSession(org.springframework.jms.connection.JmsResourceHolder holder) protected booleanreceiveAndExecute(Object asyncMessageListenerInvoker, jakarta.jms.Session session, 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 java.lang.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
-
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:
createConnectionin 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:
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
-