On Thu, 23 Jun 2022 10:55:00 GMT, Alan Bateman <al...@openjdk.org> wrote:
>> Hi, >> >> Please review the following patch which will: >> >> - Enhance the java.nio.file.spi.FileSystemProvider abstract class to include >> the methods >> >> - public boolean exists(Path path, LinkOption... options) >> - public <A extends BasicFileAttributes> A readAttributesIfExists(Path >> path, Class<A> type, LinkOption... options) >> >> >> This change allows for providers to provide optimizations when the file's >> attributes are not needed. >> >> Mach5 tiers 1 - 3 run clean with this change >> >> The CSR may be viewed at >> [JDK-8283336](https://bugs.openjdk.org/browse/JDK-8283336) >> >> >> Best, >> Lance > > src/java.base/unix/classes/sun/nio/fs/UnixFileSystemProvider.java line 306: > >> 304: case WRITE -> w = true; >> 305: case EXECUTE -> x = true; >> 306: default -> throw new AssertionError("Should not get >> here"); > > The switch should be exhaustive so I assume the default case is not required > here. Addressed in next push > src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipFileSystemProvider.java line 302: > >> 300: throws IOException >> 301: { >> 302: return exists(path) ? readAttributes(path, type, options) : >> null; > > If you add the following to ZipPath then it would allow you to implement it > in one step rather than two: > > > ZipFileAttributes readAttributesIfExits() throws IOException { > return zfs.getFileAttributes(getResolvedPath()); > } Added the proposed change above, Mach5 tiers 1-3 continue to be clean ------------- PR: https://git.openjdk.org/jdk/pull/9249