Add common container factory interface (#829)

This introduces a common interface for all message listener containers.
Prior to this commit, the reader and listener containers had no common
abstraction. This is needed to introduce a generic container factory
customizer in Spring Boot.
This commit is contained in:
Chris Bono
2024-09-09 16:54:56 -05:00
committed by GitHub
parent 001212583f
commit 8dcff29f7c
18 changed files with 222 additions and 66 deletions

View File

@@ -24,6 +24,17 @@ When using Spring Boot the `PulsarTopicBuilder` is now a registered bean that is
Therefore, if you are using Spring Boot, you can simply inject the builder where needed.
Otherwise, use one of the `PulsarTopicBuilder` constructors directly.
==== Listener/ReaderContainerFactory
The `PulsarContainerFactory` common interface was introduced to bridge the gap between listener and reader container factories.
As part of this, the following APIs were deprecated, copied, and renamed:
- `ListenerContainerFactory#createListenerContainer` replaced with `ListenerContainerFactory#createRegisteredContainer`
- `ReaderContainerFactory#createReaderContainer(E endpoint)` replaced with `ReaderContainerFactory#createRegisteredContainer`
- `ReaderContainerFactory#createReaderContainer(String... topics)` replaced with `ReaderContainerFactory#createContainer`
=== Breaking Changes
==== PulsarTopic#<init>