Support Joomla!

Joomla! 1.5 Documentation

Packages

Package: Unknown

Developer Network License

The Joomla! Developer Network content is © copyright 2006 by the individual contributors and can be used in accordance with the Creative Commons License, Attribution- NonCommercial- ShareAlike 2.5

 Class xmlrpc_client

Description

Located in /phpxmlrpc/xmlrpc.php (line 719)

Class xmlrpc_client
Variable Summary
Method Summary
Constructor xmlrpc_client xmlrpc_client (string $path, [string $server = ''], [integer $port = ''], [string $method = ''])
Method void multicall (array $msgs, [integer $timeout = 0], [string $method = 'http'], [boolen $fallback = true])
Method void &send (mixed $msg, [integer $timeout = 0], [string $method = ''])
Method void setAcceptedCompression (string $compmethod)
Method void setCaCertificate ( $cacert, [ $is_dir = false])
Method void setCertificate ( $cert,  $certpass)
Method void setCookie (string $name, [string $value = ''], [string $path = ''], [string $domain = ''], [string $port = null])
Method void setCredentials ( $u,  $p, [ $t = 1])
Method void setDebug ( $in)
Method void setKey ( $key,  $keypass)
Method void setProxy (string $proxyhost, string $proxyport, [string $proxyusername = ''], [string $proxypassword = ''], [int $proxyauthtype = 1])
Method void setRequestCompression (string $compmethod)
Method void setSSLVerifyHost ( $i)
Method void setSSLVerifyPeer ( $i)
Variables
mixed $accepted_charset_encodings = array() (line 769)
mixed $accepted_compression = array() (line 755)

List of http compression methods accepted by the client for responses.

NB: PHP supports deflate, gzip compressions out of the box if compiled w. zlib

NNB: you can set it to any non-empty array for HTTP11 and HTTPS, since in those cases it will be up to CURL to decide the compression methods it supports. You might check for the presence of 'zlib' in the output of curl_version() to determine wheter compression is supported or not

mixed $authtype = 1 (line 730)
mixed $cacert = '' (line 733)
mixed $cacertdir = '' (line 734)
mixed $cert = '' (line 731)
mixed $certpass = '' (line 732)
mixed $cookies = array() (line 745)
mixed $debug (line 727)
mixed $errno (line 725)
mixed $errstr (line 726)
mixed $keepalive = false (line 767)
mixed $key = '' (line 735)
mixed $keypass = '' (line 736)
mixed $method = 'http' (line 724)
mixed $no_multicall = false (line 739)
mixed $password = '' (line 729)
mixed $path (line 721)
mixed $port (line 723)
mixed $proxy = '' (line 740)
mixed $proxyport (line 741)
mixed $proxy_authtype = 1 (line 744)
mixed $proxy_pass = '' (line 743)
mixed $proxy_user = '' (line 742)
mixed $request_charset_encoding = '' (line 771)
mixed $request_compression = '' (line 760)

Name of compression scheme to be used for sending requests.

Either null, gzip or deflate

mixed $return_type = 'xmlrpcvals' (line 776)

Decides the content of xmlrpcresp objects returned by calls to send()

valid strings are 'xmlrpcvals', 'phpvals' or 'xml'

mixed $server (line 722)
mixed $username = '' (line 728)
mixed $verifyhost = 1 (line 738)
mixed $verifypeer = true (line 737)
mixed $xmlrpc_curl_handle = null (line 765)

CURL handle: used for keep-alive connections (PHP 4.3.8 up, see:

http://curl.haxx.se/docs/faq.html#7.3)

Methods
Constructor xmlrpc_client (line 784)
xmlrpc_client xmlrpc_client (string $path, [string $server = ''], [integer $port = ''], [string $method = ''])
  • string $path: either the complete server URL or the PATH part of the xmlrc server URL, e.g. /xmlrpc/server.php
  • string $server: the server name / ip address
  • integer $port: the port the server is listening on, defaults to 80 or 443 depending on protocol used
  • string $method: the http protocol variant: defaults to 'http', 'https' and 'http11' can be used if CURL is installed
multicall (line 1581)

Send an array of request messages and return an array of responses.

Unless $this->no_multicall has been set to true, it will try first to use one single xmlrpc call to server method system.multicall, and revert to sending many successive calls in case of failure. This failure is also stored in $this->no_multicall for subsequent calls. Unfortunately, there is no server error code universally used to denote the fact that multicall is unsupported, so there is no way to reliably distinguish between that and a temporary failure. If you are sure that server supports multicall and do not want to fallback to using many single calls, set the fourth parameter to FALSE.

NB: trying to shoehorn extra functionality into existing syntax has resulted in pretty much convoluted code...

  • access: public
void multicall (array $msgs, integer $timeout, [string $method = 'http'], [boolen $fallback = true])
  • array $msgs: an array of xmlrpcmsg objects
  • integer $timeout: connection timeout (in seconds)
  • string $method: the http protocol variant to be used
  • boolen $fallback: fallback When true, upon receiveing an error during multicall, multiple single calls will be attempted
send (line 1022)

Send an xmlrpc request

void &send (mixed $msg, integer $timeout, [string $method = ''])
  • mixed $msg: The message object, or an array of messages for using multicall, or the complete xml representation of a request
  • integer $timeout: Connection timeout, in seconds, If unspecified, a platform specific timeout will apply
  • string $method: if left unspecified, the http protocol chosen during creation of the object will be used
setAcceptedCompression (line 967)

Enables/disables reception of compressed xmlrpc responses.

Note that enabling reception of compressed responses merely adds some standard http headers to xmlrpc requests. It is up to the xmlrpc server to return compressed responses when receiving such requests.

  • access: public
void setAcceptedCompression (string $compmethod)
  • string $compmethod: either 'gzip', 'deflate', 'any' or ''
setCaCertificate (line 898)
void setCaCertificate ( $cacert, [ $is_dir = false])
  • $cacert
  • $is_dir
setCertificate (line 885)
void setCertificate ( $cert,  $certpass)
  • $cert
  • $certpass
setCookie (line 1000)

Adds a cookie to list of cookies that will be sent to server.

NB: setting any param but name and value will turn the cookie into a 'version 1' cookie: do not do it unless you know what you are doing

  • todo: check correctness of urlencoding cookie value (copied from php way of doing it...)
  • access: public
void setCookie (string $name, [string $value = ''], [string $path = ''], [string $domain = ''], [string $port = null])
  • string $name
  • string $value
  • string $path
  • string $domain
  • string $port
setCredentials (line 872)
void setCredentials ( $u,  $p, [ $t = 1])
  • $u
  • $p
  • $t
setDebug (line 860)
void setDebug ( $in)
  • $in
setKey (line 917)
void setKey ( $key,  $keypass)
  • $key
  • $keypass
setProxy (line 950)

Set proxy info

  • access: public
void setProxy (string $proxyhost, string $proxyport, [string $proxyusername = ''], [string $proxypassword = ''], [int $proxyauthtype = 1])
  • string $proxyhost
  • string $proxyport: Defaults to 8080 for HTTP and 443 for HTTPS
  • string $proxyusername: Leave blank if proxy has public access
  • string $proxypassword: Leave blank if proxy has public access
  • int $proxyauthtype: set to constant CURLAUTH_MTLM to use NTLM auth with proxy
setRequestCompression (line 982)

Enables/disables http compression of xmlrpc request.

Take care when sending compressed requests: servers might not support them (and automatic fallback to uncompressed requests is not yet implemented)

  • access: public
void setRequestCompression (string $compmethod)
  • string $compmethod: either 'gzip', 'deflate' or ''
setSSLVerifyHost (line 935)
void setSSLVerifyHost ( $i)
  • $i
setSSLVerifyPeer (line 927)
void setSSLVerifyPeer ( $i)
  • $i

Documentation generated on Mon, 05 Mar 2007 21:32:41 +0000 by phpDocumentor 1.3.1