summaryrefslogtreecommitdiffstats
path: root/Doc/lib/libdocxmlrpc.tex
blob: 0dd4c6d700f492b9421328532e864a6c5e5da7ac (plain)
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
\section{\module{DocXMLRPCServer} ---
         Self-documenting XML-RPC server}

\declaremodule{standard}{DocXMLRPCServer}
\modulesynopsis{Self-documenting XML-RPC server implementation.}
\moduleauthor{Brian Quinlan}{brianq@activestate.com}
\sectionauthor{Brian Quinlan}{brianq@activestate.com}

\versionadded{2.3}

The \module{DocXMLRPCServer} module extends the classes found in
\module{SimpleXMLRPCServer} to serve HTML documentation in response to
HTTP GET requests. Servers can either be free standing, using
\class{DocXMLRPCServer}, or embedded in a CGI environment, using
\class{DocCGIXMLRPCRequestHandler}.

\begin{classdesc}{DocXMLRPCServer}{addr\optional{,
                                   requestHandler\optional{,
			                       logRequests\optional{,
                                   allow_none\optional{, 
                                   encoding\optional{,
                                   bind_and_activate}}}}}}

Create a new server instance. All parameters have the same meaning as
for \class{SimpleXMLRPCServer.SimpleXMLRPCServer};
\var{requestHandler} defaults to \class{DocXMLRPCRequestHandler}.

\end{classdesc}

\begin{classdesc}{DocCGIXMLRPCRequestHandler}{}

Create a new instance to handle XML-RPC requests in a CGI environment.

\end{classdesc}

\begin{classdesc}{DocXMLRPCRequestHandler}{}

Create a new request handler instance. This request handler supports
XML-RPC POST requests, documentation GET requests, and modifies
logging so that the \var{logRequests} parameter to the
\class{DocXMLRPCServer} constructor parameter is honored.

\end{classdesc}

\subsection{DocXMLRPCServer Objects \label{doc-xmlrpc-servers}}

The \class{DocXMLRPCServer} class is derived from
\class{SimpleXMLRPCServer.SimpleXMLRPCServer} and provides a means of
creating self-documenting, stand alone XML-RPC servers. HTTP POST
requests are handled as XML-RPC method calls. HTTP GET requests are
handled by generating pydoc-style HTML documentation. This allows a
server to provide its own web-based documentation.

\begin{methoddesc}{set_server_title}{server_title}

Set the title used in the generated HTML documentation. This title
will be used inside the HTML "title" element.

\end{methoddesc}

\begin{methoddesc}{set_server_name}{server_name}

Set the name used in the generated HTML documentation. This name will
appear at the top of the generated documentation inside a "h1"
element.

\end{methoddesc}


\begin{methoddesc}{set_server_documentation}{server_documentation}

Set the description used in the generated HTML documentation. This
description will appear as a paragraph, below the server name, in the
documentation.

\end{methoddesc}

\subsection{DocCGIXMLRPCRequestHandler}

The \class{DocCGIXMLRPCRequestHandler} class is derived from
\class{SimpleXMLRPCServer.CGIXMLRPCRequestHandler} and provides a means
of creating self-documenting, XML-RPC CGI scripts. HTTP POST requests
are handled as XML-RPC method calls. HTTP GET requests are handled by
generating pydoc-style HTML documentation. This allows a server to
provide its own web-based documentation.

\begin{methoddesc}{set_server_title}{server_title}

Set the title used in the generated HTML documentation. This title
will be used inside the HTML "title" element.

\end{methoddesc}

\begin{methoddesc}{set_server_name}{server_name}

Set the name used in the generated HTML documentation. This name will
appear at the top of the generated documentation inside a "h1"
element.

\end{methoddesc}


\begin{methoddesc}{set_server_documentation}{server_documentation}

Set the description used in the generated HTML documentation. This
description will appear as a paragraph, below the server name, in the
documentation.

\end{methoddesc}