1 :mod:`DocXMLRPCServer` --- Self-documenting XML-RPC server 2 ========================================================== 3 4 .. module:: DocXMLRPCServer 5 :synopsis: Self-documenting XML-RPC server implementation. 6 .. moduleauthor:: Brian Quinlan <brianq (a] activestate.com> 7 .. sectionauthor:: Brian Quinlan <brianq (a] activestate.com> 8 9 .. note:: 10 The :mod:`DocXMLRPCServer` module has been merged into :mod:`xmlrpc.server` 11 in Python 3. The :term:`2to3` tool will automatically adapt imports when 12 converting your sources to Python 3. 13 14 15 .. versionadded:: 2.3 16 17 The :mod:`DocXMLRPCServer` module extends the classes found in 18 :mod:`SimpleXMLRPCServer` to serve HTML documentation in response to HTTP GET 19 requests. Servers can either be free standing, using :class:`~DocXMLRPCServer.DocXMLRPCServer`, 20 or embedded in a CGI environment, using :class:`DocCGIXMLRPCRequestHandler`. 21 22 23 .. class:: DocXMLRPCServer(addr[, requestHandler[, logRequests[, allow_none[, encoding[, bind_and_activate]]]]]) 24 25 Create a new server instance. All parameters have the same meaning as for 26 :class:`SimpleXMLRPCServer.SimpleXMLRPCServer`; *requestHandler* defaults to 27 :class:`DocXMLRPCRequestHandler`. 28 29 30 .. class:: DocCGIXMLRPCRequestHandler() 31 32 Create a new instance to handle XML-RPC requests in a CGI environment. 33 34 35 .. class:: DocXMLRPCRequestHandler() 36 37 Create a new request handler instance. This request handler supports XML-RPC 38 POST requests, documentation GET requests, and modifies logging so that the 39 *logRequests* parameter to the :class:`~DocXMLRPCServer.DocXMLRPCServer` constructor parameter is 40 honored. 41 42 43 .. _doc-xmlrpc-servers: 44 45 DocXMLRPCServer Objects 46 ----------------------- 47 48 The :class:`~DocXMLRPCServer.DocXMLRPCServer` class is derived from 49 :class:`SimpleXMLRPCServer.SimpleXMLRPCServer` and provides a means of creating 50 self-documenting, stand alone XML-RPC servers. HTTP POST requests are handled as 51 XML-RPC method calls. HTTP GET requests are handled by generating pydoc-style 52 HTML documentation. This allows a server to provide its own web-based 53 documentation. 54 55 56 .. method:: DocXMLRPCServer.set_server_title(server_title) 57 58 Set the title used in the generated HTML documentation. This title will be used 59 inside the HTML "title" element. 60 61 62 .. method:: DocXMLRPCServer.set_server_name(server_name) 63 64 Set the name used in the generated HTML documentation. This name will appear at 65 the top of the generated documentation inside a "h1" element. 66 67 68 .. method:: DocXMLRPCServer.set_server_documentation(server_documentation) 69 70 Set the description used in the generated HTML documentation. This description 71 will appear as a paragraph, below the server name, in the documentation. 72 73 74 DocCGIXMLRPCRequestHandler 75 -------------------------- 76 77 The :class:`DocCGIXMLRPCRequestHandler` class is derived from 78 :class:`SimpleXMLRPCServer.CGIXMLRPCRequestHandler` and provides a means of 79 creating self-documenting, XML-RPC CGI scripts. HTTP POST requests are handled 80 as XML-RPC method calls. HTTP GET requests are handled by generating pydoc-style 81 HTML documentation. This allows a server to provide its own web-based 82 documentation. 83 84 85 .. method:: DocCGIXMLRPCRequestHandler.set_server_title(server_title) 86 87 Set the title used in the generated HTML documentation. This title will be used 88 inside the HTML "title" element. 89 90 91 .. method:: DocCGIXMLRPCRequestHandler.set_server_name(server_name) 92 93 Set the name used in the generated HTML documentation. This name will appear at 94 the top of the generated documentation inside a "h1" element. 95 96 97 .. method:: DocCGIXMLRPCRequestHandler.set_server_documentation(server_documentation) 98 99 Set the description used in the generated HTML documentation. This description 100 will appear as a paragraph, below the server name, in the documentation. 101 102