RFR: 8328919: Add BodyHandlers / BodySubscribers methods to handle excessive server input [v5]
Jaikiran Pai
jpai at openjdk.org
Wed Jan 15 15:05:50 UTC 2025
On Wed, 15 Jan 2025 10:50:55 GMT, Volkan Yazıcı <duke at openjdk.org> wrote:
>> Adds `limiting()` factory methods to `HttpResponse.Body{Handlers,Subscribers}` to handle excessive server input in `HttpClient`. I would appreciate your input whether `discardExcess` should be kept or dropped. I plan to file a CSR once there is an agreement on the PR.
>
> Volkan Yazıcı has updated the pull request incrementally with one additional commit since the last revision:
>
> Remove concurrency measures (methods are accessed serially due to the Reactive Streams spec)
src/java.net.http/share/classes/jdk/internal/net/http/LimitingSubscriber.java line 58:
> 56: private interface State {
> 57:
> 58: enum Terminated implements State { INSTANCE }
This was a bit confusing to read. I find the following to be a bit more easier to read:
private interface State {
State TERMINATED = new State() {};
record Subscribed(Object subscription) implements State {}
}
The call sites would then just use `State.TERMINATED`.
However, if you prefer it in its current form, it's fine with me.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/23096#discussion_r1916808060
More information about the net-dev
mailing list