From 00977b241ede852f141647dc6691703f0c0d60f5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Galland?= Date: Fri, 12 Aug 2016 16:43:10 +0200 Subject: [PATCH] [lang][ui] Change SARL package if reference update argument is checked. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit see #444 Signed-off-by: Stéphane Galland --- .../rename/SARLFileRenameParticipant.java | 3 ++ .../rename/SARLPackageRenameParticipant.java | 36 ++++++++++--------- .../contentassist/ClassContentAssistTest.java | 10 ------ 3 files changed, 22 insertions(+), 27 deletions(-) diff --git a/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLFileRenameParticipant.java b/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLFileRenameParticipant.java index 3a609ccbc7..a735292a81 100644 --- a/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLFileRenameParticipant.java +++ b/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLFileRenameParticipant.java @@ -73,6 +73,9 @@ public SARLFileRenameParticipant(@Named(Constants.FILE_EXTENSIONS) String fileEx @Override protected List createRenameElementContexts(Object element) { + if (!getArguments().getUpdateReferences()) { + return super.createRenameElementContexts(element); + } assert element instanceof IFile; final IFile file = (IFile) element; final IPath filePath = file.getFullPath(); diff --git a/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLPackageRenameParticipant.java b/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLPackageRenameParticipant.java index 111f3a8339..0b3f913b8e 100644 --- a/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLPackageRenameParticipant.java +++ b/eclipse-sarl/plugins/io.sarl.lang.ui/src/io/sarl/lang/ui/refactoring/rename/SARLPackageRenameParticipant.java @@ -89,26 +89,28 @@ protected List createRenameElementContexts(Obje assert element instanceof IPackageFragment; final IPackageFragment packageFragment = (IPackageFragment) element; final List contexts = new ArrayList<>(); - try { - final ResourceSet resourceSet = this.resourceSetProvider.get(packageFragment.getJavaProject().getProject()); - final String oldPackageName = packageFragment.getElementName(); - final String[] oldPackageNameElements = oldPackageName.split(PACKAGE_SEPARATOR_PATTERN); - final String newPackageName = getNewName(); - final String[] newPackageNameElements = newPackageName.split(PACKAGE_SEPARATOR_PATTERN); - for (final Object resourceObject : packageFragment.getNonJavaResources()) { - if (resourceObject instanceof IFile) { - final IFile file = (IFile) resourceObject; - if (file.getName().endsWith(this.fileExtension)) { - final IPath filePath = file.getFullPath(); - final URI resourceURI = URI.createPlatformResourceURI(filePath.toString(), true); - final Resource resource = resourceSet.getResource(resourceURI, true); - createPackageRenameContext(oldPackageName, newPackageName, filePath, - resource, contexts, oldPackageNameElements.length, newPackageNameElements); + if (getArguments().getUpdateReferences()) { + try { + final ResourceSet resourceSet = this.resourceSetProvider.get(packageFragment.getJavaProject().getProject()); + final String oldPackageName = packageFragment.getElementName(); + final String[] oldPackageNameElements = oldPackageName.split(PACKAGE_SEPARATOR_PATTERN); + final String newPackageName = getNewName(); + final String[] newPackageNameElements = newPackageName.split(PACKAGE_SEPARATOR_PATTERN); + for (final Object resourceObject : packageFragment.getNonJavaResources()) { + if (resourceObject instanceof IFile) { + final IFile file = (IFile) resourceObject; + if (file.getName().endsWith(this.fileExtension)) { + final IPath filePath = file.getFullPath(); + final URI resourceURI = URI.createPlatformResourceURI(filePath.toString(), true); + final Resource resource = resourceSet.getResource(resourceURI, true); + createPackageRenameContext(oldPackageName, newPackageName, filePath, + resource, contexts, oldPackageNameElements.length, newPackageNameElements); + } } } + } catch (JavaModelException exception) { + getStatus().add(RefactoringStatus.ERROR, exception.getLocalizedMessage(), exception, LOG); } - } catch (JavaModelException exception) { - getStatus().add(RefactoringStatus.ERROR, exception.getLocalizedMessage(), exception, LOG); } if (contexts.isEmpty()) { return super.createRenameElementContexts(packageFragment); diff --git a/tests/io.sarl.lang.ui.tests/src/io/sarl/lang/ui/tests/contentassist/ClassContentAssistTest.java b/tests/io.sarl.lang.ui.tests/src/io/sarl/lang/ui/tests/contentassist/ClassContentAssistTest.java index f23086399e..06b9825bb8 100644 --- a/tests/io.sarl.lang.ui.tests/src/io/sarl/lang/ui/tests/contentassist/ClassContentAssistTest.java +++ b/tests/io.sarl.lang.ui.tests/src/io/sarl/lang/ui/tests/contentassist/ClassContentAssistTest.java @@ -66,16 +66,6 @@ public void afterImplements() throws Exception { newBuilder().append("implements").assertText("implements"); } - @Test - public void afterExtendsSpace() throws Exception { - newBuilder().append("extends ").assertCount(2861); - } - - @Test - public void afterImplementsSpace() throws Exception { - newBuilder().append("implements ").assertCount(1383); - } - @Test public void startBlock() throws Exception { assertTextInsideProposals(newBuilder().append("{ "),