On Sun, 29 Mar 2026 07:39:02 GMT, Shun Ohta <[email protected]> wrote:
> # Problem: > - Redundant ternary operator patterns such as `<cond> ? true : false` and > `<cond> ? false : true` exist in the codebase > - Since the condition already evaluates to a `boolean`, the ternary operator > is unnecessary > > # Analysis: > - Since the original ticket was filed (JDK 10), some files have been removed > and some patterns have already been fixed > - I re-evaluated the list of redundant patterns against the current codebase > > ## Redundant patterns by module > > - `src/` — 74 occurrences: java.xml (31), java.desktop (20), java.base (8), > others (15) > - `test/` — 138 occurrences: test/hotspot (76), test/jdk (52), others (10) > > # Solution: > - Given the wide impact scope across multiple modules, the fixes are > partitioned by module to facilitate easier review > - This PR addresses redundant patterns within `java.base`, the core module of > the JDK > > ## Changes in java.base (8 files) > > | No. | File | Line | > |-----|------|:----:| > | 1 | `share/classes/sun/net/www/protocol/http/NTLMAuthenticationProxy.java` > | 45 | > | 2 | `share/classes/sun/security/provider/X509Factory.java` | 564 | > | 3 | `share/classes/sun/text/DictionaryBasedBreakIterator.java` | 131 | > | 4 | `share/classes/jdk/internal/event/SocketReadEvent.java` | 141 | > | 5 | `share/classes/java/text/CollationElementIterator.java` | 638 | > | 6 | `unix/classes/sun/nio/fs/UnixPath.java` | 705 | > | 7 | `share/classes/sun/security/validator/Validator.java` | 268 | > | 8 | `share/classes/jdk/internal/icu/lang/UCharacter.java` | 474 | > > # Testing: > This PR performs semantically equivalent cleanups with no behavioral changes. > I have verified that all relevant existing `jtreg` tests pass. > > ## Test mapping > > | No. | Changed file | Test file | > |-----|------------|--------------| > | 1 | `NTLMAuthenticationProxy.java` | > `test/jdk/sun/net/www/protocol/http/NoNTLM.java` | > | 2 | `X509Factory.java` | > `test/jdk/sun/security/provider/X509Factory/BadPem.java` | > | 3 | `DictionaryBasedBreakIterator.java` | > `test/jdk/java/text/BreakIterator/BreakIteratorTest.java` etc. | > | 4 | `SocketReadEvent.java` | > `test/jdk/jdk/jfr/event/io/TestSocketEvents.java` etc. | > | 5 | `CollationElementIterator.java` | > `test/jdk/java/text/Collator/IteratorTest.java` etc. | > | 6 | `UnixPath.java` | `test/jdk/java/nio/file/Path/PathOps.java` etc. | > | 7 | `Validator.java` | > `test/jdk/sun/security/validator/EndEntityExtensionCheck.java` etc. | > | 8 | `UCharacter.java` | (Comment-only change; no test needed) | > > #### Notes on verification > While verifying the changes against the exis... @shunohta, the OpenJDK Generative AI policy https://openjdk.org/legal/ai doesn't allow for content generated from LLM to be accepted as a contribution. I see that in your PR description you confirm (through the checkbox) that the content in this PR wasn't generated using LLM, yet the PR description and the changes appear to contradict the claim. These changes cannot be accepted in the current form. Please refer to the https://openjdk.org/legal/ai document for what's allowed and what's not allowed as a contribution. ------------- PR Comment: https://git.openjdk.org/jdk/pull/30486#issuecomment-4229300593
