apple / apple/servicetalk

Use `HttpExecutionStrategies.difference` in jersey router

Open
#924 0 comments 0 reactions 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.