Documentation

Horde_Kolab_Storage_Driver_Decorator_Base
in package
implements Horde_Kolab_Storage_Driver

The basic driver decorator definition for accessing Kolab storage.

Copyright 2010-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.

Tags
category

Kolab

author

Gunnar Wrobel wrobel@pardus.de

license

http://www.horde.org/licenses/lgpl21 LGPL 2.1

Interfaces, Classes, Traits and Enums

Horde_Kolab_Storage_Driver
The driver definition for accessing Kolab storage.

Table of Contents

$_driver  : Horde_Kolab_Storage_Driver
The decorated driver.
__construct()  : mixed
Constructor.
appendMessage()  : mixed
Appends a message to the given folder.
create()  : null
Create the specified folder.
createBackend()  : mixed
Create the backend driver.
delete()  : null
Delete the specified folder.
deleteAcl()  : null
Delete the access rights for user on a folder.
deleteMessages()  : null
Deletes messages from the specified folder.
expunge()  : null
Expunges messages in the current folder.
fetch()  : array<string|int, mixed>
Fetches the objects for the specified UIDs.
fetchBodypart()  : resource
Retrieves a bodypart for the given message ID and mime part ID.
fetchComplete()  : array<string|int, mixed>
Retrieves a complete message.
fetchHeaders()  : Horde_Mime_Headers
Retrieves the message headers.
fetchStructure()  : array<string|int, mixed>
Retrieves the messages for the given message ids.
getAcl()  : array<string|int, mixed>
Retrieve the access rights for a folder.
getAnnotation()  : string
Fetches the annotation on a folder.
getAuth()  : string
Return the id of the user currently authenticated.
getBackend()  : mixed
Returns the actual backend driver.
getDriverName()  : string
Return the class name of the decorated driver.
getId()  : string
Return the unique connection id.
getMyAcl()  : string
Retrieve the access rights the current user has on a folder.
getNamespace()  : Horde_Kolab_Storage_Driver_Namespace
Retrieve the namespace information for this connection.
getParameters()  : array<string|int, mixed>
Return the connection parameters.
getParser()  : Horde_Kolab_Storage_Data_Parser
Returns the parser for data objects.
getStamp()  : Horde_Kolab_Storage_Folder_Stamp
Returns a stamp for the current folder status. This stamp can be used to identify changes in the folder data.
getStampFromToken()  : Horde_Kolab_Storage_Folder_Stamp
Returns a stamp for the current folder status. This stamp can be used to identify changes in the folder data. This method, as opposed to self::getStamp(), uses the IMAP client's token to calculate the changes.
getUids()  : array<string|int, mixed>
Returns the message ids of the messages in this folder.
hasAclSupport()  : bool
Does the backend support ACL?
hasCatenateSupport()  : bool
Checks if the backend supports CATENATE.
listAnnotation()  : array<string|int, mixed>
Retrieves the specified annotation for the complete list of mailboxes.
listFolders()  : array<string|int, mixed>
Retrieves a list of mailboxes from the server.
moveMessage()  : null
Moves a message to a new folder.
rename()  : null
Rename the specified folder.
setAcl()  : null
Set the access rights for a folder.
setAnnotation()  : null
Sets the annotation on a folder.
setBackend()  : null
Set the backend driver.
setParser()  : null
Set the data parser.
status()  : array<string|int, mixed>
Returns the status of the current folder.

Properties

Methods

appendMessage()

Appends a message to the given folder.

public appendMessage(string $folder, resource $msg) : mixed
Parameters
$folder : string

The folder to append the message(s) to.

$msg : resource

The message to append.

Return values
mixed

True or the UID of the new message in case the backend supports UIDPLUS.

create()

Create the specified folder.

public create(string $folder) : null
Parameters
$folder : string

The folder to create.

Return values
null

createBackend()

Create the backend driver.

public createBackend() : mixed
Return values
mixed

The backend driver.

delete()

Delete the specified folder.

public delete(string $folder) : null
Parameters
$folder : string

The folder to delete.

Return values
null

deleteAcl()

Delete the access rights for user on a folder.

public deleteAcl(string $folder, string $user) : null
Parameters
$folder : string

The folder to act upon.

$user : string

The user to delete the ACL for

Return values
null

deleteMessages()

Deletes messages from the specified folder.

public deleteMessages(string $folder, int $uids) : null
Parameters
$folder : string

The folder to delete messages from.

$uids : int

IMAP message ids.

Return values
null

expunge()

Expunges messages in the current folder.

public expunge(string $folder) : null
Parameters
$folder : string

The folder to expunge.

Return values
null

fetch()

Fetches the objects for the specified UIDs.

public fetch(string $folder, mixed $uids[, mixed $options = array() ]) : array<string|int, mixed>
Parameters
$folder : string

The folder to access.

$uids : mixed
$options : mixed = array()
Return values
array<string|int, mixed>

The parsed objects.

fetchBodypart()

Retrieves a bodypart for the given message ID and mime part ID.

public fetchBodypart(string $folder, array<string|int, mixed> $uid, array<string|int, mixed> $id) : resource
Parameters
$folder : string

The folder to fetch the messages from.

$uid : array<string|int, mixed>

The message UID.

$id : array<string|int, mixed>

The mime part ID.

Return values
resource

The body part, as a stream resource.

fetchComplete()

Retrieves a complete message.

public fetchComplete(string $folder, array<string|int, mixed> $uid) : array<string|int, mixed>
Parameters
$folder : string

The folder to fetch the messages from.

$uid : array<string|int, mixed>

The message UID.

Return values
array<string|int, mixed>

The message encapsuled as an array that contains a Horde_Mime_Headers and a Horde_Mime_Part object.

fetchHeaders()

Retrieves the message headers.

public fetchHeaders(string $folder, array<string|int, mixed> $uid) : Horde_Mime_Headers
Parameters
$folder : string

The folder to fetch the message from.

$uid : array<string|int, mixed>

The message UID.

Return values
Horde_Mime_Headers

The message headers.

fetchStructure()

Retrieves the messages for the given message ids.

public fetchStructure(string $folder, array<string|int, mixed> $uids) : array<string|int, mixed>
Parameters
$folder : string

The folder to fetch the messages from.

$uids : array<string|int, mixed>

The message UIDs.

Return values
array<string|int, mixed>

An array of message structures parsed into Horde_Mime_Part instances.

getAcl()

Retrieve the access rights for a folder.

public getAcl(string $folder) : array<string|int, mixed>
Parameters
$folder : string

The folder to retrieve the ACL for.

Return values
array<string|int, mixed>

An array of rights.

getAnnotation()

Fetches the annotation on a folder.

public getAnnotation(string $entry, string $folder) : string
Parameters
$entry : string

The entry to fetch.

$folder : string

The name of the folder.

Return values
string

The annotation value.

getAuth()

Return the id of the user currently authenticated.

public getAuth() : string
Return values
string

The id of the user that opened the connection.

getBackend()

Returns the actual backend driver.

public getBackend() : mixed

If there is no driver set the driver should be constructed within this method.

Return values
mixed

The backend driver.

getDriverName()

Return the class name of the decorated driver.

public getDriverName() : string
Return values
string

The class name of the decorated driver.

getId()

Return the unique connection id.

public getId() : string
Return values
string

The connection id.

getMyAcl()

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

public getMyAcl(string $folder) : string
Parameters
$folder : string

The folder to retrieve the user ACL for.

Return values
string

The user rights.

getNamespace()

Retrieve the namespace information for this connection.

public getNamespace() : Horde_Kolab_Storage_Driver_Namespace
Return values
Horde_Kolab_Storage_Driver_Namespace

The initialized namespace handler.

getParameters()

Return the connection parameters.

public getParameters() : array<string|int, mixed>
Return values
array<string|int, mixed>

The connection parameters.

getParser()

Returns the parser for data objects.

public getParser() : Horde_Kolab_Storage_Data_Parser
Return values
Horde_Kolab_Storage_Data_Parser

The parser.

getStamp()

Returns a stamp for the current folder status. This stamp can be used to identify changes in the folder data.

public getStamp(string $folder) : Horde_Kolab_Storage_Folder_Stamp
Parameters
$folder : string

Return the stamp for this folder.

Return values
Horde_Kolab_Storage_Folder_Stamp

A stamp indicating the current folder status.

getStampFromToken()

Returns a stamp for the current folder status. This stamp can be used to identify changes in the folder data. This method, as opposed to self::getStamp(), uses the IMAP client's token to calculate the changes.

public getStampFromToken(string $folder, string $token, array<string|int, mixed> $ids) : Horde_Kolab_Storage_Folder_Stamp
Parameters
$folder : string

Return the stamp for this folder.

$token : string

A sync token provided by the IMAP server.

$ids : array<string|int, mixed>

An array of UIDs that we know about.

Return values
Horde_Kolab_Storage_Folder_Stamp

A stamp indicating the current folder status.

getUids()

Returns the message ids of the messages in this folder.

public getUids(string $folder) : array<string|int, mixed>
Parameters
$folder : string

Check the status of this folder.

Return values
array<string|int, mixed>

The message ids.

hasAclSupport()

Does the backend support ACL?

public hasAclSupport() : bool
Return values
bool

True if the backend supports ACLs.

hasCatenateSupport()

Checks if the backend supports CATENATE.

public hasCatenateSupport() : bool
Return values
bool

True if the backend supports CATENATE.

listAnnotation()

Retrieves the specified annotation for the complete list of mailboxes.

public listAnnotation(string $annotation) : array<string|int, mixed>
Parameters
$annotation : string

The name of the annotation to retrieve.

Return values
array<string|int, mixed>

An associative array combining the folder names as key with the corresponding annotation value.

listFolders()

Retrieves a list of mailboxes from the server.

public listFolders() : array<string|int, mixed>
Return values
array<string|int, mixed>

The list of mailboxes.

moveMessage()

Moves a message to a new folder.

public moveMessage(int $uid, string $old_folder, string $new_folder) : null
Parameters
$uid : int

IMAP message id.

$old_folder : string

Source folder.

$new_folder : string

Target folder.

Return values
null

rename()

Rename the specified folder.

public rename(string $old, string $new) : null
Parameters
$old : string

The folder to rename.

$new : string

The new name of the folder.

Return values
null

setAcl()

Set the access rights for a folder.

public setAcl(string $folder, string $user, string $acl) : null
Parameters
$folder : string

The folder to act upon.

$user : string

The user to set the ACL for.

$acl : string

The ACL.

Return values
null

setAnnotation()

Sets the annotation on a folder.

public setAnnotation(string $folder, string $annotation, array<string|int, mixed> $value) : null
Parameters
$folder : string

The name of the folder.

$annotation : string

The annotation to set.

$value : array<string|int, mixed>

The values to set

Return values
null

setBackend()

Set the backend driver.

public setBackend(mixed $backend) : null
Parameters
$backend : mixed

The driver that should be used.

Return values
null

setParser()

Set the data parser.

public setParser(mixed $parser) : null
Parameters
$parser : mixed

The parser that should be used.

Return values
null

status()

Returns the status of the current folder.

public status(string $folder) : array<string|int, mixed>
Parameters
$folder : string

Check the status of this folder.

Return values
array<string|int, mixed>

An array that contains 'uidvalidity' and 'uidnext'.

Search results