As stated in issue #61137, the new API for project delete is should be improved.
Moreover I also propose to extend this API with support for project
Summary of proposed changes:
-move ProjectOperations from org.netbeans.api.project to
org.netbeans.spi.project.support. Reasons are that:
1. only a limited number of clients should use the class (for NB
probably only two: the default project operations implementation and
the J2EE project)
2. this class is not strictly necessary: the client can go through
the lookup itself
-do top level interfaces from the DeleteOperationImplementation (and
added two new CopyOperationImplementation, MoveOperationImplementation).
-move the default delete(/copy/rename/move) operation into the
Project UI API.
-change performClean to notifyDeleting
-add COMMAND_COPY, COMMAND_RENAME and COMMAND_MOVE and corresponding methods in
-add ReferenceHelper.fixReferences to help resolve broken references after
I am attaching:
-copy-move-api.diff showing only API changes
-copy-move-full.diff showing also implementation (the impl. is not completelly
-test.jar with tests for the default project delete/copy/rename/move implementation
Created attachment 23363 [details]
Created attachment 23364 [details]
Created attachment 23365 [details]
Tests for DefaultProjectsOperationImplementation.
I have implemented the proposed changes, see attached log from commit.
Created attachment 24134 [details]
Log from commit.