I've done various refactorings. What is now checked in is very powerful and pluggable, but has a simple API.
ObservedCollection.decorate(Collection, Object) where Object is a listener, handler or other listening type object. The listeners are more specific too. Stephen ----- Original Message ----- From: "Stephen Colebourne" <[EMAIL PROTECTED]> To: "Jakarta Commons Developers List" <[EMAIL PROTECTED]> Sent: Thursday, August 28, 2003 10:28 PM Subject: Re: [collections] ObservedCollection checkin > This one is tough. The internals of the Standard event mechanism currently > rely on one listener for both. It can also get complicated with a single > addListener method trying to figure out what has been added. Plus there are > the masks to consider. > > Merging the two into one made implementation easier. But if the user API > feels wrong then it could be changed. > > Stephen > > ----- Original Message ----- > From: "Michael Heuer" <[EMAIL PROTECTED]> > > What about > > > > StandardModificationListener > > { > > void modificationOccurred(Evt); > > } > > VetoableModificationListener > > { > > void modificationOccurring(Evt) throws ModificationVetoedException; > > } > > > > and > > > > ObservedCollection > > { > > static ObservedCollection decorate(Collection coll, > > VetoableModificationListener l) {} > > static ObservedCollection decorate(Collection coll, > > StandardModificationListener l) {} > > } > > > > instead of > > > > StandardModificationListener > > { > > void modificationOccurred(Evt); > > void modificationOccurring(Evt) throws ModificationVetoedException; > > } > > > > and > > > > ObservedCollection > > { > > static ObservedCollection decorate(Collection coll, > > StandardModificationListener l) {} > > static ObservedCollection decoratePostEventsOnly(Collection coll, > > StandardModificationListener l) {} > > } > > > > ? > > > > michael > > > > On Thu, 28 Aug 2003, Stephen Colebourne wrote: > > > > > First part of ObservedCollection checked in, allowing an event sending > > > wrapper to be written around a collection. > > > > > > TODO: > > > - Validate that the design is OK > > > - Implement ObservedList subList > > > - Test List iterators > > > - Add Bag, SortedSet, SortedBag implementations > > > - Add Fast event mechansim > > > - Add Rich event mechanism > > > > > > Stephen > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]