Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Add Spring Cloud Stream Event Externalization support #1047

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

ivangsa
Copy link

@ivangsa ivangsa commented Feb 1, 2025

This pull request adds support for Spring Cloud Stream Externationalization, including serializers/deserializers for Message<?> (generics deserialization) and Avro Playloads.

New Module Addition:

  • Added spring-modulith-events-scs module to the pom.xml file.

Documentation:

  • README.md for the new spring-modulith-events-scs module, detailing its purpose, usage, dependencies, configuration, and event routing.
  • The contents of this README.md file can be moved to proper documentation if this PR progresses.

Implementation:

  • MessageEventSerializer classes for event serialization of generic Message<?> keeping payload type. [1]
  • AvroEventSerializer classes for event serialization of Avro Paylods, since Jackson ObjectMapper does not handle well Avro Specific/GenericRecords. [2]
    • It works both for Avro events or Message with Avro payloads
  • SpringCloudStreamEventExternalizer class to handle event externalization using Spring Cloud Stream.
  • EnableSpringCloudStreamEventExternalization annotation for enabling the event externalization configuration.

Testing

@ivangsa ivangsa changed the title Add Spring Cloud Event Externalization support Add Spring Cloud Stream Event Externalization support Feb 6, 2025
@ivangsa
Copy link
Author

ivangsa commented Feb 13, 2025

Hey 👋, just checking on this PR..
Are you going to review it?
Do you think an Spring Cloud Stream externalizer is something interesting to add to Spring Modulith..

Signed-off-by: Ivan Garcia Sainz-Aja <ivangsa@gmail.com>
Signed-off-by: Ivan Garcia Sainz-Aja <ivangsa@gmail.com>
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant