Методы File
, которые устанавливают различные атрибуты: setExecutable
, setReadable
, setReadOnly
, setWritable
, заменяются методом Files
setAttribute (Path, String, Object, LinkOption ...) .
Пример использования:
public void setFileAttributes() throws IOException {
Path path = ...
UserPrincipal user = path.getFileSystem().getUserPrincipalLookupService().lookupPrincipalByName("user");
AclFileAttributeView view = Files.getFileAttributeView(path, AclFileAttributeView.class);
AclEntry entry = AclEntry.newBuilder()
.setType(ALLOW)
.setPrincipal(user)
.setPermissions(Set.of(READ_DATA, EXECUTE, WRITE_DATA))
.build();
List<AclEntry> acl = view.getAcl();
acl.add(0, entry);
Files.setAttribute(path, "acl:acl", acl);
}
Подробнее см. AclFileAttributeView .