[Moin-devel] CVS: MoinMoin wikirpc.py,NONE,1.1 cgimain.py,1.53,1.54
J?rgen Hermann
jhermann at users.sourceforge.net
Wed May 8 18:55:02 EDT 2002
Update of /cvsroot/moin/MoinMoin
In directory usw-pr-cvs1:/tmp/cvs-serv1510/MoinMoin
Modified Files:
cgimain.py
Added Files:
wikirpc.py
Log Message:
XMLRPC skeleton added
--- NEW FILE: wikirpc.py ---
"""
MoinMoin - XMLRPC Interface
Copyright (c) 2002 by Jürgen Hermann <jh at web.de>
All rights reserved, see COPYING for details.
$Id: wikirpc.py,v 1.1 2002/05/09 01:54:40 jhermann Exp $
"""
import sys
from MoinMoin import webapi
from MoinMoin.support import xmlrpclib
def xmlrpc(request):
# read request
data = sys.stdin.read() #int(self.headers["content-length"]))
if 0:
webapi.http_headers(request, [
"Content-Type: text/plain",
"Content-Length: %d" % len(data),
])
sys.stdout.write(data)
return
params, method = xmlrpclib.loads(data)
# generate response
try:
response = (method, params)
# wrap response in a singleton tuple
response = (response,)
except:
# report exception back to server
response = xmlrpclib.dumps(
xmlrpclib.Fault(1, "%s:%s" % (sys.exc_type, sys.exc_value))
)
else:
response = xmlrpclib.dumps(response, methodresponse=1)
webapi.http_headers(request, [
"Content-Type: text/xml",
"Content-Length: %d" % len(response),
])
sys.stdout.write(response)
sys.stdout.flush()
Index: cgimain.py
===================================================================
RCS file: /cvsroot/moin/MoinMoin/cgimain.py,v
retrieving revision 1.53
retrieving revision 1.54
diff -C2 -r1.53 -r1.54
*** cgimain.py 24 Apr 2002 20:11:21 -0000 1.53
--- cgimain.py 9 May 2002 01:54:40 -0000 1.54
***************
*** 120,123 ****
--- 120,128 ----
# sys.stderr.write(" %s = '%s'\n" % (key, os.environ[key]))
+ if os.environ.get('QUERY_STRING') == 'action=xmlrpc':
+ from MoinMoin.wikirpc import xmlrpc
+ xmlrpc(request)
+ return request
+
# parse request data
try:
More information about the Moin-devel
mailing list