Horde_Rpc_Syncml
extends Horde_Rpc
in package
The Horde_Rpc_Syncml class provides a SyncML implementation of the Horde RPC system.
Copyright 2003-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
Table of Contents
- $_logger : Horde_Log_Logger
- Logging
- $_params : array<string|int, mixed>
- All driver-specific parameters.
- $_request : Horde_Controller_Request_Http
- Request variables, cookies etc.
- $_requestMissingAuthorization : bool
- Whether we should exit if auth fails instead of requesting authorization credentials.
- $_requireAuthorization : bool
- Do we need an authenticated user?
- __construct() : mixed
- Constructor.
- authorize() : bool
- SyncML handles authentication internally, so bypass the RPC framework auth check by just returning true here.
- factory() : Horde_Rpc
- Attempts to return a concrete RPC server instance based on $driver.
- getInput() : mixed
- Get the request body input. Different RPC backends can override this to return an open stream to php://stdin, for instance - whatever is easiest to handle in the getResponse() method.
- getResponse() : string
- Sends an RPC request to the server and returns the result.
- getResponseContentType() : string
- Returns the Content-Type of the response.
- request() : mixed
- Builds an RPC request and sends it to the RPC server.
- sendOutput() : void
- Send the output back to the client
Properties
$_logger
Logging
protected
Horde_Log_Logger
$_logger
$_params
All driver-specific parameters.
protected
array<string|int, mixed>
$_params
= array()
$_request
Request variables, cookies etc.
protected
Horde_Controller_Request_Http
$_request
..
$_requestMissingAuthorization
Whether we should exit if auth fails instead of requesting authorization credentials.
protected
bool
$_requestMissingAuthorization
= \true
$_requireAuthorization
Do we need an authenticated user?
protected
bool
$_requireAuthorization
= \true
Methods
__construct()
Constructor.
public
__construct(Horde_Controller_Request_Http $request[, array<string|int, mixed> $params = array() ]) : mixed
Parameters
- $request : Horde_Controller_Request_Http
-
The request object.
- $params : array<string|int, mixed> = array()
-
A hash containing any additional configuration or connection parameters a subclass might need.
Return values
mixed —authorize()
SyncML handles authentication internally, so bypass the RPC framework auth check by just returning true here.
public
authorize() : bool
Return values
bool —Returns true if authentication is successful. Should send appropriate "not authorized" headers or other response codes/body if auth fails, and take care of exiting.
factory()
Attempts to return a concrete RPC server instance based on $driver.
public
static factory(mixed $driver, mixed $request[, array<string|int, mixed> $params = null ]) : Horde_Rpc
Parameters
- $driver : mixed
-
The type of concrete Horde_Rpc subclass to return.
- $request : mixed
- $params : array<string|int, mixed> = null
-
A hash containing any additional configuration or connection parameters a subclass might need.
Return values
Horde_Rpc —The newly created concrete Horde_Rpc server instance, or an exception if there is an error.
getInput()
Get the request body input. Different RPC backends can override this to return an open stream to php://stdin, for instance - whatever is easiest to handle in the getResponse() method.
public
getInput() : mixed
The base class implementation looks for $HTTP_RAW_POST_DATA and returns that if it's available; otherwise, it returns the contents of php://stdin.
Return values
mixed —The input - a string (default), a filehandle, etc.
getResponse()
Sends an RPC request to the server and returns the result.
public
getResponse(string $request) : string
Parameters
- $request : string
-
The raw request string.
Return values
string —The XML encoded response from the server.
getResponseContentType()
Returns the Content-Type of the response.
public
getResponseContentType() : string
Return values
string —The MIME Content-Type of the RPC response.
request()
Builds an RPC request and sends it to the RPC server.
public
static request(string $driver, string|Horde_Url $url, string $method, mixed $client[, array<string|int, mixed> $params = null ]) : mixed
This statically called method is actually the RPC client.
Parameters
- $driver : string
-
The protocol driver to use. Currently 'soap', 'xmlrpc' and 'jsonrpc' are available.
- $url : string|Horde_Url
-
The path to the RPC server on the called host.
- $method : string
-
The method to call.
- $client : mixed
-
An appropriate request client for the type of request. (Horde_Http_Request, SoapClient etc..)
- $params : array<string|int, mixed> = null
-
A hash containing any necessary parameters for the method call.
Tags
Return values
mixed —The returned result from the method
sendOutput()
Send the output back to the client
public
sendOutput(string $output) : void
Parameters
- $output : string
-
The output to send back to the client. Can be overridden in classes if needed.