RFR: 8295962: Reference to State in Task.java is ambiguous when building with JDK 19 [v3]

Ambarish Rapte arapte at openjdk.org
Wed Nov 2 12:18:34 UTC 2022


On Fri, 28 Oct 2022 19:41:35 GMT, Kevin Rushforth <kcr at openjdk.org> wrote:

>> This PR replaces all occurrences of `State` with `Worker.State` in `javafx.concurrent.Task`.
>> 
>> The `javafx.concurrent.Task` class implements `javafx.concurrent.Worker` and extends `java.util.concurrent.FutureTask`, which in turn implements `java.util.concurrent.Future`.
>> 
>> `Worker` has a nested `State` enum, which is used in the implementing `Task` class without being qualified -- since `Task` is a `Worker`, we can just say `State` instead of `Worker.State`.
>> 
>> [JDK-8277090](https://bugs.openjdk.org/browse/JDK-8277090) added a nested `State` enum to the `java.util.concurrent.Future` interface in JDK 19, so an unqualified reference to `State` from the `Task` class is now ambiguous when using JDK 19 to build. The javadoc task fails with an error (and the only reason the javac task doesn't is that we use `--release 17`).
>> 
>> With this fix, a local build and test using JDK 19 passes.
>
> Kevin Rushforth has updated the pull request incrementally with one additional commit since the last revision:
> 
>   update copyright years

LGTM, tested on Mac.

-------------

Marked as reviewed by arapte (Reviewer).

PR: https://git.openjdk.org/jfx/pull/933


More information about the openjfx-dev mailing list