# 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

Modifier and Type
Method
Description
`UserPrincipal`
`getOwner()`
Read the file owner.
`String`
`name()`
Returns the name of the attribute view.
`void`
`setOwner(UserPrincipal owner)`
Updates the file owner.

## Method Details

### 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

### 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