[Twisted-web] simple example with xmlrpc server
exarkun at twistedmatrix.com
exarkun at twistedmatrix.com
Sat Apr 16 17:41:13 EDT 2011
On 09:24 pm, bdfy at mail.ru wrote:
>
>I have simple example with xmlrpc server from standart python:
>
>from SimpleXMLRPCServer import SimpleXMLRPCServer
>from time import sleep
>import threading,time
>
>class Test(threading.Thread):
> def __init__(self):
> threading.Thread.__init__(self)
> self.test1 = 0
> def test(self):
> return self.test1
>
> def run(self):
> while(1):
> time.sleep(1)
> self.test1 = self.test1 + 1
>
>ts = Test()
>ts.start()
>server = SimpleXMLRPCServer(("localhost",8888))
>server.register_instance(ts)
>server.serve_forever()
>
>how it will look on Twisted ?
Something like this:
from twisted.internet import reactor
from twisted.internet.task import LoopingCall
from twisted.web.xmlrpc import XMLRPC
from twisted.web.server import Site
class Counter(XMLRPC):
def __init__(self):
XMLRPC.__init__(self)
self.value = 0
LoopingCall(self._update).start(1, now=False)
def _update(self):
self.value += 1
def xmlrpc_test(self):
return self.value
factory = Site(Counter())
reactor.listenTCP(8888, factory, interface="localhost")
reactor.run()
Jean-Paul
More information about the Twisted-web
mailing list