Example usage for java.nio.file.attribute PosixFileAttributeView setGroup

List of usage examples for java.nio.file.attribute PosixFileAttributeView setGroup

Introduction

In this page you can find the example usage for java.nio.file.attribute PosixFileAttributeView setGroup.

Prototype

void setGroup(GroupPrincipal group) throws IOException;

Source Link

Document

Updates the file group-owner.

Usage

From source file:Test.java

private static void setGroupPrincipal(Path path, String userName, String groupName) throws Exception {
    System.out.println("Setting owner for " + path.getFileName());
    PosixFileAttributeView view = Files.getFileAttributeView(path, PosixFileAttributeView.class);

    PosixFileAttributes attributes = view.readAttributes();
    System.out.println("Old Group: " + attributes.group().getName());
    System.out.println("Old Owner: " + attributes.owner().getName());

    UserPrincipalLookupService lookupService = FileSystems.getDefault().getUserPrincipalLookupService();
    UserPrincipal userPrincipal = lookupService.lookupPrincipalByName(userName);
    GroupPrincipal groupPrincipal = lookupService.lookupPrincipalByGroupName(groupName);
    view.setGroup(groupPrincipal);
    view.setOwner(userPrincipal);// w  w w. j  a v  a  2  s . c o  m

    attributes = view.readAttributes();
    System.out.println("New Group: " + attributes.group().getName());
    System.out.println("New Owner: " + attributes.owner().getName());
}