RFR: 8355790: Enhance code consistency: java.desktop/unix:sun.awt [v2]
Sergey Bylokhov
serb at openjdk.org
Sat May 10 09:46:45 UTC 2025
> The `java.desktop` module currently lacks proper use of the `@Override` annotation for methods and the `final` modifier for classes. While similar changes were previously made in the [JavaSound](https://github.com/openjdk/jdk/commit/e0c7d59246cf36644d494eced76e4b9d96ff1ded#diff-ae3e5f9c40fe25ef03e7a89844de174ef5c15e6179d769e2a4bcb7e73688c9b5), [java.desktop/windows](https://github.com/openjdk/jdk/pull/24170) (and some of the classes on demand), these changes are not as critical now due to the new jdk "encapsulation", but they are still useful for improving code consistency.
>
> To make the code review process easier I have made the following changes:
>
> 1. I chose `java.desktop/unix:sun.awt` as the starting package because it contains a relatively small number of classes
> 2. The public API was not affected so there is no need to worry about a CSR
>
> Note: I will submit additional patches in this area later because:
>
> 1. Only lines with `@Override` and `final` were modified to keep the diff clear - header dates were not updated (that could be covered by one patch similar to [this](https://bugs.openjdk.org/browse/JDK-8345797))
> 2. I skipped adding `@Override` for anonymous classes
>
> Any feedback or suggestions are welcome!
>
> Here is a [link](https://patch-diff.githubusercontent.com/raw/openjdk/jdk/pull/24941.diff) to a simple diff file, it might be more convenient for reviewing the changes.
>
> To download the diff file and filter only the modified lines you can use the following script:
>
>
> curl -s https://patch-diff.githubusercontent.com/raw/openjdk/jdk/pull/24941.diff -o d.txt && grep -E '^+|^-' d.txt
>
>
> The build was successful, and I ran all the open jtreg tests without issues. But it's possible that some closed tests may be affected by these changes. It would be good to verify this by mach5 to ensure everything works as expected.
Sergey Bylokhov has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains three additional commits since the last revision:
- Merge branch 'openjdk:master' into overunix
- override in java.desktop/unix:sun.awt
- final in java.desktop/unix:sun.awt
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/24941/files
- new: https://git.openjdk.org/jdk/pull/24941/files/7c46a0b6..e4d5c3df
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=24941&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=24941&range=00-01
Stats: 39454 lines in 1207 files changed: 26470 ins; 7356 del; 5628 mod
Patch: https://git.openjdk.org/jdk/pull/24941.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/24941/head:pull/24941
PR: https://git.openjdk.org/jdk/pull/24941
More information about the client-libs-dev
mailing list