src/jdk.zipfs/share/classes/jdk/nio/zipfs/ZipFileStore.java
changeset 57665 bf325b739c8a
parent 54920 6a6935abebe8
equal deleted inserted replaced
57664:1d2ea8db7083 57665:bf325b739c8a
    30 import java.nio.file.FileSystems;
    30 import java.nio.file.FileSystems;
    31 import java.nio.file.Files;
    31 import java.nio.file.Files;
    32 import java.nio.file.Path;
    32 import java.nio.file.Path;
    33 import java.nio.file.attribute.BasicFileAttributeView;
    33 import java.nio.file.attribute.BasicFileAttributeView;
    34 import java.nio.file.attribute.FileAttributeView;
    34 import java.nio.file.attribute.FileAttributeView;
       
    35 import java.nio.file.attribute.FileOwnerAttributeView;
    35 import java.nio.file.attribute.FileStoreAttributeView;
    36 import java.nio.file.attribute.FileStoreAttributeView;
       
    37 import java.nio.file.attribute.PosixFileAttributeView;
    36 
    38 
    37 /**
    39 /**
    38  * @author Xueming Shen, Rajendra Gutupalli, Jaya Hangal
    40  * @author Xueming Shen, Rajendra Gutupalli, Jaya Hangal
    39  */
    41  */
    40 class ZipFileStore extends FileStore {
    42 class ZipFileStore extends FileStore {
    61     }
    63     }
    62 
    64 
    63     @Override
    65     @Override
    64     public boolean supportsFileAttributeView(Class<? extends FileAttributeView> type) {
    66     public boolean supportsFileAttributeView(Class<? extends FileAttributeView> type) {
    65         return (type == BasicFileAttributeView.class ||
    67         return (type == BasicFileAttributeView.class ||
    66                 type == ZipFileAttributeView.class);
    68                 type == ZipFileAttributeView.class ||
       
    69                 ((type == FileOwnerAttributeView.class ||
       
    70                   type == PosixFileAttributeView.class) && zfs.supportPosix));
    67     }
    71     }
    68 
    72 
    69     @Override
    73     @Override
    70     public boolean supportsFileAttributeView(String name) {
    74     public boolean supportsFileAttributeView(String name) {
    71         return "basic".equals(name) || "zip".equals(name);
    75         return "basic".equals(name) || "zip".equals(name) ||
       
    76                (("owner".equals(name) || "posix".equals(name)) && zfs.supportPosix);
    72     }
    77     }
    73 
    78 
    74     @Override
    79     @Override
    75     public <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> type) {
    80     public <V extends FileStoreAttributeView> V getFileStoreAttributeView(Class<V> type) {
    76         if (type == null)
    81         if (type == null)