RFR: 8312089: Simplify and modernize equals, hashCode, and compareTo in java.nio and implementation code
Pavel Rappo
prappo at openjdk.org
Fri Jul 14 12:21:32 UTC 2023
Please review this PR to use modern APIs and language features to simplify equals, hashCode, and compareTo for in java.nio and implementation code.
Please note, test results are pending.
Additional notes:
* This PR saves a volatile read in java.nio.file.attribute.AclEntry.hashCode. Not that it's too important, but worth noting because of rearrangements.
* java.nio.charset.Charset#compareTo seems **inconsistent** with equals. If so, I cannot see where that inconsistency is specified.
* Is this a **bug** in sun.nio.ch.FileKey#hashCode? Tell me if not, I'll revert it.
* This PR simplifies the tail of java.nio.file.attribute.FileTime.compareTo. Unless I'm missing something, that comment in source above the affected lines **seems** not to prohibit such a simplification.
* sun.nio.fs.UnixFileStore#hashCode does not include entry.name(). While it's not wrong, I wonder if it was on purpose.
* Despite its title, this PR also and opportunistically refactors sun.nio.fs.UnixPath.endsWith.
-------------
Commit messages:
- Fix a doc comment
- Initial commit
Changes: https://git.openjdk.org/jdk/pull/14886/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=14886&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8312089
Stats: 129 lines in 14 files changed: 12 ins; 69 del; 48 mod
Patch: https://git.openjdk.org/jdk/pull/14886.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/14886/head:pull/14886
PR: https://git.openjdk.org/jdk/pull/14886
More information about the core-libs-dev
mailing list