An entry in an access control list (ACL).
The ACL entry represented by this class is based on the ACL model specified in RFC 3530: Network File System (NFS) version 4 Protocol. Each entry has four components as follows:
The
type
component determines if the entry grants or denies access.The
principal
component, sometimes called the "who" component, is aUserPrincipal
corresponding to the identity that the entry grants or denies accessThe
permissions
component is a set ofpermissions
The
flags
component is a set offlags
to indicate how entries are inherited and propagated
ACL entries are created using an associated AclEntry.Builder
object by
invoking its build
method.
ACL entries are immutable and are safe for use by multiple concurrent threads.
Nested Class Summary
class | AclEntry.Builder | A builder of AclEntry objects. |
Public Method Summary
boolean | |
Set<AclEntryFlag> |
flags()
Returns a copy of the flags component.
|
int |
hashCode()
Returns the hash-code value for this ACL entry.
|
static AclEntry.Builder | |
static AclEntry.Builder |
newBuilder()
Constructs a new builder.
|
Set<AclEntryPermission> |
permissions()
Returns a copy of the permissions component.
|
UserPrincipal |
principal()
Returns the principal component.
|
String |
toString()
Returns the string representation of this ACL entry.
|
AclEntryType |
type()
Returns the ACL entry type.
|
Inherited Method Summary
Public Methods
public boolean equals (Object ob)
Compares the specified object with this ACL entry for equality.
If the given object is not an AclEntry
then this method
immediately returns false
.
For two ACL entries to be considered equals requires that they are both the same type, their who components are equal, their permissions components are equal, and their flags components are equal.
This method satisfies the general contract of the Object.equals
method.
Parameters
ob | the object to which this object is to be compared |
---|
Returns
true
if, and only if, the given object is an AclEntry that is identical to this AclEntry
public Set<AclEntryFlag> flags ()
Returns a copy of the flags component.
The returned set is a modifiable copy of the flags.
Returns
- the flags component
public int hashCode ()
Returns the hash-code value for this ACL entry.
This method satisfies the general contract of the Object.hashCode()
method.
Returns
- this object's hash code.
public static AclEntry.Builder newBuilder (AclEntry entry)
Constructs a new builder with the components of an existing ACL entry.
Parameters
entry | an ACL entry |
---|
Returns
- a new builder
public static AclEntry.Builder newBuilder ()
Constructs a new builder. The initial value of the type and who
components is null
. The initial value of the permissions and
flags components is the empty set.
Returns
- a new builder
public Set<AclEntryPermission> permissions ()
Returns a copy of the permissions component.
The returned set is a modifiable copy of the permissions.
Returns
- the permissions component
public String toString ()
Returns the string representation of this ACL entry.
Returns
- the string representation of this entry