Integrated: 8312089: Simplify and modernize equals, hashCode, and compareTo in java.nio and implementation code

Pavel Rappo prappo at openjdk.org
Mon Jul 17 22:31:17 UTC 2023


On Fri, 14 Jul 2023 12:06:29 GMT, Pavel Rappo <prappo at openjdk.org> wrote:

> 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.

This pull request has now been integrated.

Changeset: 5cc71f81
Author:    Pavel Rappo <prappo at openjdk.org>
URL:       https://git.openjdk.org/jdk/commit/5cc71f817ff97a17a9f1dfc72a6f10ebe701baaa
Stats:     136 lines in 14 files changed: 13 ins; 74 del; 49 mod

8312089: Simplify and modernize equals, hashCode, and compareTo in java.nio and implementation code

Reviewed-by: alanb, vtewari

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

PR: https://git.openjdk.org/jdk/pull/14886


More information about the nio-dev mailing list