Class AbstractPulsarMessageListenerContainer<T>
java.lang.Object
org.springframework.pulsar.core.AbstractPulsarMessageContainer
org.springframework.pulsar.listener.AbstractPulsarMessageListenerContainer<T>
- Type Parameters:
T
- message type.
- All Implemented Interfaces:
Aware
,BeanNameAware
,DisposableBean
,ApplicationContextAware
,ApplicationEventPublisherAware
,Lifecycle
,Phased
,SmartLifecycle
,MessageListenerContainer
,PulsarMessageListenerContainer
- Direct Known Subclasses:
ConcurrentPulsarMessageListenerContainer
,DefaultPulsarMessageListenerContainer
public abstract non-sealed class AbstractPulsarMessageListenerContainer<T>
extends AbstractPulsarMessageContainer
implements PulsarMessageListenerContainer
Base implementation for the
PulsarMessageListenerContainer
.- Author:
- Soby Chacko, Alexander Preuß
-
Field Summary
Modifier and TypeFieldDescriptionprotected org.apache.pulsar.client.api.RedeliveryBackoff
protected ConsumerBuilderCustomizer<T>
protected org.apache.pulsar.client.api.DeadLetterPolicy
protected final ReentrantLock
protected org.apache.pulsar.client.api.RedeliveryBackoff
protected PulsarConsumerErrorHandler<T>
Fields inherited from class org.springframework.pulsar.core.AbstractPulsarMessageContainer
autoStartup, logger, running
Fields inherited from interface org.springframework.context.SmartLifecycle
DEFAULT_PHASE
-
Constructor Summary
ModifierConstructorDescriptionprotected
AbstractPulsarMessageListenerContainer
(PulsarConsumerFactory<? super T> pulsarConsumerFactory, PulsarContainerProperties pulsarContainerProperties) -
Method Summary
Modifier and TypeMethodDescriptionprotected abstract void
doPause()
protected abstract void
doResume()
org.apache.pulsar.client.api.RedeliveryBackoff
org.apache.pulsar.client.api.DeadLetterPolicy
org.apache.pulsar.client.api.RedeliveryBackoff
boolean
protected boolean
isPaused()
boolean
void
pause()
Pause this container before the next poll().void
resume()
Resume this container, if paused.void
setAckTimeoutRedeliveryBackoff
(org.apache.pulsar.client.api.RedeliveryBackoff redeliveryBackoff) void
setAutoStartup
(boolean autoStartup) void
setConsumerCustomizer
(ConsumerBuilderCustomizer<?> consumerBuilderCustomizer) Set a consumer customizer on this container.void
setDeadLetterPolicy
(org.apache.pulsar.client.api.DeadLetterPolicy deadLetterPolicy) void
setNegativeAckRedeliveryBackoff
(org.apache.pulsar.client.api.RedeliveryBackoff redeliveryBackoff) protected void
setPaused
(boolean paused) void
setPulsarConsumerErrorHandler
(PulsarConsumerErrorHandler pulsarConsumerErrorHandler) protected void
setRunning
(boolean running) void
setupMessageListener
(Object messageListener) final void
start()
void
stop()
Methods inherited from class org.springframework.pulsar.core.AbstractPulsarMessageContainer
doStart, doStop, getApplicationContext, getApplicationEventPublisher, getBeanName, getPhase, setApplicationContext, setApplicationEventPublisher, setBeanName, setPhase
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.springframework.pulsar.listener.MessageListenerContainer
destroy
Methods inherited from interface org.springframework.context.SmartLifecycle
getPhase, stop
-
Field Details
-
lifecycleLock
-
negativeAckRedeliveryBackoff
protected org.apache.pulsar.client.api.RedeliveryBackoff negativeAckRedeliveryBackoff -
ackTimeoutRedeliveryBackoff
protected org.apache.pulsar.client.api.RedeliveryBackoff ackTimeoutRedeliveryBackoff -
deadLetterPolicy
protected org.apache.pulsar.client.api.DeadLetterPolicy deadLetterPolicy -
pulsarConsumerErrorHandler
-
consumerBuilderCustomizer
-
-
Constructor Details
-
AbstractPulsarMessageListenerContainer
protected AbstractPulsarMessageListenerContainer(PulsarConsumerFactory<? super T> pulsarConsumerFactory, PulsarContainerProperties pulsarContainerProperties)
-
-
Method Details
-
getPulsarConsumerFactory
-
getContainerProperties
- Specified by:
getContainerProperties
in interfacePulsarMessageListenerContainer
-
isRunning
public boolean isRunning() -
setRunning
protected void setRunning(boolean running) -
setupMessageListener
- Specified by:
setupMessageListener
in interfacePulsarMessageListenerContainer
-
isAutoStartup
public boolean isAutoStartup()- Specified by:
isAutoStartup
in interfaceSmartLifecycle
-
setAutoStartup
public void setAutoStartup(boolean autoStartup) - Specified by:
setAutoStartup
in interfaceMessageListenerContainer
-
start
public final void start() -
stop
public void stop() -
setNegativeAckRedeliveryBackoff
public void setNegativeAckRedeliveryBackoff(org.apache.pulsar.client.api.RedeliveryBackoff redeliveryBackoff) - Specified by:
setNegativeAckRedeliveryBackoff
in interfacePulsarMessageListenerContainer
-
setAckTimeoutRedeliveryBackoff
public void setAckTimeoutRedeliveryBackoff(org.apache.pulsar.client.api.RedeliveryBackoff redeliveryBackoff) - Specified by:
setAckTimeoutRedeliveryBackoff
in interfacePulsarMessageListenerContainer
-
getNegativeAckRedeliveryBackoff
public org.apache.pulsar.client.api.RedeliveryBackoff getNegativeAckRedeliveryBackoff() -
getAckTimeoutkRedeliveryBackoff
public org.apache.pulsar.client.api.RedeliveryBackoff getAckTimeoutkRedeliveryBackoff() -
setDeadLetterPolicy
public void setDeadLetterPolicy(org.apache.pulsar.client.api.DeadLetterPolicy deadLetterPolicy) - Specified by:
setDeadLetterPolicy
in interfacePulsarMessageListenerContainer
-
getDeadLetterPolicy
public org.apache.pulsar.client.api.DeadLetterPolicy getDeadLetterPolicy() -
getPulsarConsumerErrorHandler
-
setPulsarConsumerErrorHandler
- Specified by:
setPulsarConsumerErrorHandler
in interfacePulsarMessageListenerContainer
-
setConsumerCustomizer
Description copied from interface:PulsarMessageListenerContainer
Set a consumer customizer on this container.- Specified by:
setConsumerCustomizer
in interfacePulsarMessageListenerContainer
- Parameters:
consumerBuilderCustomizer
-ConsumerBuilderCustomizer
-
getConsumerBuilderCustomizer
-
pause
public void pause()Description copied from interface:PulsarMessageListenerContainer
Pause this container before the next poll(). The next poll by the container will be disabled as long asPulsarMessageListenerContainer.resume()
is not called.- Specified by:
pause
in interfacePulsarMessageListenerContainer
-
resume
public void resume()Description copied from interface:PulsarMessageListenerContainer
Resume this container, if paused.- Specified by:
resume
in interfacePulsarMessageListenerContainer
-
isPaused
protected boolean isPaused() -
setPaused
protected void setPaused(boolean paused) -
doPause
protected abstract void doPause() -
doResume
protected abstract void doResume()
-