Module java.base
Package java.nio.file.attribute

## Interface FileOwnerAttributeView

All Superinterfaces:
  `AttributeView`, `FileAttributeView`

All Known Subinterfaces:
  `AclFileAttributeView`, `PosixFileAttributeView`

    public interface FileOwnerAttributeView
    extends FileAttributeView

A file attribute view that supports reading or updating the owner of a file. This file attribute view is intended for file system implementations that support a file attribute that represents an identity that is the owner of the file. Often the owner of a file is the identity of the entity that created the file.

The `getOwner` or `setOwner` methods may be used to read or update the owner of the file.

The `getAttribute` and `setAttribute` methods may also be used to read or update the owner. In that case, the owner attribute is identified by the name `"owner"`, and the value of the attribute is a `UserPrincipal`.

Since:
  1.7

### Method Summary

All Methods Instance Methods Abstract Methods
`UserPrincipal` `getOwner()` Read the file owner.
`String` `name()` Returns the name of the attribute view.
`void` `setOwner​(UserPrincipal owner)` Updates the file owner.

### Method Detail

#### name

    String name()

Returns the name of the attribute view. Attribute views of this type have the name `"owner"`.

Specified by:
  `name` in interface `AttributeView`
Returns:
  the name of the attribute view

#### getOwner

    UserPrincipal getOwner()
                    throws IOException

Read the file owner.

It is implementation specific if the file owner can be a `group`.

Returns:
  the file owner
Throws:
  `IOException` - if an I/O error occurs
  `SecurityException` - In the case of the default provider, a security manager is installed, and it denies `RuntimePermission``("accessUserInformation")` or its `checkRead` method denies read access to the file.

#### setOwner

    void setOwner​(UserPrincipal owner)
           throws IOException

Updates the file owner.

It is implementation specific if the file owner can be a `group`. To ensure consistent and correct behavior across platforms it is recommended that this method should only be used to set the file owner to a user principal that is not a group.

Parameters:
  `owner` - the new file owner
Throws:
  `IOException` - if an I/O error occurs, or the `owner` parameter is a group and this implementation does not support setting the owner to a group
  `SecurityException` - In the case of the default provider, a security manager is installed, and it denies `RuntimePermission``("accessUserInformation")` or its `checkWrite` method denies write access to the file.