This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 52047 - I need to remove final modif. from ActionsProviderSupport.isEnabled(java.lang.Object)
Summary: I need to remove final modif. from ActionsProviderSupport.isEnabled(java.lang...
Status: CLOSED FIXED
Alias: None
Product: debugger
Classification: Unclassified
Component: Code (show other bugs)
Version: 4.x
Hardware: PC Linux
: P1 blocker (vote)
Assignee: apireviews
URL:
Keywords: API_REVIEW_FAST
Depends on:
Blocks:
 
Reported: 2004-12-03 10:23 UTC by Jaroslav Tulach
Modified: 2004-12-21 16:46 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Tulach 2004-12-03 10:23:15 UTC
Go thru review, make sure the change is
documented, explain why it is needed and prove it
is covered by tests.


> SPI signature test results
> --------------------------
>
> Note: This file lists ALL SPI changes made in
org.netbeans.spi since the build 200411181900.
>
>
> APIChangeTest Report
>
> Base version:   1.4.2_04
> Tested version: 1.4.2_04
>
> Missing Methods
> ---------------
>
>
org.netbeans.spi.debugger.ActionsProviderSupport:
          method public final boolean
org.netbeans.spi.debugger.ActionsProviderSupport.isEnabled(java.lang.Object)
>
> Added Methods
> -------------
>
>
org.netbeans.spi.debugger.ActionsProviderSupport:
          method public boolean
org.netbeans.spi.debugger.ActionsProviderSupport.isEnabled(java.lang.Object)
>
> STATUS:Failed.2 errors
>
Comment 1 Milan Kubec 2004-12-06 13:08:42 UTC
Is this really 4.0 issue?
Comment 2 Milan Kubec 2004-12-07 08:11:06 UTC
THIS ISSUE IS P1 - Could anyone respond if this is really 4.0 issue?
If not, please adjust version. Thanks.
Comment 3 Jan Jancura 2004-12-07 13:40:57 UTC
Sorry I was OOO.
Comment 4 Jan Jancura 2004-12-13 11:13:11 UTC
I need to remove final modif. from
ActionsProviderSupport.isEnabled(java.lang.Object).
This final modif. is too restricitve in some situations. I was not
able to write some tests without this modification.
Change is already done in cvs, I have changed module version number
and updated apichanges doc. Writing test for this purpose is mad.
Comment 5 Jaroslav Tulach 2004-12-15 07:45:24 UTC
I just asked jjancura to write a test for the missing modifier. He did
not want. So, I at least asked him why he needs to remove the final
keyword? He did not know!

I really do not know what to say. Maybe just rollback the change.

If you do not want to rollback, then realize the reason why you
thought it should not be final and simulate that reason in a test.
There has to be externally visible reason for that change!
Comment 6 Jan Jancura 2004-12-15 10:14:39 UTC
I do not understand why we should have some special tests for method
modifiers. Does it mean that I should create some special tests for
all my methods? Should I check all modifiers (public, static...)?
I thought that we have some API signature test already established for
that purpose.
Comment 7 Jaroslav Tulach 2004-12-16 08:13:34 UTC
You do not need signature tests, we have them. They reported your
change. On level of sigtests the proper fix is to return the final
keyword there. That is the only fix if you do not want to change
semantic of your API.

If you insist on the semantic change, then write test for the
behaviour that is possible now and was not before. And I am not
talking about ability to subclass, but test of the effect of such
subclassing in other parts of the system.
Comment 8 Jan Jancura 2004-12-20 14:42:01 UTC
Test is done, not other complaints, so I am closing this issue.

Test:
trunk\debuggerjpda\test\unit\src\org\netbeans\api\debugger\jpda\DummyTests.java
Comment 9 Jaroslav Tulach 2004-12-21 16:46:11 UTC
DummyTest is the right name for such dummy test. 

I hoped in having a test that would check the change in behaviour of
the debuggercore when ActionsProviderSupport with overriden isEnabled
was provided. But that is likely to much to ask for.