Soby Chacko
78dec77bb8
Initial infra for Pulsar binder/binding properties docs
2023-02-23 20:38:19 -05:00
Soby Chacko
a8ca3932f2
Pulsar topic provisioner binder docs
2023-02-23 18:38:50 -05:00
Soby Chacko
0e4fe50651
Pulsar binder/binding properties docs
2023-02-23 17:48:12 -05:00
Soby Chacko
d04e3054b9
Binder docs polishing
2023-02-23 16:31:28 -05:00
Soby Chacko
0b3521a536
Binder message conversion docs
2023-02-23 15:31:01 -05:00
Soby Chacko
6a1dfdeda8
Initial Pulsar Binder Docs
2023-02-23 12:42:43 -05:00
Soby Chacko
44d13742ec
ReaderBuilderCustomizer through PulsarReader
2023-02-22 19:51:30 -05:00
Soby Chacko
e310f18f17
Refactor ReactivePulsarListenerAnnotationBeanPostProcessor
...
- Extend ReactivePulsarListenerAnnotationBeanPostProcessor
from AbstractPulsarAnnotationsBeanPostProcessor.
2023-02-22 17:50:56 -05:00
Soby Chacko
6cf83a4296
Adding Consumer Customizations through PulsarListener
2023-02-22 16:29:14 -05:00
Chris Bono
dad0961eac
Fix flaky PulsarFunctionAdministrationIntegrationTests
...
Pause after context close to give stop policies time to execute
2023-02-22 12:45:27 -06:00
Soby Chacko
fa7a2fa818
Consolidate message container hierarchy
...
Initial refactoring for extracting a common abstract class for various containers.
2023-02-22 12:36:49 -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
9189654ab0
Reader classes naming cleanup
2023-02-21 15:22:17 -05:00
Soby Chacko
05ff873271
Remove Listener name from the Reader core classes
2023-02-21 15:09:04 -05:00
Chris Bono
39ba253161
[CI] Add integration test support ( #357 )
...
The `PulsarFunctionAdministrationIntegrationTests` was causing an OOM
because it copies a large archive into memory in order to setup its
testcontainers.
The unit tests running in parallel consume most of the available resources
so we split the ITs into their own step in the workflow and all is happy.
This is also good to have support for integration tests in the project.
2023-02-20 13:17:51 -06:00
Soby Chacko
23f99593c3
PulsarReader integration tests
2023-02-17 19:50:34 -05:00
Soby Chacko
b82128c82c
Remove unused annotation enhancers
...
- Remove unncessary annotation enhancers in PulsarListener/PulsarReader
2023-02-17 17:38:24 -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
5b0a69e850
[CI] Disable PulsarFunctionAdministration IT
2023-02-17 13:16:58 -06:00
Soby Chacko
b53df99c1b
Implement stop() in reader container
2023-02-17 13:03:28 -05:00
Chris Bono
a32621315c
[CI] Remove no-daemon from workflow
...
* Also disable PulsarFunction IT
2023-02-17 11:09:03 -06:00
Chris Bono
cbc7981b67
Improve topic validation ( #351 )
...
* Improve topic validation
* Check if topic exists already for both
partitioned and unpartitioned cases
prior to creating.
Fixes #266
* Fix test failure
2023-02-17 10:07:31 -05:00
Chris Bono
aa6f6f76ae
[CI] Update ci.yml
...
Add --no-daemon to gradle commands
2023-02-16 23:07:38 -06:00
Chris Bono
3476bbf4e7
Attempt to fix PulsarFunctionAdministration IT ( #352 )
...
* Enable the IT run on CI-PR workflow
* Add Junit5 TestWatcher to log the Pulsar
container logs on test failure
2023-02-16 21:01:11 -06:00
Chris Bono
50802c7393
[CI] Enable the PulsarFunctionAdmin IT
2023-02-16 21:00:03 -06:00
Chris Bono
727efdfb40
Remove PulsarClientConfiguration ( #350 )
...
* replace w/ map of config props
2023-02-15 21:47:01 -06:00
Chris Bono
1e6929b21d
Move default service urls to PulsarProperties
2023-02-15 17:17:25 -05:00
Soby Chacko
e601cdcb5c
sync send in latestMessageId test
...
- In order to avoid a potential race condition
in this test, convert the asyncSend to sync.
2023-02-15 13:18:45 -05:00
Soby Chacko
9b5f64e5d6
Reader test improvements in latestMessageId test
...
- Enusre that the container is started
- Increase the latch wait timeout
2023-02-15 13:01:56 -05:00
Soby Chacko
7865973101
Container infrastructure for Pulsar Reader ( #342 )
...
* Container infrastructure for Pulsar Reader
Adding the basic foundations for the Pulsar Reader container.
This is similar to the message listener container mechanism
used in the regular consumer for managing the various lifecycles.
Resovles https://github.com/spring-projects-experimental/spring-pulsar/issues/341
* Addressing PR review
2023-02-15 12:22:21 -05:00
Chris Bono
64159ff350
Update Pulsar to 2.11.0 ( #337 )
...
* User template vars for links to pulsar docs site
* Update all code references to `2.11.0`
2023-02-14 14:52:09 -06:00
Chris Bono
e65f282141
Improve docs for Pulsar service urls
2023-02-14 13:53:01 -05:00
Soby Chacko
eaec21477d
Readjust acktimeout and DLQ tests
2023-02-14 11:47:48 -05:00
Soby Chacko
9f4eeac34c
Polish to the previous commit.
...
Adding Nullable to the partitin count private method.
2023-02-13 14:44:46 -05:00
Soby Chacko
5b2d466c7d
Pulsar binder partition count defaults ( #339 )
...
* Pulsar binder partition count defaults
In Pulsar, partitioned topics are optional. If we set the default partition
count to be 1, then it unnecessarily creates a partitoned topic. Therefore,
we need to set the default partition count as 0 in the binder and extended binding
properties.
* PR review
2023-02-13 14:40:01 -05:00
Chris Bono
284b4b0c1e
Add consumer/producer config props to binder and binding level ( #338 )
...
* Move loadConf into ProducerBuilderConfigurationUtil
* Add full consumer/producer props to binder/binding props
* Re-use the consumer and producer props from PulsarProperties
* Add unit and integration test for newly added props
2023-02-13 11:06:21 -05:00
Chris Bono
48ac3836bc
Add PulsarReader section to docs ( #336 )
...
- Use template var for pulsar docs url
2023-02-09 14:41:42 -06:00
Soby Chacko
bc38cecce5
Basic binder compatibility tests
...
* Ensuring that AbstractBinderTests and Partition capable tests work
for Pulsar binder. Some tests needed to be overridden in order for them
to work in a Pulsar context.
Resolves https://github.com/spring-projects-experimental/spring-pulsar/issues/334
2023-02-09 10:35:36 -05:00
Christophe Bornet
0468ca22eb
Add reader application properties doc ( #333 )
2023-02-08 08:40:23 -06:00
Christophe Bornet
d13ae9a94d
Harmonize tests between PulsarTemplate and ReactivePulsarTemplate ( #332 )
2023-02-08 08:39:23 -06:00
Chris Bono
b432e3da67
Fix failing PulsarTemplateTest
...
* @Nested for send null tests
* @Nested for send non-primitive w/ schema tests
2023-02-07 19:53:43 -06:00
Christophe Bornet
33712c6bef
Add support for tombstone/null values
...
Fixes #311
2023-02-07 17:10:45 -06:00
Christophe Bornet
4da2f5025c
Use Schema.JSON instead of Schema.BYTES as default schema ( #325 )
...
* Use Schema.JSON instead of Schema.BYTES as default schema
* Default to BYTES schema if JSON cannot be constructed for the message type
* Add doc
2023-02-07 13:04:21 -06:00
Soby Chacko
c6680973a5
Pulsar Reader auto config (imperative)
...
Resolves https://github.com/spring-projects-experimental/spring-pulsar/issues/328
2023-02-07 12:25:19 -05: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
92dd113251
Add single customizer API in PulsarConsumerFactory ( #321 )
2023-02-06 20:22:33 -06:00
Soby Chacko
062e79e47f
Add boot property support to Pulsar Reader (imperative) ( #327 )
2023-02-06 20:22:00 -06:00
Soby Chacko
e67f22b79c
Trying to fix failing test in shared subscription ( #326 )
2023-02-06 18:07:34 -06:00