Documentation

Horde_Rpc_Xmlrpc extends Horde_Rpc
in package

The Horde_Rpc_xmlrpc class provides an XMLRPC implementation of the Horde RPC system.

Copyright 2002-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
author

Jan Schneider jan@horde.org

Table of Contents

$_server  : resource
Resource handler for the XMLRPC server.
$_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
XMLRPC server constructor
_dispatcher()  : mixed
Will be registered as the handler for all available methods and will call the appropriate function through the registry.
authorize()  : bool
Check authentication. Different backends may handle authentication in different ways. The base class implementation checks for HTTP Authentication against the Horde auth setup.
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 XMLRPC request and sends it to the XMLRPC server.
sendOutput()  : void
Send the output back to the client

Properties

$_server

Resource handler for the XMLRPC server.

public resource $_server

$_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()

XMLRPC server constructor

public __construct(mixed $request[, mixed $params = array() ]) : mixed
Parameters
$request : mixed

The request object.

$params : mixed = array()

A hash containing any additional configuration or connection parameters a subclass might need.

Tags
access

private

Return values
mixed

_dispatcher()

Will be registered as the handler for all available methods and will call the appropriate function through the registry.

public _dispatcher(string $method, array<string|int, mixed> $params, mixed $data) : mixed
Parameters
$method : string

The name of the method called by the RPC request.

$params : array<string|int, mixed>

The passed parameters.

$data : mixed

Unknown.

Tags
access

private

Return values
mixed

The result of the called registry method.

authorize()

Check authentication. Different backends may handle authentication in different ways. The base class implementation checks for HTTP Authentication against the Horde auth setup.

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(mixed $request) : string
Parameters
$request : mixed
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 XMLRPC request and sends it to the XMLRPC server.

public static request(string|Horde_Url $url, string $method, Horde_Http_Client $client[, array<string|int, mixed> $params = null ][, mixed $unused = null ]) : mixed

This statically called method is actually the XMLRPC client.

Parameters
$url : string|Horde_Url

The path to the XMLRPC server on the called host.

$method : string

The method to call.

$client : Horde_Http_Client

The transport client

$params : array<string|int, mixed> = null

A hash containing any necessary parameters for the method call.

$unused : mixed = null

This param is only here to be compatible with Horde_Rpc, since that has $driver as the first param.

Tags
throws
Horde_Rpc_Exception
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.

Return values
void

Search results