Use `HttpExecutionStrategies.difference` in jersey router
- Dominant language
- Java
- Stars
- 1k
- Forks
- 229
- Avg merge
- 23h 23m
- Merged PRs (30d)
- 16
Description
We have a modified implementation of `HttpExecutionStrategies.difference` function in `http-router-jersey`: https://github.com/apple/servicetalk/blob/464554ad984bc4897e7ba72e54a2ac0f12a9ecd9/servicetalk-http-router-jersey/src/main/java/io/servicetalk/http/router/jersey/EndpointEnhancingRequestFilter.java#L487-L508
We introduced it #682 to improve accuracy according to jersey router specifics. However, we should reconsider this approach and consolidate the `difference` logic in one place, because there should be no difference between router implementations. See discussion on gRPC router implementation: https://github.com/apple/servicetalk/pull/912#discussion_r364392328
Contributor guide
Research direction
Start in servicetalk-http-router-jersey/src/main/java/io/servicetalk/http/router/jersey/EndpointEnhancingRequestFilter.java around the modified difference implementation, then read HttpExecutionStrategies.difference and the gRPC router discussion in pull request 912. Done means the Jersey router uses the consolidated difference logic without router-specific divergence.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100