public interface IRepositoryFileAclDao
RepositoryFileAcl
instances. The methods in this interface
might closely resemble those in IUnifiedRepository
but this interface is not part of the public Pentaho
API and can evolve independently.Modifier and Type | Method and Description |
---|---|
void |
addAce(Serializable fileId,
org.pentaho.platform.api.repository2.unified.RepositoryFileSid recipient,
EnumSet<org.pentaho.platform.api.repository2.unified.RepositoryFilePermission> permission)
Adds ACE to end of ACL.
|
org.pentaho.platform.api.repository2.unified.RepositoryFileAcl |
createAcl(Serializable fileId,
org.pentaho.platform.api.repository2.unified.RepositoryFileAcl acl)
Creates an ACL.
|
org.pentaho.platform.api.repository2.unified.RepositoryFileAcl |
getAcl(Serializable fileId)
Returns ACL for file.
|
List<org.pentaho.platform.api.repository2.unified.RepositoryFileAce> |
getEffectiveAces(Serializable fileId,
boolean forceEntriesInheriting)
Returns the list of access control entries that will be used to make an access control decision.
|
boolean |
hasAccess(String relPath,
EnumSet<org.pentaho.platform.api.repository2.unified.RepositoryFilePermission> permissions)
Returns
true if the user has all of the permissions. |
void |
setFullControl(Serializable fileId,
org.pentaho.platform.api.repository2.unified.RepositoryFileSid sid,
org.pentaho.platform.api.repository2.unified.RepositoryFilePermission permission)
Gives full control (all permissions) to given sid.
|
org.pentaho.platform.api.repository2.unified.RepositoryFileAcl |
updateAcl(org.pentaho.platform.api.repository2.unified.RepositoryFileAcl acl)
Updates an ACL.
|
List<org.pentaho.platform.api.repository2.unified.RepositoryFileAce> getEffectiveAces(Serializable fileId, boolean forceEntriesInheriting)
fileId
- file idforceEntriesInheriting
- true
to treat ACL as if isEntriesInheriting
was true; this avoids having the caller
fetch the parent of ACL belonging to file with fileId
; no change is persisted to the ACLboolean hasAccess(String relPath, EnumSet<org.pentaho.platform.api.repository2.unified.RepositoryFilePermission> permissions)
true
if the user has all of the permissions. The implementation should return false
if
either the user does not have access or the file does not exist.relPath
- path to filepermissions
- permissions to checktrue
if user has accessorg.pentaho.platform.api.repository2.unified.RepositoryFileAcl getAcl(Serializable fileId)
fileId
- file idorg.pentaho.platform.api.repository2.unified.RepositoryFileAcl updateAcl(org.pentaho.platform.api.repository2.unified.RepositoryFileAcl acl)
acl
- ACL to set; must have non-null idorg.pentaho.platform.api.repository2.unified.RepositoryFileAcl createAcl(Serializable fileId, org.pentaho.platform.api.repository2.unified.RepositoryFileAcl acl)
fileId
- file idacl
- file aclvoid addAce(Serializable fileId, org.pentaho.platform.api.repository2.unified.RepositoryFileSid recipient, EnumSet<org.pentaho.platform.api.repository2.unified.RepositoryFilePermission> permission)
updateAcl(RepositoryFileAcl)
should not
need to be called after this method returns.fileId
- file idrecipient
- recipient of permissionpermission
- permission to setvoid setFullControl(Serializable fileId, org.pentaho.platform.api.repository2.unified.RepositoryFileSid sid, org.pentaho.platform.api.repository2.unified.RepositoryFilePermission permission)
updateAcl(RepositoryFileAcl)
should not need to be
called after this method returns.fileId
- file idsid
- sid that should own the domain object associated with this ACLpermision
- permission representing full controlCopyright © 2019 Hitachi Vantara. All rights reserved.