Class AclEntry
- java.lang.Object
-
- java.nio.file.attribute.AclEntry
-
public final class AclEntry extends Object
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 itsbuild
method.ACL entries are immutable and are safe for use by multiple concurrent threads.
- Since:
- 1.7
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
AclEntry.Builder
A builder ofAclEntry
objects.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method and Description boolean
equals(Object ob)
Compares the specified object with this ACL entry for equality.Set<AclEntryFlag>
flags()
Returns a copy of the flags component.int
hashCode()
Returns the hash-code value for this ACL entry.static AclEntry.Builder
newBuilder()
Constructs a new builder.static AclEntry.Builder
newBuilder(AclEntry entry)
Constructs a new builder with the components of an existing ACL entry.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.
-
-
-
Method Detail
newBuilder
public static AclEntry.Builder newBuilder()
Constructs a new builder. The initial value of the type and who components isnull
. The initial value of the permissions and flags components is the empty set.- Returns:
- a new builder
newBuilder
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
type
public AclEntryType type()
Returns the ACL entry type.- Returns:
- the ACL entry type
principal
public UserPrincipal principal()
Returns the principal component.- Returns:
- the principal component
permissions
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
flags
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
equals
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 returnsfalse
.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.- Overrides:
-
equals
in classObject
- 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 - See Also:
-
Object.hashCode()
,HashMap
hashCode
public int hashCode()
Returns the hash-code value for this ACL entry.This method satisfies the general contract of the
Object.hashCode()
method.- Overrides:
-
hashCode
in classObject
- Returns:
- a hash code value for this object.
- See Also:
-
Object.equals(java.lang.Object)
,System.identityHashCode(java.lang.Object)
-
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.