SAP NetWeaver '04

com.sapportals.wcm.util.acl
Interface IAcl

[contained in: com.sap.netweaver.bc.util.par - bc.util.public_api.jar]
All Superinterfaces:
IOwner
All Known Subinterfaces:
IAclRaw

public interface IAcl
extends IOwner

An IAcl is a Access Control List which defines the access permissions to an object.
Abbreviations:


Method Summary
 boolean addEntry(com.sapportals.portal.security.usermanagement.IUMPrincipal caller, IAclEntry aclEntry)
          add an ACE to the ACL
 boolean checkPermission(com.sapportals.portal.security.usermanagement.IUMPrincipal principal, IAclPermission permission)
          check whether the ACL grants a specific permission to a user
 java.util.List getDescendantsWithAcl(java.lang.String postFix)
          get a list of all IDs of the descendants of the ACL that have an ACL too
 IAclEntryList getEntries()
          get the ACEs of the ACL
 IAclEntryList getEntries(com.sapportals.portal.security.usermanagement.IUMPrincipal principal)
          get the ACEs of the ACL concerning a specific principal
 com.sapportals.portal.security.usermanagement.IUMPrincipal getLockingUser()
          get the user which locked the ACL
 boolean hasDescendantsWithAcl(java.lang.String postFix)
          check whether the ACl has descendants that have an ACL too
 boolean isLocked()
          check whether the ACL is locked
 boolean isReadOnly()
          check whether the ACL is read only
 boolean isUpToDate()
          check whether the ACL is up to date (check change level of persisted ACL) (used to invalidate ACL caches)
 boolean lock(com.sapportals.portal.security.usermanagement.IUMPrincipal caller)
          lock the ACL (the lock is cooperative and affects only the result of subsequent calls to lock() or isLocked())
 boolean removeEntry(com.sapportals.portal.security.usermanagement.IUMPrincipal caller, IAclEntry aclEntry)
          remove an ACE from the ACL
 void unlock(com.sapportals.portal.security.usermanagement.IUMPrincipal caller)
          unlock the ACL
 
Methods inherited from interface com.sapportals.wcm.util.acl.IOwner
addOwner, getOwners, isAuthorized, isOwner, removeOwner
 

Method Detail

addEntry

public boolean addEntry(com.sapportals.portal.security.usermanagement.IUMPrincipal caller,
                        IAclEntry aclEntry)
                 throws AclPersistenceException,
                        InvalidClassException,
                        NotAuthorizedException,
                        AlreadyAssignedToAclException,
                        PermissionNotSupportedException
add an ACE to the ACL
Parameters:
caller - a principal which must be an owner of the ACL
aclEntry - the ACE
Returns:
TBD: Description of the outgoing return value
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred
InvalidClassException - the ACE was created by a foreign resource acl manager
NotAuthorizedException - the caller in not an owner
AlreadyAssignedToAclException - the ACE is already assigned to an ACL
PermissionNotSupportedException - the permission of the ACE is not supported for the type of the ACL's object

removeEntry

public boolean removeEntry(com.sapportals.portal.security.usermanagement.IUMPrincipal caller,
                           IAclEntry aclEntry)
                    throws AclPersistenceException,
                           InvalidClassException,
                           NotAuthorizedException
remove an ACE from the ACL
Parameters:
caller - a principal which must be an owner of the ACL
aclEntry - the ACE
Returns:
TBD: Description of the outgoing return value
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred
InvalidClassException - the ACE was created by a foreign resource acl manager
NotAuthorizedException - the caller in not an owner

getEntries

public IAclEntryList getEntries()
                         throws AclPersistenceException
get the ACEs of the ACL
Returns:
entries
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

getEntries

public IAclEntryList getEntries(com.sapportals.portal.security.usermanagement.IUMPrincipal principal)
                         throws AclPersistenceException
get the ACEs of the ACL concerning a specific principal
Parameters:
principal - the principal
Returns:
entries
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

checkPermission

public boolean checkPermission(com.sapportals.portal.security.usermanagement.IUMPrincipal principal,
                               IAclPermission permission)
                        throws AclPersistenceException
check whether the ACL grants a specific permission to a user
Parameters:
permission - the permission
principal - TBD: Description of the incoming method parameter
Returns:
true iff the permission is granted
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

lock

public boolean lock(com.sapportals.portal.security.usermanagement.IUMPrincipal caller)
             throws AclPersistenceException,
                    NotAuthorizedException
lock the ACL (the lock is cooperative and affects only the result of subsequent calls to lock() or isLocked())
Parameters:
caller - TBD: Description of the incoming method parameter
Returns:
true iff the ACL was locked successfully
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred
NotAuthorizedException - the caller is not an owner

isLocked

public boolean isLocked()
                 throws AclPersistenceException
check whether the ACL is locked
Returns:
true iff the ACL is locked
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

getLockingUser

public com.sapportals.portal.security.usermanagement.IUMPrincipal getLockingUser()
                                                                          throws AclPersistenceException
get the user which locked the ACL
Returns:
the user which locked the ACL or null in case the ACL is not locked
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

unlock

public void unlock(com.sapportals.portal.security.usermanagement.IUMPrincipal caller)
            throws AclPersistenceException,
                   NotAuthorizedException
unlock the ACL
Parameters:
caller - TBD: Description of the incoming method parameter
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred
NotAuthorizedException - the caller is not the user which locked the ACL

hasDescendantsWithAcl

public boolean hasDescendantsWithAcl(java.lang.String postFix)
                              throws AclPersistenceException
check whether the ACl has descendants that have an ACL too
Parameters:
postFix - is appended to the ACL ID before the descendants are identified as all ACLs whose IDs start with this ID
Returns:
true iff the ACL has descendants that have an ACL too
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

getDescendantsWithAcl

public java.util.List getDescendantsWithAcl(java.lang.String postFix)
                                     throws AclPersistenceException
get a list of all IDs of the descendants of the ACL that have an ACL too
Parameters:
postFix - is appended to the ACL ID before the descendants are identified as all ACLs whose IDs start with this ID
Returns:
the IDs of the descendants
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

isReadOnly

public boolean isReadOnly()
                   throws AclPersistenceException
check whether the ACL is read only
Returns:
true iff the ACL is read only
Throws:
AclPersistenceException - a problem with the storage where the ACLs are persisted occurred

isUpToDate

public boolean isUpToDate()
                   throws AclPersistenceException
check whether the ACL is up to date (check change level of persisted ACL) (used to invalidate ACL caches)
Returns:
true iff the persisted ACL has the same change level
Throws:
AclPersistenceException - Exception raised in failure situation

SAP NetWeaver '04

Copyright © 2004 by SAP AG. All Rights Reserved.
SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver, and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.

These materials are subject to change without notice. These materials are provided by SAP AG and its affiliated companies ("SAP Group") for informational purposes only, without representation or warranty of any kind, and SAP Group shall not be liable for errors or omissions with respect to the materials. The only warranties for SAP Group products and services are those that are set forth in the express warranty statements accompanying such products and services, if any. Nothing herein should be construed as constituting an additional warranty.