You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@beehive.apache.org by Ken Tam <ke...@bea.com> on 2004/08/30 10:02:00 UTC

Extensibility on @ControlExtension vs @ControlImplementation

Looking at the controls examples, it seems that extensibility should be
a property of the public interface instead of the implementation.  Ie,
the public interface should extend
org.apache.beehive.controls.api.bean.Extensible, and the implementation
should be required to implement Extensible.invoke() because it extends
the public interface.  Otherwise, one implication is that alternative
implementations of a control interface could choose to not support
extensibility; that ought to be a property of the public contract that
implementors can't choose to retract.  It should then be an error to
declare an @ControlExtension with an inheritance heirarchy that doesn't
include an @ControlInterface that extended Extensible.