Community
Participate
Working Groups
RenameRefactoring only works with platform URIs. If a custom EFS implementation is used the URIs won't be platform URIs. As far as I can see there is no reason to not use an injectable IStorage2UriMapper to retrieve files, projects ...
Created attachment 195638 [details] proposed patch
Thanks for the patch. I think we should probably use IWorkspace.validateEdit(IFile[], Object) instead of #isReadonly in order to use the logic of a possible pessimistic VCS.
Created attachment 195650 [details] proposed patch (take 2) That sounds reasonable. I've updated the patch accordingly. I am not familiar enough with the workings of the code to determine whether there are other places where we should call IWorkspace#validateEdit() or if the LTK takes care of that. But I think the patch should at least fix the reported problem.
Thanks for the updated patch. Would it be possible to use the Status-Information returned by #validateEdit in the IllegalArgumentException instead of the possibly less useful generic error message? I can imagine that a pessimistic VCS implementation will provide information such as "File 'abc.extension' is already locked by user XYZ" which may be helpful if your refactoring fails.
Patch applied. Please verify refactoring works for you now.
(In reply to comment #5) > Patch applied. Please verify refactoring works for you now. I can confirm that refactoring using non-platform URIs works. Thanks.
Closing all bugs that were set to RESOLVED before Neon.0