JavaTM 2 Platform
Std. Ed. v1.4.0

java.security.acl
Interface AclEntry

All Superinterfaces:
Cloneable

public interface AclEntry
extends Cloneable

This is the interface used for representing one entry in an Access Control List (ACL).

An ACL can be thought of as a data structure with multiple ACL entry objects. Each ACL entry object contains a set of permissions associated with a particular principal. (A principal represents an entity such as an individual user or a group). Additionally, each ACL entry is specified as being either positive or negative. If positive, the permissions are to be granted to the associated principal. If negative, the permissions are to be denied. Each principal can have at most one positive ACL entry and one negative entry; that is, multiple positive or negative ACL entries are not allowed for any principal. Note: ACL entries are by default positive. An entry becomes a negative entry only if the setNegativePermissions method is called on it.

See Also:
Acl

Method Summary
 boolean addPermission(Permission permission)
          Adds the specified permission to this ACL entry.
 boolean checkPermission(Permission permission)
          Checks if the specified permission is part of the permission set in this entry.
 Object clone()
          Clones this ACL entry.
 Principal getPrincipal()
          Returns the principal for which permissions are granted or denied by this ACL entry.
 boolean isNegative()
          Returns true if this is a negative ACL entry (one denying the associated principal the set of permissions in the entry), false otherwise.
 Enumeration permissions()
          Returns an enumeration of the permissions in this ACL entry.
 boolean removePermission(Permission permission)
          Removes the specified permission from this ACL entry.
 void setNegativePermissions()
          Sets this ACL entry to be a negative one.
 boolean setPrincipal(Principal user)
          Specifies the principal for which permissions are granted or denied by this ACL entry.
 String toString()
          Returns a string representation of the contents of this ACL entry.
 

Method Detail

setPrincipal

public boolean setPrincipal(Principal user)
Specifies the principal for which permissions are granted or denied by this ACL entry. If a principal was already set for this ACL entry, false is returned, otherwise true is returned.

Parameters:
user - the principal to be set for this entry.
Returns:
true if the principal is set, false if there was already a principal set for this entry.
See Also:
getPrincipal()

getPrincipal

public Principal getPrincipal()
Returns the principal for which permissions are granted or denied by this ACL entry. Returns null if there is no principal set for this entry yet.

Returns:
the principal associated with this entry.
See Also:
setPrincipal(java.security.Principal)

setNegativePermissions

public void setNegativePermissions()
Sets this ACL entry to be a negative one. That is, the associated principal (e.g., a user or a group) will be denied the permission set specified in the entry. Note: ACL entries are by default positive. An entry becomes a negative entry only if this setNegativePermissions method is called on it.


isNegative

public boolean isNegative()
Returns true if this is a negative ACL entry (one denying the associated principal the set of permissions in the entry), false otherwise.

Returns:
true if this is a negative ACL entry, false if it's not.

addPermission

public boolean addPermission(Permission permission)
Adds the specified permission to this ACL entry. Note: An entry can have multiple permissions.

Parameters:
permission - the permission to be associated with the principal in this entry.
Returns:
true if the permission was added, false if the permission was already part of this entry's permission set.

removePermission

public boolean removePermission(Permission permission)
Removes the specified permission from this ACL entry.

Parameters:
permission - the permission to be removed from this entry.
Returns:
true if the permission is removed, false if the permission was not part of this entry's permission set.

checkPermission

public boolean checkPermission(Permission permission)
Checks if the specified permission is part of the permission set in this entry.

Parameters:
permission - the permission to be checked for.
Returns:
true if the permission is part of the permission set in this entry, false otherwise.

permissions

public Enumeration permissions()
Returns an enumeration of the permissions in this ACL entry.

Returns:
an enumeration of the permissions in this ACL entry.

toString

public String toString()
Returns a string representation of the contents of this ACL entry.

Overrides:
toString in class Object
Returns:
a string representation of the contents.

clone

public Object clone()
Clones this ACL entry.

Overrides:
clone in class Object
Returns:
a clone of this ACL entry.

JavaTM 2 Platform
Std. Ed. v1.4.0

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2002 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.