Prev | Index | Next

Deferred example

def done(r): print "all done"
def error(e):
    e.trap(ValueError)
    print "something wrong"
def gotResult(r):
    if r:
        print "joe is online"
def loggedIn(r, protocol):
    d = protocol.isonline("joe")
    return d.addCallback(gotResult)
def check(protocol):
    d = protocol.login("itamar")
    d.addCallback(loggedIn, protocol)
    d.addErrback(error).addCallback(done)
    return d