RFR: 8293331: Refactor FileChannelImpl into operating system-specific components

Brian Burkhalter bpb at openjdk.org
Sat Sep 3 01:06:44 UTC 2022


On Sat, 3 Sep 2022 00:59:07 GMT, Brian Burkhalter <bpb at openjdk.org> wrote:

> Break up `sun.nio.ch.FileChannelImpl` in a manner similar but not identical to the refactoring of `sun.nio.fs.UnixFileSystem` performed in #10093.

The initial implementation moves most of `FileChannelImpl` to `sun.nio.ch.AbstractFileChannelImpl` and requires separate but simple `FileChannelImpl.java` and `FileChannelImpl.c` files for each operating system. The AIX, Linux, and macOS versions extend an intermediate class `sun.nio.ch.UnixFileChannelImpl` which itself extends `AbstractFileChannelImpl`.

All tests in the `jdk_nio` test group pass on Linux, macOS, and Windows.

Although an AIX implementation is provided, it will have to be verified at a later date by someone with access to the requisite platform.

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

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


More information about the nio-dev mailing list