Improved semantic validation of @ControlExtension
-------------------------------------------------
Key: BEEHIVE-118
URL: http://nagoya.apache.org/jira/browse/BEEHIVE-118
Project: Beehive
Type: Bug
Components: Controls
Versions: V1Beta
Reporter: James Song
Assigned to: Kyle Marvin
Priority: Minor
Fix For: V1Beta
This originates from CR178618.
Problem: when SubControl.java is declared like in the sample:
@ControlExtension
public interface SubControl extends ExtensibleControl
{
�
}
A runtime error occurs.
The real issue here is that SubControl.java is a Control public interface (that
extends another Control Interface), but has the @ControlExtension annotation,
when it really should have the @ControlInterface annotation.
The basic rule of thumb is that a JCX file has @ControlExtension, and generally
has no associated Impl (methods are handled by Extensible.invoke) on the
associated Impl; more direct impl subclassing (with associated interface
extension) is done using the @ControlInterface.
The checker should have detected this.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://nagoya.apache.org/jira/secure/Administrators.jspa
-
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira