On Tue, 18 Sep 2007 13:39:23 +0200, Manlio Perillo <[EMAIL PROTECTED]> wrote:
> [snip]
>
>1) should be very simple to implement, and it is easy to understand how
>to use it.
>
>As an example, we can use some API that calls a callback function when
>the result is available:
>conn.execute("SELECT * FROM test", query_callback)
>
>def query_callback(row):
> write(row[...])
>
>
>2) Can be implemented in mod_wsgi, however my problem is that I can't
>figure out how the application can yield some data available after a
>callback is called.
>
I think you figured it out already, actually:
def app(...):
conn.execute("SELECT * FROM test", query_callback)
# indicate not-done-yet, however
def query_callback(...):
write(...)
conn.execute("SELECT * FROM test2", another_callback)
def another_callback(...):
write(...)
finish()
If you can have one callback, then there's no reason you shouldn't be
able to have an arbitrary number of callbacks.
Of course, this could also be expressed in a less error prone manner:
def app(...):
test_deferred = conn.execute("SELECT * FROM test")
test_deferred.addCallback(query_callback)
return test_deferred
def query_callback(...):
write(...)
test2_deferred = conn.execute("SELECT * FROM test2")
test2_deferred.addCallback(another_callback)
return test2_deferred
def another_callback(...):
write(...)
;)
Jean-Paul
_______________________________________________
Web-SIG mailing list
[email protected]
Web SIG: http://www.python.org/sigs/web-sig
Unsubscribe:
http://mail.python.org/mailman/options/web-sig/archive%40mail-archive.com