[Twisted-Python] Unruly Callback Code

Tommi Virtanen tv at twistedmatrix.com
Wed Aug 6 04:08:23 EDT 2003


On Tue, Aug 05, 2003 at 12:32:06PM -0600, Justin Johnson wrote:
> 		def gotObject(perspective, vobs, group, original_site, sites):
> 			d = perspective.callRemote("mkvob", vobs, group)
> 			d.addCallback(renameReplica, perspective, vobs, original_site)
> 			d.addCallback(mkRepExport, perspective, vobs, sites)
> 			d.addCallback(mkRepImport, perspective, vobs, sites)
> 			d.addErrback(log.err)
> 			d.addBoth(_stop)
> 			return d
> 
> 		# Connect to the server and start the chain of deferreds
> 		d = self.connectToServer(config.siteToServer[original_site])
> 		d.addCallback(gotObject, vobs, group, original_site, sites)
> 		reactor.run()

	I'd do stopping and error handling near reactor.run()

		def gotObject(perspective, vobs, group, original_site, sites):
			d = perspective.callRemote("mkvob", vobs, group)
			d.addCallback(renameReplica, perspective, vobs, original_site)
			d.addCallback(mkRepExport, perspective, vobs, sites)
			d.addCallback(mkRepImport, perspective, vobs, sites)
			return d

		# Connect to the server and start the chain of deferreds
		d = self.connectToServer(config.siteToServer[original_site])
		d.addCallback(gotObject, vobs, group, original_site, sites)
		d.addErrback(log.err)
		d.addBoth(_stop)
		reactor.run()

-- 
:(){ :|:&};:




More information about the Twisted-Python mailing list