\Horde_Kolab_Storage_List_Query_Acl_Cache

Handles a cached list of folder acls.

Copyright 2011-2017 Horde LLC (http://www.horde.org/)

See the enclosed file LICENSE for license information (LGPL). If you did not receive this file, see http://www.horde.org/licenses/lgpl21.

Summary

Methods
Properties
Constants
hasAclSupport()
getAcl()
getMyAcl()
getAllAcl()
setAcl()
deleteAcl()
__construct()
updateAfterCreateFolder()
updateAfterDeleteFolder()
updateAfterRenameFolder()
synchronize()
No public properties found
CAPABILITY
ACL
MYRIGHTS
ALLRIGHTS
No protected methods found
No protected properties found
N/A
_purgeFolder()
$_query
$_list_cache
$_acl
$_my_rights
$_all_rights
N/A

Constants

CAPABILITY

CAPABILITY

The acl support

ACL

ACL

The ACL query data

MYRIGHTS

MYRIGHTS

The user specific rights

ALLRIGHTS

ALLRIGHTS

All rights

Properties

$_query

$_query : 

The underlying ACL query.

Type

$_list_cache

$_list_cache : \Horde_Kolab_Storage_Cache_List

The list cache.

Type

\Horde_Kolab_Storage_Cache_List

$_acl

$_acl : array

The cached ACL data.

Type

array

$_my_rights

$_my_rights : array

The cached user rights.

Type

array

$_all_rights

$_all_rights : array

The cached rights.

Type

array

Methods

hasAclSupport()

hasAclSupport() : boolean

Does the backend support ACL?

Returns

boolean —

True if the backend supports ACLs.

getAcl()

getAcl(string  $folder) : array

Retrieve the access rights for a folder. This method will use two calls to the backend. It will first get the individual user rights via getMyRights and will subsequently fetch all ACL if the user has admin rights on a folder. If you already know the user has admin rights on a folder it makes more sense to call getAllAcl() directly.

Parameters

string $folder

The folder to retrieve the ACL for.

Returns

array —

An array of rights.

getMyAcl()

getMyAcl(string  $folder) : string

Retrieve the access rights the current user has on a folder.

Parameters

string $folder

The folder to retrieve the user ACL for.

Returns

string —

The user rights.

getAllAcl()

getAllAcl(string  $folder) : string

Retrieve the all access rights on a folder.

Parameters

string $folder

The folder to retrieve the ACL for.

Returns

string —

The folder rights.

setAcl()

setAcl(string  $folder, string  $user, string  $acl) : NULL

Set the access rights for a folder.

Parameters

string $folder

The folder to act upon.

string $user

The user to set the ACL for.

string $acl

The ACL.

Returns

NULL

deleteAcl()

deleteAcl(string  $folder, string  $user) : NULL

Delete the access rights for user on a folder.

Parameters

string $folder

The folder to act upon.

string $user

The user to delete the ACL for

Returns

NULL

updateAfterCreateFolder()

updateAfterCreateFolder(string  $folder, string  $type = null) : NULL

Update the listener after creating a new folder.

Parameters

string $folder

The path of the folder that has been created.

string $type

An optional type for the folder.

Returns

NULL

updateAfterDeleteFolder()

updateAfterDeleteFolder(string  $folder) : NULL

Update the listener after deleting folder.

Parameters

string $folder

The path of the folder that has been deleted.

Returns

NULL

updateAfterRenameFolder()

updateAfterRenameFolder(string  $old, string  $new) : NULL

Update the listener after renaming a folder.

Parameters

string $old

The old path of the folder.

string $new

The new path of the folder.

Returns

NULL

synchronize()

synchronize() : NULL

Synchronize the ACL information with the information from the backend.

Returns

NULL

_purgeFolder()

_purgeFolder(string  $folder) : NULL

Remove outdated folder data from the cache.

Parameters

string $folder

The folder name.

Returns

NULL