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

Reply via email to