Overview

Packages

  • None
  • SyncMl

Classes

  • Horde_SyncMl
  • Horde_SyncMl_Backend
  • Horde_SyncMl_Backend_Horde
  • Horde_SyncMl_Command
  • Horde_SyncMl_Command_Alert
  • Horde_SyncMl_Command_Final
  • Horde_SyncMl_Command_Get
  • Horde_SyncMl_Command_Map
  • Horde_SyncMl_Command_Put
  • Horde_SyncMl_Command_Replace
  • Horde_SyncMl_Command_Results
  • Horde_SyncMl_Command_Status
  • Horde_SyncMl_Command_Sync
  • Horde_SyncMl_Command_SyncHdr
  • Horde_SyncMl_ContentHandler
  • Horde_SyncMl_DataStore
  • Horde_SyncMl_Device
  • Horde_SyncMl_Device_Nokia
  • Horde_SyncMl_Device_P800
  • Horde_SyncMl_Device_sync4j
  • Horde_SyncMl_Device_Sync4JMozilla
  • Horde_SyncMl_Device_Synthesis
  • Horde_SyncMl_DeviceInfo
  • Horde_SyncMl_Property
  • Horde_SyncMl_PropertyParameter
  • Horde_SyncMl_State
  • Horde_SyncMl_Sync
  • Horde_SyncMl_SyncElement
  • Horde_SyncMl_Translation
  • Horde_SyncMl_XmlOutput
  • Overview
  • Package
  • Class
  • Tree

Class Horde_SyncMl_ContentHandler

There is one global object used by SyncML: 1) $GLOBALS['backend'] Backend to handle the communication with the datastore.

Package: SyncMl
Author: Karsten Fourmont karsten@horde.org
Author: Anthony Mills amills@pyramid6.com
Todo::

Main Todos: - ensure that no server data is written for Horde_SyncMl::ALERT_ONE_WAY_FROM_SERVER even when client sends data (security!) - consinstant naming of clientSyncDB (currently called targetLocURI, db or synctype) - tackle the AddReplace issue: when a Replace is issued (i.e. during SlowSync) the server should first check if the entry already exists. Like: does a calendar entry with the same timeframe, same subject and location exist. If so, the replace should replace this value rather than create a new one as a duplicate.

Copyright 2003-2012 Horde LLC (http://www.horde.org/)

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


Located at Horde/SyncMl/ContentHandler.php
Methods summary
public
# __construct( )
public
# process( string $request, string $contentType, string $respURI = null )

Here's were all the processing takes place: gets the SyncML request data and returns a SyncML response. The only thing that needs to be in place before invoking this public function is a working backend.

Here's were all the processing takes place: gets the SyncML request data and returns a SyncML response. The only thing that needs to be in place before invoking this public function is a working backend.

Parameters

$request
The raw request string.
$contentType
<p>The MIME content type of the request. Should be either application/vnd.syncml or application/vnd.syncml+wbxml.</p>
$respURI
<p>The url of the server endpoint. Will be returned in the RespURI element.</p>
public string
# getOutput( )

Returns the XML|WBXML output once processing is finished.

Returns the XML|WBXML output once processing is finished.

Returns

string
The XML or WBXML output data.
public
# startElement( mixed $uri, mixed $element, mixed $attrs )

Callback public function called by WBXML parser.

Callback public function called by WBXML parser.

public
# endElement( mixed $uri, mixed $element )

Callback public function called by WBXML parser.

Callback public function called by WBXML parser.

public
# characters( mixed $str )

Callback public function called by WBXML parser.

Callback public function called by WBXML parser.

public
# handleHeader( mixed & $hdr )

Handles the header logic.

Handles the header logic.

Invoked after header is parsed.

public
# handleCommand( mixed & $cmd )

Processes one command after it has been completely parsed.

Processes one command after it has been completely parsed.

Invoked after a command is parsed.

public
# handleEnd( )

Finishes the response.

Finishes the response.

Invoked after complete message is parsed.

Properties summary
public boolean $debug
# false
API documentation generated by ApiGen