Hi all, The changeable framework is our friend but can potentialy lead to networks of listeners being allocated for events that can never be fired. I propose that we add a method to Changeable to allow introspection of properties that will never change, and update ChangeSupport so that it can manage these unmodifiable propperties for you (including dropping useless listeners silently). This fits with the "if you can't tell that it happened, it didn't" philosopy of the current event system quite nicely.
The changes would be: Changeable: // this change type and all descendants there-of can never under // any circumstance be thrown by this instance // // this is not a temporarily locked value (e.g. by adding // a veto everything listener) boolean isUnmodifiable(ChangeType ct); ChangeSupport: isUnmodifiable convenience implementation // new ChangeSupport that can never raise this set of event types ChangeSupport(Set unmodifiableChangeTypes); // modify add/remove listener to check types against isUnmodifiable // and silently not register listeners Scream now or for ever hold your peace. Matthew ps this will not be back-ported to the current release branch _______________________________________________ Biojava-l mailing list - [EMAIL PROTECTED] http://biojava.org/mailman/listinfo/biojava-l