spring-cloud / spring-cloud/spring-cloud-stream

Consider adding generic header mapping strategy

Open
#1,169 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature
Dominant language
Java
Stars
1.1k
Forks
646
Avg merge
2d 3h
Merged PRs (30d)
8

Description

Currently when one wants to map custom headers they have to rely on binder specific property which makes application unnecessarily coupled to a binder implementation. For example with Kafka binder one would need to set spring.cloud.stream.kafka.binder.headers property instead of something like spring.cloud.stream.headers which would be binder independent.

That of course may present issues with some of the specifics of the binder and versions of messaging middleware it uses. For example with Kafka pre-0.11 where headers are actually embedded in the message it may be difficult to user SPEL patters (i.e., *). In those cases we may consider binder hook to warn user that this particular binder may not support such feature.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No file, test, or entry point is named. Start by examining the Kafka binder's existing headers property and comparing how header mapping is handled across binders; done would require an agreed generic strategy that accounts for older Kafka versions and binder-specific limitations.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, kafka, spring
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.