All pastes #352725 Raw Edit

Miscellany

public python v1 · immutable
·published 2007-02-13 00:07 UTC
rendered paste body
#!/bin/env pythonfrom twisted.spread import pbfrom twisted.internet import reactorimport socketclass PbTester(object):    def __init__(self):        print "Starting client"    def runTests(self):        self.connect().addCallback(            lambda _: self.sayHello()).addCallback(            lambda _: self.report_load()).addCallback(             lambda _: reactor.stop()            )    def connect(self):        factory = pb.PBClientFactory()        reactor.connectTCP("localhost",8789, factory)        return factory.getRootObject().addCallback(self._connected)    def _connected(self, rootObj):        self.remote_hello = rootObj        self.remote_report_load = rootObj    def sayHello(self):        print "Calling hello"        return self.remote_hello.callRemote('hello')    def report_load(self):        loadavg_file = open("/proc/loadavg","r")        loadavg_line = loadavg_file.readline()        loadavg = loadavg_line.split()[0:3]        print "Calling report_load..."        return self.remote_report_load.callRemote('report_load',hostname,loadavg)hostname = socket.gethostname().split('.')[0]t = PbTester()t.runTests()reactor.run()