Chris Bono
6d7148f629
Add PulsarClientImplementationBindingImpl to AOT reflection hints.
...
This allows running on GraalVM 23.1.0-dev.
2023-08-09 15:15:28 -04:00
Chris Bono
d38cc6cb8d
Use builder to autoconfigure PulsarAdministration ( #401 )
2023-05-06 21:03:01 -05:00
Chris Bono
8bee5ef6e9
Use builder to autoconfigure PulsarProducerFactory ( #397 )
...
- Apply PulsarProperties to producer builder rather than raw
map of Pulsar properties
- Move producer props 'toMap' into PulsarBinderUtils
2023-05-03 22:19:44 -05:00
Chris Bono
dbd1b69e08
Use builder to autoconfigure PulsarClient ( #394 )
...
- Apply PulsarProperties to client builder rather than raw
map of Pulsar properties
- Replace PulsarClientFactoryBean with PulsarClientFactory
2023-04-28 22:13:10 -05:00
Chris Bono
f282a9a6d9
Dependency hygiene required by Spring Boot ( #376 )
2023-03-23 12:54:20 -05:00
Soby Chacko
e310f18f17
Refactor ReactivePulsarListenerAnnotationBeanPostProcessor
...
- Extend ReactivePulsarListenerAnnotationBeanPostProcessor
from AbstractPulsarAnnotationsBeanPostProcessor.
2023-02-22 17:50:56 -05:00
Soby Chacko
abe3786615
Message Listener/Reader consolidation
...
- Consolidate and refactor the hierarchy between Listener
and Reader adpaters/converters
- Remove unncessary batch message converters
2023-02-21 17:05:00 -05:00
Soby Chacko
ba51c23e7d
Consolidate invokeHandler invocation
2023-02-17 16:51:05 -05:00
Soby Chacko
0621c540d6
PulsarReader Infrastructure
...
- Introducing PulsarReader annotation
- Annotation bean post processor for PulsarReader
- PulsarReader container and registry
- PulsarReader endpoint and registry
- PulsarReaderConfigurer
- PulsarReader based listener adapter
- PulsarReader annotation driven Boot auto configuration
Resolves https://github.com/spring-projects-experimental/spring-pulsar/issues/353
2023-02-17 14:39:13 -05:00
Chris Bono
727efdfb40
Remove PulsarClientConfiguration ( #350 )
...
* replace w/ map of config props
2023-02-15 21:47:01 -06:00
Christophe Bornet
d13ae9a94d
Harmonize tests between PulsarTemplate and ReactivePulsarTemplate ( #332 )
2023-02-08 08:39:23 -06:00
Christophe Bornet
33712c6bef
Add support for tombstone/null values
...
Fixes #311
2023-02-07 17:10:45 -06:00
Christophe Bornet
9fb8879491
Bump the Pulsar reactive client to 0.2.0 ( #307 )
2023-02-07 09:19:41 -06:00
Chris Bono
34a30411b5
Producer and sender factories use topic resolver ( #322 )
...
* Producer and sender factories use topic resolver
* Remove resolveTopicName from ProducerUtils
* DefaultPulsarProducerFactory and CachingPulsarProducerFactory
use TopicResolver instead of ProducerUtils to resolve topic
name.
* Delete ReactiveMessageSenderUtils
* DefaultReactivePulsarSenderFactory use TopicResolver instead of
ReactiveMessageSenderUtils to resolve topic name
* Disabled shared consumer test again
2023-02-06 21:30:32 -06:00
Chris Bono
ba5573bfeb
Trim ReactivePulsarSenderFactory API ( #320 )
...
* The `createSender(Schema)` is not useful
in that most users will specify a topic and
not rely on the default topic.
2023-02-06 16:41:55 -06:00
Chris Bono
f108bc202b
Update copyright 2023 on all source files ( #318 )
...
* Add ability to update all copyrights
* Update all source copyrights to 2023
* Disabling problematic pause/resume test
2023-02-06 15:54:34 -06:00
Chris Bono
ce91178db8
Misc cleanups ( #317 )
...
* Replace `String.format` w/ `String.formatted`
* Simplify LogAccessor usage
* Replace `new LogAccessor(LogFactory.getLog(Class))`
calls w/ `new LogAccessor(Class)`
* Remove fully qualified refs in javadoc + code
2023-02-06 15:03:24 -06:00
Chris Bono
56dbe84cb4
Remove duplicate PulsarTestContainerSupport ( #316 )
...
Also:
* Re-order (alpha) test dependencies
2023-02-06 15:02:32 -06:00
Chris Bono
59a4d94964
Update Pulsar 2.10.3 ( #315 )
2023-02-06 14:04:59 -06:00
Christophe Bornet
883aeaaf3c
Make SendMessageBuilder interface more navigable ( #304 )
2023-02-02 09:49:02 -06:00
Christophe Bornet
75e235f43a
Allow topic/schema resolution in ReactivePulsarTemplate sendMany ( #303 )
...
- Use switchOnFirst to determine the Schema and topic from the first message in doSendMany
- Fixes ordering issue when `doSendMany` did not have schema (see #300 )
2023-02-01 21:20:44 -06:00
Chris Bono
5dbb9a18c2
Don't allow topic to be set via customizers
...
- Add producer/sender factory createSender API
w/ only a schema
- Add producer/sender factory createSender API
w/ single customizer
- ReactivePulsarSenderFactory createSender API
consistent with PulsarProducerFactory
createProducer API
- Cleanup/refactor producer factory tests
Resolves #295
2023-02-01 10:40:48 -05:00
Chris Bono
7294580bfa
Add topic resolver ( #293 )
...
* Add topic resolver
- Topic resolver with configurable
message type to topic name mappings
See #269
* Sample app uses topic and schema resolver
* Add topic resolver docs
2023-01-30 10:38:19 -05:00
Soby Chacko
82e055a4bc
Renaming ListenerEndpointRegistry
...
ListenerEndpointRegistry -> GenericListenerEndpointRegistry
2023-01-27 17:56:30 -05:00
Chris Bono
ed2a67b0c4
Remove setSchema API from templates
...
For both PulsarTemplate and ReactivePulsarTemplate:
* remove setSchema()
* add schema param in simple API
* add schema param in fluent API
Update all tests and samples accordingly
See #268
2023-01-25 12:54:12 -05:00
Chris Bono
e36ef5f19c
Add schema resolver customizer
...
See #269
2023-01-20 12:26:20 -05:00
Chris Bono
e52ef5dea3
Listener endpoints use schema resolver ( #280 )
...
* Listener endpoints use schema resolver
See #269
* Disabled PulsarFunctions IT
2023-01-20 10:57:25 -05:00
Chris Bono
d45af6979b
Add custom schema mappings
...
See #269
- Still need to add docs
2023-01-18 15:41:27 -05:00
Christophe Bornet
7fd522cd64
Bump pulsar-client-reactive to 0.1.0 ( #251 )
2022-12-12 12:16:29 -06:00
Soby Chacko
7ee744bcfc
AOT hints changes for reactive apps
2022-12-02 16:46:50 -05:00
Soby Chacko
ac87330416
Remove custom MessageHandlerMethodFactory ( #247 )
...
- Remove custom MessageHandlerMethodFactory from PulsarListenerEndpointRegistrar
- We will reintroduce it, if there is a valid use case that requires it
2022-11-29 11:55:03 -06:00
Soby Chacko
edd32284d5
Remove custom argument resolvers ( #246 )
...
- Remove custom argument resolvers from PulsarListenerEndpointRegistrar,
as this is an un-used feature at the moment.
- The default HandlerMethodArgumentResolver is capable of adapting the all the
method arguments in all the PulsarListener use cases we encountered so far.
We will add it back if custom argument resolution is necessary.
2022-11-28 20:26:22 -06:00
Christophe Bornet
1055637ff2
Update with new MessageResult::acknowledge(Message) function ( #233 )
2022-11-21 20:05:56 -06:00
Chris Bono
0e4a4fad38
Extract Flux from base messaging adapter
...
PulsarMessagingMessageListenerAdapter was still referencing Flux.
This removes all reactive usage from imperative spring-pulsar lib.
2022-11-18 16:37:45 -05:00
Chris Bono
a8d65ec168
Split reactive into its own module
...
Remove redundant dep
2022-11-17 20:47:44 -05:00