src/solaris/classes/sun/nio/fs/LinuxDosFileAttributeView.java

Print this page

        

*** 25,34 **** --- 25,35 ---- package sun.nio.fs; import java.nio.file.attribute.*; import java.util.Map; + import java.util.Set; import java.io.IOException; import sun.misc.Unsafe; import static sun.nio.fs.UnixNativeDispatcher.*; import static sun.nio.fs.UnixConstants.*;
*** 55,64 **** --- 56,69 ---- private static final int DOS_XATTR_READONLY = 0x01; private static final int DOS_XATTR_HIDDEN = 0x02; private static final int DOS_XATTR_SYSTEM = 0x04; private static final int DOS_XATTR_ARCHIVE = 0x20; + // the names of the DOS attributes (includes basic) + private static final Set<String> dosAttributeNames = + Util.newSet(basicAttributeNames, READONLY_NAME, ARCHIVE_NAME, SYSTEM_NAME, HIDDEN_NAME); + LinuxDosFileAttributeView(UnixPath file, boolean followLinks) { super(file, followLinks); } @Override
*** 91,103 **** @Override public Map<String,Object> readAttributes(String[] attributes) throws IOException { ! AttributesBuilder builder = AttributesBuilder.create(attributes); DosFileAttributes attrs = readAttributes(); ! addBasicAttributesToBuilder(attrs, builder); if (builder.match(READONLY_NAME)) builder.add(READONLY_NAME, attrs.isReadOnly()); if (builder.match(ARCHIVE_NAME)) builder.add(ARCHIVE_NAME, attrs.isArchive()); if (builder.match(SYSTEM_NAME)) --- 96,109 ---- @Override public Map<String,Object> readAttributes(String[] attributes) throws IOException { ! AttributesBuilder builder = ! AttributesBuilder.create(dosAttributeNames, attributes); DosFileAttributes attrs = readAttributes(); ! addRequestedBasicAttributes(attrs, builder); if (builder.match(READONLY_NAME)) builder.add(READONLY_NAME, attrs.isReadOnly()); if (builder.match(ARCHIVE_NAME)) builder.add(ARCHIVE_NAME, attrs.isArchive()); if (builder.match(SYSTEM_NAME))