[ZODB-Dev] Re: ZEO signal feature

Christian Reis kiko@async.com.br
Wed, 25 Sep 2002 12:00:45 -0300


On Tue, Sep 24, 2002 at 11:21:49AM -0400, Jeremy Hylton wrote:
> >>>>> "TD" == Toby Dickenson <tdickenson@geminidataloggers.com> writes:
> 
>   TD> I think of it as a mechanism to extend the Storage interface.
> 
>   TD> (RPC is a detail of how ZEO happens to implement the signal
>   TD> method)
> 
> Wouldn't it be more natural to extend the storage interface
> dynamically by adding new methods?  The interface has evolved over
> time using this approach, e.g. transactionalUndo().  The (optional) ZRS
> methods like restore(), lastTransaction(), etc. are also implemented
> this way.

I second this. Could this also allow for authentication hooks?

>   TD> 4. There is no need for a storage to declare the names of all
>   TD> its extension methods in advance.
> 
> I agree that it's helpful if extension methods aren't a static
> property of the code.

We use signals extensively in GTK+ (and, thus, PyGTK). It is a very
convenient aspect of it, because you can implement notification and keep
things syncronized to a certain extent. But keep in mind that GTK+ (and
most UI toolkits) uses a mainloop that takes control away from the
application, which means signals are the only way to get it to do
anything useful, anyway.

Take care,
--
Christian Reis, Senior Engineer, Async Open Source, Brazil.
http://async.com.br/~kiko/ | [+55 16] 261 2331 | NMFL