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

Andy Goryachev angorya at openjdk.org
Wed Oct 26 22:51:39 UTC 2022


On Wed, 26 Oct 2022 22:38:15 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.

all instances in Task class

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

Marked as reviewed by angorya (Author).

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


More information about the openjfx-dev mailing list