182 Commits

Author SHA1 Message Date
Chris Bono
d3940875e2 Update compatability matrix in appendix doc 2025-06-15 14:32:23 -05:00
Chris Bono
59c0f6b63c Fix antora failure due to fast-xml-parser/lib/fxp.cjs
This updates several depenedencies used by Antora and locks the
version of `fast-xml-parser` to `4.5.2` to get around issue with
Antora using `latest` version of that lib.
2025-02-19 09:31:41 -06:00
Chris Bono
147844b07d Allow pulsar metadata headers to be mapped outbound (#1038)
This allows pulsar metadata headers, which are excluded on the
outbound messages by default, to be included in the outbound
message headers.

Resolves #1037
2025-02-16 18:24:50 -06:00
Chris Bono
03c0da3bce Fix references to invalid 'ackTimeout' property (#1015)
The docs has code examples using a consumer property named
`ackTimeout`. However, the actual property name is
`ackTimeoutMillis`. This updates those references.

Resolves #1010
2025-01-21 13:52:55 -06:00
Chris Bono
b636e44817 Fix version for reactive client in compatibility matrix
This commit updates the supported version of the pulsar-client-reactive
library in the compatibiity matrix doc from `0.6.0` to the actual
supported version `0.5.x`.
2024-12-16 18:32:58 -06:00
Chris Bono
cd4384fe9d Add Pulsar 4.0.x to compatibility matrix doc
This commit adds 4.0.x Pulsar client to the compatibility
matrix doc.

Resolves #933
2024-12-16 18:32:58 -06:00
Chris Bono
b2fc438980 Remove version 0.2.x from docs (#928)
This commit removes version 0.2.x from the compatibility matrix
in an effort to curb the current use of version 0.2.x.
2024-11-12 14:27:31 -06:00
Chris Bono
123b17df0d Specify locale in toLowerCase|toUpperCase (#893)
This commit makes sure that all usages of String toLowerCase and
toUpperCase specify a Locale (default of Locale.ROOT).

Also, a checkstyle rule is added to prevent usage of the no-arg variant
of String toLowerCase and toUpperCase.
2024-10-17 16:26:26 -05:00
Chris Bono
e366b8365e Use unchecked exception on reader factory (#845)
This commit replaces the checked `PulsarClientException` with the
unchecked `PulsarException` on the `PulsarReaderFactory#createReader`
API.
2024-09-12 14:14:28 -05:00
Chris Bono
4857ad27f0 Remove deprecated listener endpoint adapters (#844)
* Remove deprecated listener endpoint adapters

This commit removes the previously deprecated listener endpoint
adapters.
2024-09-12 14:14:14 -05:00
Chris Bono
27c9747785 Deprecate container factory customizer (#842)
The purpose of `ConcurrentPulsarListenerContainerFactoryCustomizer` was
to customize the Spring Boot auto-configured message container
factories. However, Spring Boot has introduced a generic message
container factory customizer `PulsarContainerFactoryCustomizer` that
removes the need for this customizer.

This commit deprecates the Spring for Apache Pulsar customizer in favor
of the Spring Boot provided generic container factory customizer.
2024-09-11 17:33:40 -05:00
Chris Bono
8ed6689e29 Add docs for container startup failure policy (#841) 2024-09-11 15:14:20 -05:00
Chris Bono
8dcff29f7c 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.
2024-09-09 16:54:56 -05:00
Chris Bono
a518e11089 Add startup failure policy to listeners (#824)
Previously, when a listener container failed to start, it
would only log the exception. This commit introduces
`StartupFailurePolicy` that allows listener containers to CONTINUE,
STOP, RETRY when an error is encountered on startup.

See #445
See #816
2024-09-05 20:39:58 -05:00
Chris Bono
c254d6b6d3 Update docs for default tenant/namespace 2024-09-04 10:40:13 -05:00
Chris Bono
136d465c12 Move default subscription name to factory (#821)
This commit moves the default subscription name from the
`@PulsarListener` and `@ReactivePulsarListener` annotation to the
corresponding container factory (props) which allows the
`spring.pulsar.consumer.subscription.name` config prop to be respected.

See https://github.com/spring-projects/spring-boot/issues/42053
2024-08-31 10:41:32 -05:00
Chris Bono
5946c95a17 Move default subscription type to factory (#818)
This commit moves the default subscription type from the
`@PulsarListener` and `@ReactivePulsarListener` annotation to the
associated container factory (props) which allows the Spring Boot
`spring.pulsar.consumer.subscription-type` config prop to be respected.

See https://github.com/spring-projects/spring-boot/issues/42053
2024-08-29 23:39:50 -05:00
Vedran Pavic
01a95a70a2 chris.bono@gmail.com
This commit fixes invalid documentation references to
`spring.pulsar.consumer.subscription.type` configuration property.
2024-08-29 13:55:36 -05:00
Chris Bono
9064623fb1 Use auto-configured PulsarTopicBuilder (#817)
Now that Spring Boot `3.4.0-M2` auto-configures the `PulsarTopicBuilder`, this commit
updates ITs, samples, and docs accordingly.
2024-08-24 16:35:03 -05:00
Chris Bono
eefea9af69 Update default tenant/namespace docs (#805)
* The Spring Boot config props are now under the
`spring.pulsar.defaults.topic` prefix.

* There is also a new `enabled` property.

See #756
2024-08-19 15:26:17 -05:00
Chris Bono
f00ede41f0 Allow PulsarTopicBuilder#init null values (#777)
* Allow PulsarTopicBuilder#init null values

See #756

* Clarify the deprecation of PulsarTopic.builder
2024-08-13 10:59:52 -05:00
Chris Bono
6d23378fbb Add support for default tenant and namespace (#766)
See #756
2024-08-12 14:03:32 -05:00
Chris Bono
96c12de142 Use dynamic version for Pulsar docs link (#776)
Prior to this commit, the version number used in the Pulsar docs link
was hardcoded to `3.2.x`. Now the version number is derived from the
Pulsar client lib version specified in libs.version.toml.
2024-08-11 08:14:52 -05:00
Chris Bono
4981b28c2d Update to Pulsar 3.3.1 (#772)
* Update to Pulsar 3.3.1

* Handles deprecation to PulsarClient.getPartitionsForTopic(String)

* Adds support to PulsarClientProxy for newly added
PulsarClient.getPartitionsForTopic(String, boolean)

* Add deprecation note to "What's New" doc

Resolves #767
2024-08-10 21:24:19 -05:00
Chris Bono
755f25bda1 Update to Spring Boot 3.4.0-M1 (#764)
NOTE: Also had to update to SCSt 4.2.0-SNAPSHOT to workaround
https://github.com/spring-cloud/spring-cloud-function/issues/1149

Resolves #758
2024-08-09 22:59:59 -05:00
Chris Bono
fe07a7a3fd Allow custom object mapper for headers (#762)
This commit adds support for a user-provided Jackson ObjectMapper to be
used when deserializing JSON header values.

See #723

Co-authored-by: Jihoon Kim <pigberger70@gmail.com>
2024-07-30 13:35:54 -05:00
Chris Bono
5637df21ce Update algolia dependencies in package.json 2024-07-29 23:42:31 -05:00
Chris Bono
70e9e60f39 Allow custom object mapper for messages (#755)
This commit adds support for a user-provided Jackson ObjectMapper to be
used when de/serializing JSON messages.

Additionally, adds Gradle test fixtures to the spring-pulsar module and
deprecates the UserRecord and UserPojo in spring-pulsar-test in favor
of their equivalent in the test fixture.

See #723
2024-07-29 21:57:27 -05:00
Chris Bono
bdc36a6798 Use Algolia extension (centralized creds)
Also does the following:

* Update versions for all docs related dependencies
* Use package.json
2024-06-27 16:27:30 -05:00
Chris Bono
0454c8df7e Clarify use of MessageResult vs. MessageUtils (#681)
Updates the reactive-message-consumption.adoc to clarify the difference
between the factory methods on `MessageResult` and `MessageUtils`.

Resolves #666
2024-05-20 11:12:43 -05:00
Chris Bono
c87dbf7af7 Update antora-ui-spring to v0.4.14 (#685) 2024-05-20 09:58:23 -05:00
Chris Bono
7da4602833 Add doc for auto cluster-level failover (#683)
See #677
2024-05-19 18:58:13 -05:00
Chris Bono
d672e2d405 Fix payload type in Reactive tombstone doc (#678)
Also clarify that `org.apache.pulsar.client.api.Messages<T>` are not
supported in `@ReactivePulsarListener`.

Fixes #667
2024-05-17 16:04:34 -05:00
Chris Bono
3476dd8d7a Add docs for transaction support (#668)
Resolves #660
2024-05-03 11:20:49 -05:00
Chris Bono
e4b93c532b [Docs] Correct artifact id for Pulsar starter (#665)
Resolves #662
2024-04-25 14:24:34 -05:00
Chris Bono
a85f2c730e Update Antora UI to 0.4.12 2024-04-24 14:59:56 -05:00
ka_sh
5ba2a00cfd Pull topic-resolution.adoc up a level in docs
Resolves #644
2024-04-23 18:04:55 -05:00
ka_sh
097565e959 Splits Reactive Support doc into multiple documents (#631)
Resolves #463
2024-04-15 10:19:07 -05:00
ka_sh
ac0588df9d Splits Pulsar reference into multiple documents (#627)
This commit splits the large Pulsar reference doc (non-reactive)
into smaller section/pages to improve layout and navigation for
users.

See #463
2024-04-01 10:22:32 -05:00
Chris Bono
e8dad9e06a Publish the spring-pulsar-test module (#600)
This commit makes the spring-pulsar-test module available externally.

Additionally:
* Add missing package-info.java in several packages
* Update doc on how to use PulsarTestContainerSupport
2024-03-10 16:18:14 -05:00
Chris Bono
32739c3ec2 Add docs for using Lambda producer customizers (#598)
This commit adds docs that guide users when implementing 
ProducerBuilderCustomizers with Lambdas. 

Resolves #593
2024-03-06 15:57:12 -06:00
Chris Bono
1f2f6ed46d Polish "Add consumer test utility" (#592)
- update javadocs a bit
- reorder some constructors based on specificity
- add null check to "withSchema"
- rename the test to end w/ "Tests" (plural) for consistency
- simplified doc examples a bit w/ String message type
- drop the exact match API
- rename the conditions factory methods
2024-02-26 13:17:37 -06:00
Jonas Geiregat
5bf9ba0944 Add consumer test utility
This commit adds the PulsarConsumerTestUtil utility to help with
consuming messages during tests.
2024-02-25 16:21:25 -06:00
Chris Bono
397fc9d79c [Docs] Rewmove project-state.adoc (not needed) 2024-02-20 15:31:12 -06:00
Chris Bono
2b2caf545c [Docs] Workaround for env var auth params
Also fix collapsible section on authentication.adoc
2024-02-20 15:31:12 -06:00
Chris Bono
2aecb93788 Add "What's New?" document to the ref guide (#579) 2024-02-18 09:17:31 -06:00
Chris Bono
0e95f3c350 Add support for AUTO_PRODUCE schema (#572)
This commit adds support for producing raw JSON or Avro payloads with
AUTO_SCHEMA.
2024-02-14 00:40:38 -06:00
JonasG
18378a8927 Add support for SpEL topics on @PulsarMessage
This commit adds support for expressions (property placeholders and
SpEL) on the topic attribute of @PulsarMessage.

Resolves #568
2024-02-13 21:08:54 -06:00
Chris Bono
d8524d1db8 Rename @PulsarTypeMapping -> @PulsarMessage 2024-02-08 15:28:08 -06:00
Chris Bono
6a9fb6c523 Polish "Add @PulsarTypeMapping for default topi.."
* Introduce a PulsarTypeMappingRegistry to cache annotations
* Expand on the topic/schema resolver tests
* Add support for KEY_VALUE on annotation
2024-02-08 15:28:08 -06:00