[Zope-dev] ZPatterns -- trigger add events not working

Steve Alexander steve@cat-box.net
Wed, 12 Jul 2000 17:51:03 +0100


"Phillip J. Eby" wrote:
> 
> It could cause a problem if the object is added after any other sort of
> change from the point of view of the Agent.  The Agent would view it as
> having been added, when in fact it is actually merely changed.  I have not,
> however, been able to think of any scenario where this condition could
> occur unless the DataManager containing the Agent was itself being
> reconfigured during the same transaction as the other events, which is an
> "all bets are off, hold onto your butts" type proposition anyhow.
> 
> My guess is that your patch will probably work fine.  I've checked it in
> locally and will incorporate it into a release soon.

The other approach would be to hold a list of the events that have
happened during a transaction, and have a simple set of rules (regular
grammar, implemented as a state machine, or regular expression) for
condensing a list of events into the overall description of the event.

I just made this regular grammar up without thinking particularly hard
about them. The letters D, C, A stand for Delete, Change and Add
respectively. "C*" means zero or more repeated "C".

C*    : C
CA    : A
DA    : C
AC    : A
C*D   : D
AD    : D


Then again, if you can't think of any but the most unlikely exceptions
to the current simple algorithm, I'll go with that :-)

--
Steve Alexander
Software Engineer
Cat-Box limited
http://www.cat-box.net