Overview

Packages

  • ActiveSync
  • None

Classes

  • Horde_ActiveSync
  • Horde_ActiveSync_Connector_Exporter
  • Horde_ActiveSync_Connector_Importer
  • Horde_ActiveSync_Driver_Base
  • Horde_ActiveSync_Exception
  • Horde_ActiveSync_Exception_InvalidRequest
  • Horde_ActiveSync_Exception_StateGone
  • Horde_ActiveSync_Message_Base
  • Horde_ActiveSync_Request_Base
  • Horde_ActiveSync_Request_FolderCreate
  • Horde_ActiveSync_Request_FolderSync
  • Horde_ActiveSync_Request_GetHierarchy
  • Horde_ActiveSync_Request_GetItemEstimate
  • Horde_ActiveSync_Request_MeetingResponse
  • Horde_ActiveSync_Request_MoveItems
  • Horde_ActiveSync_Request_Notify
  • Horde_ActiveSync_Request_Ping
  • Horde_ActiveSync_Request_Provision
  • Horde_ActiveSync_Request_Search
  • Horde_ActiveSync_Request_SendMail
  • Horde_ActiveSync_Request_SmartForward
  • Horde_ActiveSync_Request_SmartReply
  • Horde_ActiveSync_Request_Sync
  • Horde_ActiveSync_State_File
  • Horde_ActiveSync_Sync
  • Horde_ActiveSync_Wbxml
  • Horde_ActiveSync_Wbxml_Decoder
  • Horde_ActiveSync_Wbxml_Encoder
  • Overview
  • Package
  • Class
  • Tree

Class Horde_ActiveSync_Driver_Base

File : diffbackend.php Project : Z-Push Descr : We do a standard differential change detection by sorting both lists of items by their unique id, and then traversing both arrays of items at once. Changes can be detected by comparing items at the same position in both arrays.

Created : 01.10.2007

Zarafa Deutschland GmbH, www.zarafaserver.de This file is distributed under GPL-2.0. Consult COPYING file for details

Abstract
Located at Horde/ActiveSync/Driver/Base.php
Methods summary
public Horde_ActiveSync_Driver
# __construct( array $params = array() )

Const'r

Const'r

Parameters

$params
<p>Any configuration parameters or injected objects the concrete driver may need.</p> <pre>(optional) logger Horde_Log_Logger instance (required) state_basic A Horde_ActiveSync_State_Base object that is capable of handling all collections except email. (optional) state_email A Horde_ActiveSync_State_Base object that is capable of handling email collections.</pre>

Returns

Horde_ActiveSync_Driver
public
# __destruct( )
public
# setLogger( Horde_Log_Logger $logger )

Setter for the logger instance

Setter for the logger instance

Parameters

$logger
The logger

Void

public array
# getHeartbeatConfig( )

Obtain the ping heartbeat settings

Obtain the ping heartbeat settings

Returns

array
abstract public
# statFolder( mixed $id )

Get folder stat "id" => The server ID that will be used to identify the folder. It must be unique, and not too long. How long exactly is not known, but try keeping it under 20 chars or so. It must be a string. "parent" => The server ID of the parent of the folder. Same restrictions as 'id' apply. "mod" => This is the modification signature. It is any arbitrary string which is constant as long as the folder has not changed. In practice this means that 'mod' can be equal to the folder name as this is the only thing that ever changes in folders.

Get folder stat "id" => The server ID that will be used to identify the folder. It must be unique, and not too long. How long exactly is not known, but try keeping it under 20 chars or so. It must be a string. "parent" => The server ID of the parent of the folder. Same restrictions as 'id' apply. "mod" => This is the modification signature. It is any arbitrary string which is constant as long as the folder has not changed. In practice this means that 'mod' can be equal to the folder name as this is the only thing that ever changes in folders.

abstract public
# getFolder( mixed $id )

Get a folder from the backend

Get a folder from the backend

To be implemented by concrete backend driver.

abstract public
# getFolderList( )

Get the list of folders from the backend.

Get the list of folders from the backend.

abstract public array
# getMessageList( string $folderId, timestamp $cutOffDate )

Get a full list of messages on the server

Get a full list of messages on the server

Parameters

$folderId
The folder id
$cutOffDate
<p>The timestamp of the earliest date for calendar or mail entries</p>

Returns

array
A list of messages
abstract public array
# getServerChanges( string $folderId, timestamp $from_ts, timestamp $to_ts, mixed $cutoffdate )

Get a list of server changes that occured during the specified time period.

Get a list of server changes that occured during the specified time period.

Parameters

$folderId
The server id of the collection to check.
$from_ts
The starting timestamp
$to_ts
The ending timestamp
$cutoffdate

Returns

array

A list of messge uids that have chnaged in the specified time period.

abstract public hash
# statMessage( string $folderId, string $id )

Get a message stat.

Get a message stat.

Parameters

$folderId
The folder id
$id
The message id (??)

Returns

hash
with 'id', 'mod', and 'flags' members
abstract public Horde_ActiveSync_Message_Base
# getMessage( string $folderid, string $id, integer $truncsize, integer $mimesupport = 0 )

Obtain an ActiveSync message from the backend.

Obtain an ActiveSync message from the backend.

Parameters

$folderid
The server's folder id this message is from
$id
The server's message id
$truncsize
A TRUNCATION_* constant
$mimesupport
Mime support for this message

Returns

Horde_ActiveSync_Message_Base
The message data
abstract public boolean
# deleteMessage( string $folderid, string $id )

Delete a message

Delete a message

Parameters

$folderid
Folder id
$id
Message id

Returns

boolean
abstract public
# changeMessage( string $folderid, string $id, Horde_ActiveSync_Message_Base $message, stdClass $device )

Add/Edit a message

Add/Edit a message

Parameters

$folderid
<p>The server id for the folder the message belongs to.</p>
$id
<p>The server's uid for the message if this is a change to an existing message.</p>
$message
The activesync message
$device
The device information
public boolean
# logon( string $username, string $password, string $domain = null )

Any code needed to authenticate to backend as the actual user.

Any code needed to authenticate to backend as the actual user.

Parameters

$username
The username to authenticate as
$password
The password
$domain
The user domain

Returns

boolean
public string
# getUser( )

Get the username for this request.

Get the username for this request.

Returns

string
The current username
public boolean
# logOff( )

Any code to run on log off

Any code to run on log off

Returns

boolean
public boolean
# setup( string $user )

Setup sync parameters. The user provided here is the user the backend will sync with. This allows you to authenticate as one user, and sync as another, if the backend supports this.

Setup sync parameters. The user provided here is the user the backend will sync with. This allows you to authenticate as one user, and sync as another, if the backend supports this.

Parameters

$user
The username to sync as on the backend.

Returns

boolean
public Horde_ActiveSync_DiffState_ImportHierarchy
# getHierarchyImporter( )

Return the helper for importing hierarchy changes from the PIM.

Return the helper for importing hierarchy changes from the PIM.

Returns

Horde_ActiveSync_DiffState_ImportHierarchy
public Horde_ActiveSync_DiffState_ImportContents
# getContentsImporter( string $folderId )

Return the helper for importing message changes from the PIM.

Return the helper for importing message changes from the PIM.

Parameters

$folderId

Returns

Horde_ActiveSync_DiffState_ImportContents
public Horde_ActiveSync_Connector_Importer
# getImporter( )

Returns

Horde_ActiveSync_Connector_Importer

Todo:

This will replace the above two methods. (They are still called from the (unused/unsupported MoveItems and CreateFolder Requests).


public Horde_ActiveSync_Sync
# getSyncObject( )

Return helper for performing the actual sync operation.

Return helper for performing the actual sync operation.

Returns

Horde_ActiveSync_Sync
public &
# getStateObject( array $collection = array() )

Will (eventually) return an appropriate state object based on the class being sync'd.

Will (eventually) return an appropriate state object based on the class being sync'd.

Parameters

$collection
public array
# getHierarchy( )

Get the full folder hierarchy from the backend.

Get the full folder hierarchy from the backend.

Returns

array
public Horde_ActiveSync_Message_Base
# fetch( string $folderid, string $id, ?? $mimesupport = 0 )

Obtain a message from the backend.

Obtain a message from the backend.

Parameters

$folderid
$id
$mimesupport
(Not sure what this was supposed to do)

Returns

Horde_ActiveSync_Message_Base
The message data
public unknown_type
# getAttachmentData( mixed $attname )

Parameters

$attname

Returns

unknown_type
abstract public boolean
# sendMail( string $rfc822, boolean $forward = false, boolean $reply = false, boolean $parent = false )

Sends the email represented by the rfc822 string received by the PIM.

Sends the email represented by the rfc822 string received by the PIM.

Parameters

$rfc822
The rfc822 mime message
$forward
Is this a message forward?
$reply
Is this a reply?
$parent
Parent message in thread.

Returns

boolean
public unknown_type
# getWasteBasket( )

Returns

unknown_type
public boolean
# deleteFolder( string $parent, string $id )

Delete a folder on the server.

Delete a folder on the server.

Parameters

$parent
The parent folder.
$id
The folder to delete.

Returns

boolean

Throws

Horde_ActiveSync_Exception
public unknown_type
# setReadFlag( mixed $folderid, mixed $id, mixed $flags )

Parameters

$folderid
$id
$flags

Returns

unknown_type
public boolean
# changeFolder( string $parent, string $id, string $displayname, string $type )

Change the name and/or type of a folder.

Change the name and/or type of a folder.

Parameters

$parent
$id
$displayname
$type

Returns

boolean
public unknown_type
# moveMessage( mixed $folderid, mixed $id, mixed $newfolderid )

Parameters

$folderid
$id
$newfolderid

Returns

unknown_type
public unknown_type
# meetingResponse( mixed $requestid, mixed $folderid, mixed $error, mixed & $calendarid )

Parameters

$requestid
$folderid
$error
$calendarid

Returns

unknown_type
public array
# getSearchResults( string $query, string $range )

Returns array of items which contain contact information

Returns array of items which contain contact information

Parameters

$query
$range

Returns

array
public boolean
# alterPing( )

Specifies if this driver has an alternate way of checking for changes when PING is used.

Specifies if this driver has an alternate way of checking for changes when PING is used.

Returns

boolean
public string
# getCurrentPolicy( string $policyType = 'MS-WAP-Provisioning-XML' )

Build a for the given security settings provided by the backend.

Build a for the given security settings provided by the backend.

4131 (Enforce password on device) 0: enabled 1: disabled AEFrequencyType 0: no inactivity time 1: inactivity time is set AEFrequencyValue inactivity time in minutes DeviceWipeThreshold after how many wrong password to device should get wiped CodewordFrequency validate every x wrong passwords, that a person is using the device which is able to read and write. should be half of DeviceWipeThreshold MinimumPasswordLength minimum password length PasswordComplexity 0: Require alphanumeric 1: Require only numeric, 2: anything goes

Parameters

$policyType
type of policy to return.

Returns

string
public static string
# truncate( string $string, string $length )

Truncate an UTF-8 encoded sting correctly

Truncate an UTF-8 encoded sting correctly

If it's not possible to truncate properly, an empty string is returned

Parameters

$string
The string to truncate
$length
The length of the returned string

Returns

string
The truncated string
API documentation generated by ApiGen