Author: dazarov
Date: 2012-02-02 19:47:53 -0500 (Thu, 02 Feb 2012)
New Revision: 38404
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/RenameMethodParticipant.java
Log:
Renaming java element does not force to re-validate related resources
https://issues.jboss.org/browse/JBIDE-10767
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/RenameMethodParticipant.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/RenameMethodParticipant.java 2012-02-02
22:40:23 UTC (rev 38403)
+++
trunk/jsf/plugins/org.jboss.tools.jsf.ui/src/org/jboss/tools/jsf/ui/el/refactoring/RenameMethodParticipant.java 2012-02-03
00:47:53 UTC (rev 38404)
@@ -23,7 +23,6 @@
import org.eclipse.ltk.core.refactoring.Change;
import org.eclipse.ltk.core.refactoring.CompositeChange;
import org.eclipse.ltk.core.refactoring.RefactoringStatus;
-import org.eclipse.ltk.core.refactoring.TextFileChange;
import org.eclipse.ltk.core.refactoring.participants.CheckConditionsContext;
import org.eclipse.ltk.core.refactoring.participants.ISharableParticipant;
import org.eclipse.ltk.core.refactoring.participants.RefactoringArguments;
@@ -32,6 +31,7 @@
import org.eclipse.text.edits.MultiTextEdit;
import org.eclipse.text.edits.ReplaceEdit;
import org.eclipse.text.edits.TextEdit;
+import org.jboss.tools.common.refactoring.BaseFileChange;
import org.jboss.tools.common.util.BeanUtil;
import org.jboss.tools.jsf.ui.JsfUIMessages;
import org.jboss.tools.jst.web.kb.refactoring.ELProjectSetExtension;
@@ -45,7 +45,7 @@
private RenameMethodSearcher searcher;
private RefactoringStatus status;
private CompositeChange rootChange;
- private TextFileChange lastChange;
+ private BaseFileChange lastChange;
private ArrayList<String> keys = new ArrayList<String>();
private ArrayList<Object> otherElements = new ArrayList<Object>();
@@ -136,18 +136,18 @@
return false;
}
- protected TextFileChange getChange(IFile file){
+ protected BaseFileChange getChange(IFile file){
if(lastChange != null && lastChange.getFile().equals(file))
return lastChange;
for(int i=0; i < rootChange.getChildren().length; i++){
- TextFileChange change = (TextFileChange)rootChange.getChildren()[i];
+ BaseFileChange change = (BaseFileChange)rootChange.getChildren()[i];
if(change.getFile().equals(file)){
lastChange = change;
return lastChange;
}
}
- lastChange = new TextFileChange(file.getName(), file);
+ lastChange = new BaseFileChange(file);
MultiTextEdit root = new MultiTextEdit();
lastChange.setEdit(root);
rootChange.add(lastChange);
@@ -158,7 +158,7 @@
private void change(IFile file, int offset, int length, String text){
String key = file.getFullPath().toString()+" "+offset;
if(!keys.contains(key)){
- TextFileChange change = getChange(file);
+ BaseFileChange change = getChange(file);
TextEdit edit = new ReplaceEdit(offset, length, text);
change.addEdit(edit);
keys.add(key);
@@ -177,6 +177,7 @@
}
}
+ @Override
protected void outOfSynch(IProject project){
status.addFatalError(NLS.bind(JsfUIMessages.RENAME_METHOD_PARTICIPANT_OUT_OF_SYNC_PROJECT,
project.getFullPath().toString()));
}
@@ -189,6 +190,7 @@
change(file, offset, length, newName);
}
+ @Override
protected IProject[] getProjects(){
if(projectSet != null){
return projectSet.getLinkedProjects();
@@ -196,6 +198,7 @@
return new IProject[]{baseFile.getProject()};
}
+ @Override
protected IContainer getViewFolder(IProject project){
if(projectSet != null){
return projectSet.getViewFolder(project);
@@ -205,6 +208,7 @@
}
}
+ @Override
public void addElement(Object element, RefactoringArguments arguments) {
otherElements.add(element);
}