/usr/share/doc/libqxmlrpc-doc/html/index.html is in libqxmlrpc-doc 0.0.svn6-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>QXmlRPC: QXmlRPC Documentation</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td style="padding-left: 0.5em;">
<div id="projectname">QXmlRPC <span id="projectnumber">1.1</span></div>
</td>
</tr>
</tbody>
</table>
</div>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li class="current"><a href="index.html"><span>Main Page</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="headertitle">
<div class="title">QXmlRPC Documentation </div> </div>
</div>
<div class="contents">
<div class="textblock"><h2><a class="anchor" id="intro_sec"></a>
Introduction</h2>
<p>The QXML-RPC library is a full Qt4 based implementation of XML-RPC ( <a href="http://www.xmlrpc.com/">http://www.xmlrpc.com/</a> ) protocol.</p>
<p>It provides an easy way to construct, send and receive XML-RPC messages on the client side, and process XML-RPC messages on the server side. It also supports XML-RPC introspection ( <a href="http://scripts.incutio.com/xmlrpc/introspection.html">http://scripts.incutio.com/xmlrpc/introspection.html</a> ) to provide information about methods of the xmlrpc server to clients and allows to perform method name and parameters type checks on the server before calling user implemented methods code.</p>
<p>To pass parameters of XML-RPC request, an QVariant based <a class="el" href="classxmlrpc_1_1Variant.html" title="The xmlrpc::Variant class acts like a union for XML-RPC variables types.">xmlrpc::Variant</a> class is used. It provides deserialization and serialization from/to QDomElement, according to XML-RPC specification. It also restricts set of QVariant types to types accepted in XML-RPC protocol. This allows to perform compile time type checks and avoid of some bugs.</p>
<p>This project is inspired but not based on the QuteXR library.</p>
<h2><a class="anchor" id="client_subsec"></a>
Building a XML-RPC client</h2>
<p>Just create a <a class="el" href="classxmlrpc_1_1Client.html" title="The xmlrpc::Client class provides an implementation of the XML-RPC client.">xmlrpc::Client</a> instance, set the XML-RPC server with <a class="el" href="classxmlrpc_1_1Client.html#a05fab1c552a55c4ad1011339a657a712">xmlrpc::Client::setHost()</a> and if necessary with <a class="el" href="classxmlrpc_1_1Client.html#adf55156e6b28d48e9f10d25205bb1f7c">xmlrpc::Client::setProxy()</a> and <a class="el" href="classxmlrpc_1_1Client.html#a88040741362dd9fdaa7240181be9b1f6">xmlrpc::Client::setUser()</a>.</p>
<div class="fragment"><pre class="fragment"> client = <span class="keyword">new</span> <a class="code" href="classxmlrpc_1_1Client.html" title="The xmlrpc::Client class provides an implementation of the XML-RPC client.">xmlrpc::Client</a>(<span class="keyword">this</span>);
connect( client, SIGNAL(done( <span class="keywordtype">int</span>, QVariant )),
<span class="keyword">this</span>, SLOT(processReturnValue( <span class="keywordtype">int</span>, QVariant )) );
connect( client, SIGNAL(failed( <span class="keywordtype">int</span>, <span class="keywordtype">int</span>, QString )),
<span class="keyword">this</span>, SLOT(processFault( <span class="keywordtype">int</span>, <span class="keywordtype">int</span>, QString )) );
client->setHost( <span class="stringliteral">"localhost"</span>, 7777 );
<span class="keywordtype">int</span> requestId = client->request( <span class="stringliteral">"sum"</span>, x, y )
</pre></div><p>After the request is finished, done() or failed() signal will be emited with the request id and return value or fault information.</p>
<p>For more information check <a class="el" href="classxmlrpc_1_1Client.html" title="The xmlrpc::Client class provides an implementation of the XML-RPC client.">xmlrpc::Client</a> class documentation and client example stored in examples/client directory.</p>
<h2><a class="anchor" id="server_sec"></a>
Building a standalone XML-RPC server</h2>
<p>To build a standalone XML-RPC server, just create a <a class="el" href="classxmlrpc_1_1Server.html" title="The xmlrpc::Server class provides an implementation of the XML-RPC server.">xmlrpc::Server</a> instance and call <a class="el" href="classxmlrpc_1_1Server.html#a3362783f581d166904de9dbb6798de32">xmlrpc::Server::listen()</a> to listen for requests on specified port.</p>
<p>You also can register provided methods with <a class="el" href="classxmlrpc_1_1Server.html#a0f30b31f8844a10dc9b82c125a64a2d3">xmlrpc::Server::registerMethod()</a> call. In this case the server will perform method name, parameters and return value type checks before emiting of incomingRequest() signal. It will also provide information about provided methods to clients.</p>
<p>Server instance will emit incomingRequest() signal, with the method name and parameters list. After the corresponding method is processed, Server::sendReturnValue() or Server::sendFault() must be called.</p>
<h2><a class="anchor" id="server_cgi_sec"></a>
Building non standalone XML-RPC server</h2>
<p>If the standalone server is not acceptable, for example in CGI like environment, the request can be parsed with <a class="el" href="classxmlrpc_1_1Request.html" title="The xmlrpc::Request class contains XmlRPC request information.">xmlrpc::Request</a> class, processed, and result ( the return value or fault information ) encoded with <a class="el" href="classxmlrpc_1_1Response.html" title="The xmlrpc::Response class contains XmlRPC response information.">xmlrpc::Response</a> class. The <a class="el" href="classxmlrpc_1_1ServerIntrospection.html" title="ServerIntrospection class implements introspection functionality to the xmlrpc::Server.">xmlrpc::ServerIntrospection</a> class can optionaly be used to perform method names and types checks.</p>
<h2><a class="anchor" id="examples_sec"></a>
Examples</h2>
<p>For examples of QXmlRPC based XML-RPC client and server check examples/client and examples/server directories.</p>
<p>Similar python based implementations are stored in test/pyclient and test/pyserver directories. </p>
</div></div>
<hr class="footer"/><address class="footer"><small>Generated on Wed Jul 27 2011 22:17:17 for QXmlRPC by 
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>
|