On Wed, 26 Oct 2022 22:38:15 GMT, Kevin Rushforth <[email protected]> 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.

This pull request has now been integrated.

Changeset: 4a2afb4c
Author:    Kevin Rushforth <[email protected]>
URL:       
https://git.openjdk.org/jfx/commit/4a2afb4ce28b46ee463b1dc8d38d1c81962e3c88
Stats:     30 lines in 5 files changed: 2 ins; 1 del; 27 mod

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

Reviewed-by: angorya, arapte

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

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

Reply via email to