Beispiel #1
0
 def _call(self, funcname, args, kwargs):
     seq = self.seq.next()
     data = self.pack((seq, funcname, args, kwargs))
     yield self.transport.send(data)
     dfr = ReactorDeferred(self.reactor)
     self.replies[seq] = dfr
     rreturn(dfr)
Beispiel #2
0
 def connect(cls, reactor, host, port):
     trns = yield reactor.net.connect_tcp(host, port)
     rreturn(cls(trns))
Beispiel #3
0
 def dispatch(self, funcname, args, kwargs):
     func = getattr(self, "exposed_%s" % (funcname,))
     res = yield func(*args, **kwargs)
     rreturn(res)
Beispiel #4
0
 def call(self, funcname, *args, **kwargs):
     dfr = yield self._call(funcname, args, kwargs)
     obj = yield dfr
     rreturn(obj)