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.
I would like to ask for an inception review of refactoring module. Arch. answers will be attached. Since this will be an inception review, we do not provide javadocs, because the API/SPI is still under construction. We would like to discuss possible end-results (of the API/SPI design) at the dev-rev meeting.
Created attachment 19102 [details] arch. answers
Inception review will be lead by Pavel and will be on Wednesday Dec 8. Reviewers with vote include me, Tomas and newly also Martin Grebac.
I have only one comment: PB01 Dependency on Java module and MDR. Part of the API and the whole SPI could be independent on Java and MDR which would allow to use it for other kinds of refactoring (e.g. JSP). Did you consider that? From API this is ChangeParameters, Problem and RefactoringSupport, except it uses AbstractRefactoring and org.netbeans.modules.javacore.internalapi.ProgressListener. Perhaps there should be a higher abstraction of refactoring then AbstractRefactoring, indepdent from Java. Then JavaRefactoring can subclass it. As for the ProgressListener this is a part of javacore that has not been reviewd yet, right? It seems like this has nothing to do with Java or MDR either...
1) to above: If I understod the comment correctly, then I think there are more problems with this - a refactoring plugin must register as an external change to make undo/redo work, but this is from javacore internalapi package. 2) order of refactorings doesn't seem to be guaranteed, which makes the plugins more complicated - (e.g. rename package - will you first move the file and then let plugin do something with it, or vice versa?)
To Pavel: Yes, we are in process of making the refactoring API independent of JMI. Honza B. is working on rewriting the J2SE refactorings to be just plugins to the generic refactorings (in a similar way the web-apps refactorings are implemented).
Refactoring API is prepared for final review (I hope :) * J2SE Refactorings are rewritten to plugins. * Arch. document updated (available at usual location refactoring/arch). * Javadoc can be built by "javadoc" build target.
Let's have the fianl review meeting on 1/25. Send issues to nbdev or add comments to this issue. Thanks.
See issue 53921
Created attachment 19959 [details] Current coverage by packages (thanks to mkubec)
Created attachment 19960 [details] Current coverage by packages (thanks to mkubec)
Thanks to Milan we have results of code coverage. Especially the org.netbeans.modules.refactoring.api.ui in undertested and as written on nbdev@ it should have tests - it uses some kind of Lookup API which is easy to be broken, so please provide some tests.
Package org.netbeans.modules.refactoring.api.ui is undertested, because this functionality was requested on 1/24 and implemented on 1/25
final opinion posted at: http://openide.netbeans.org/tutorial/reviews/opinions_52016.html the review has been accepted with TCRs/TCAs