summaryrefslogtreecommitdiff
path: root/java/java-impl/src/com/intellij/refactoring
diff options
context:
space:
mode:
Diffstat (limited to 'java/java-impl/src/com/intellij/refactoring')
-rw-r--r--java/java-impl/src/com/intellij/refactoring/anonymousToInner/AnonymousToInnerDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/changeClassSignature/ChangeClassSignatureDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/copy/CopyClassDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/encapsulateFields/EncapsulateFieldsDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodProcessor.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/extractSuperclass/JavaExtractSuperBaseDialog.java8
-rw-r--r--java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/inheritanceToDelegation/InheritanceToDelegationDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java7
-rw-r--r--java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceConstantDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/introduceParameter/AbstractJavaInplaceIntroducer.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableDialog.java3
-rw-r--r--java/java-impl/src/com/intellij/refactoring/introduceparameterobject/IntroduceParameterObjectDialog.java3
-rw-r--r--java/java-impl/src/com/intellij/refactoring/makeStatic/MakeParameterizedStaticDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/migration/EditMigrationEntryDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveJavaFileHandler.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/move/moveInner/MoveInnerDialog.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/move/moveInstanceMethod/MoveInstanceMethodDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/move/moveMembers/MoveMembersDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/rename/DirectoryAsPackageRenameHandler.java7
-rw-r--r--java/java-impl/src/com/intellij/refactoring/rename/PsiPackageRenameValidator.java3
-rw-r--r--java/java-impl/src/com/intellij/refactoring/rename/naming/ConstructorParameterOnFieldRenameRenamer.java4
-rw-r--r--java/java-impl/src/com/intellij/refactoring/replaceConstructorWithBuilder/ReplaceConstructorWithBuilderDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/TypeCookProcessor.java11
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/Util.java6
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/PsiTypeVariableFactory.java16
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/ReductionSystem.java32
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/Result.java16
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/SystemBuilder.java23
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/Binding.java6
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/BindingFactory.java19
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/ResolverTree.java69
-rw-r--r--java/java-impl/src/com/intellij/refactoring/typeCook/deductive/util/VictimCollector.java9
-rw-r--r--java/java-impl/src/com/intellij/refactoring/util/ParameterTablePanel.java2
-rw-r--r--java/java-impl/src/com/intellij/refactoring/util/duplicates/MethodDuplicatesHandler.java20
-rw-r--r--java/java-impl/src/com/intellij/refactoring/wrapreturnvalue/WrapReturnValueDialog.java3
45 files changed, 170 insertions, 165 deletions
diff --git a/java/java-impl/src/com/intellij/refactoring/anonymousToInner/AnonymousToInnerDialog.java b/java/java-impl/src/com/intellij/refactoring/anonymousToInner/AnonymousToInnerDialog.java
index 80201559ef34..ad2a88c025a3 100644
--- a/java/java-impl/src/com/intellij/refactoring/anonymousToInner/AnonymousToInnerDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/anonymousToInner/AnonymousToInnerDialog.java
@@ -153,7 +153,7 @@ class AnonymousToInnerDialog extends DialogWrapper{
errorString = RefactoringBundle.message("anonymousToInner.no.inner.class.name");
}
else {
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(innerClassName)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(innerClassName)) {
errorString = RefactoringMessageUtil.getIncorrectIdentifierMessage(innerClassName);
}
else{
diff --git a/java/java-impl/src/com/intellij/refactoring/changeClassSignature/ChangeClassSignatureDialog.java b/java/java-impl/src/com/intellij/refactoring/changeClassSignature/ChangeClassSignatureDialog.java
index f8e27c444245..4ed36732bdf2 100644
--- a/java/java-impl/src/com/intellij/refactoring/changeClassSignature/ChangeClassSignatureDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/changeClassSignature/ChangeClassSignatureDialog.java
@@ -194,7 +194,7 @@ public class ChangeClassSignatureDialog extends RefactoringDialog {
final Map<String, TypeParameterInfo> infos = new HashMap<String, TypeParameterInfo>();
for (final TypeParameterInfo info : myTypeParameterInfos) {
if (!info.isForExistingParameter() &&
- !JavaPsiFacade.getInstance(myClass.getProject()).getNameHelper().isIdentifier(info.getNewName())) {
+ !PsiNameHelper.getInstance(myClass.getProject()).isIdentifier(info.getNewName())) {
return RefactoringBundle.message("error.wrong.name.input", info.getNewName());
}
final String newName = info.isForExistingParameter() ? parameters[info.getOldParameterIndex()].getName() : info.getNewName();
diff --git a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureDialog.java b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureDialog.java
index f86b78d1d17e..80941aabfc9e 100644
--- a/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/changeSignature/JavaChangeSignatureDialog.java
@@ -510,7 +510,7 @@ public class JavaChangeSignatureDialog extends ChangeSignatureDialogBase<Paramet
PsiElementFactory factory = JavaPsiFacade.getInstance(manager.getProject()).getElementFactory();
String name = getMethodName();
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(name)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(name)) {
return RefactoringMessageUtil.getIncorrectIdentifierMessage(name);
}
@@ -534,7 +534,7 @@ public class JavaChangeSignatureDialog extends ChangeSignatureDialogBase<Paramet
for (int i = 0; i < newParametersNumber; i++) {
final ParameterTableModelItemBase<ParameterInfoImpl> item = parameterInfos.get(i);
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(item.parameter.getName())) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(item.parameter.getName())) {
return RefactoringMessageUtil.getIncorrectIdentifierMessage(item.parameter.getName());
}
diff --git a/java/java-impl/src/com/intellij/refactoring/copy/CopyClassDialog.java b/java/java-impl/src/com/intellij/refactoring/copy/CopyClassDialog.java
index 02ff65e14b2d..f0a4fee2a073 100644
--- a/java/java-impl/src/com/intellij/refactoring/copy/CopyClassDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/copy/CopyClassDialog.java
@@ -159,7 +159,7 @@ class CopyClassDialog extends DialogWrapper{
final String[] errorString = new String[1];
final PsiManager manager = PsiManager.getInstance(myProject);
- final PsiNameHelper nameHelper = JavaPsiFacade.getInstance(manager.getProject()).getNameHelper();
+ final PsiNameHelper nameHelper = PsiNameHelper.getInstance(manager.getProject());
if (packageName.length() > 0 && !nameHelper.isQualifiedName(packageName)) {
errorString[0] = RefactoringBundle.message("invalid.target.package.name.specified");
} else if (className != null && className.isEmpty()) {
diff --git a/java/java-impl/src/com/intellij/refactoring/encapsulateFields/EncapsulateFieldsDialog.java b/java/java-impl/src/com/intellij/refactoring/encapsulateFields/EncapsulateFieldsDialog.java
index 8905ce202211..6356a17b956c 100644
--- a/java/java-impl/src/com/intellij/refactoring/encapsulateFields/EncapsulateFieldsDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/encapsulateFields/EncapsulateFieldsDialog.java
@@ -472,13 +472,13 @@ public class EncapsulateFieldsDialog extends RefactoringDialog implements Encaps
String name;
if (isToEncapsulateGet()) {
name = myGetterNames[idx];
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(name)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(name)) {
return RefactoringMessageUtil.getIncorrectIdentifierMessage(name);
}
}
if (!myFinalMarks[idx] && isToEncapsulateSet()) {
name = mySetterNames[idx];
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(name)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(name)) {
return RefactoringMessageUtil.getIncorrectIdentifierMessage(name);
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodDialog.java b/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodDialog.java
index 7bcb0cab6264..f4cfccb496ad 100644
--- a/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodDialog.java
@@ -221,7 +221,7 @@ public class ExtractMethodDialog extends AbstractExtractDialog {
main.add(visibilityAndName, BorderLayout.CENTER);
setOKActionEnabled(false);
- setOKActionEnabled(JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(myNameField.getText()));
+ setOKActionEnabled(PsiNameHelper.getInstance(myProject).isIdentifier(myNameField.getText()));
final JPanel options = new JPanel(new BorderLayout());
options.add(createOptionsPanel(), BorderLayout.WEST);
main.add(options, BorderLayout.SOUTH);
@@ -347,7 +347,7 @@ public class ExtractMethodDialog extends AbstractExtractDialog {
myMakeStatic.setEnabled(!myStaticFlag && myCanBeStatic && !isChainedConstructor());
}
updateSignature();
- setOKActionEnabled(JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(myNameField.getText()) ||
+ setOKActionEnabled(PsiNameHelper.getInstance(myProject).isIdentifier(myNameField.getText()) ||
isChainedConstructor());
}
diff --git a/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodProcessor.java b/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodProcessor.java
index ce52274140bb..c61c29c58ff9 100644
--- a/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodProcessor.java
+++ b/java/java-impl/src/com/intellij/refactoring/extractMethod/ExtractMethodProcessor.java
@@ -511,7 +511,7 @@ public class ExtractMethodProcessor implements MatchProvider {
PsiElement prevSibling = PsiTreeUtil.skipSiblingsBackward(myElements[0], PsiWhiteSpace.class);
if (prevSibling instanceof PsiComment && ((PsiComment)prevSibling).getTokenType() == JavaTokenType.END_OF_LINE_COMMENT) {
final String text = StringUtil.decapitalize(StringUtil.capitalizeWords(prevSibling.getText().trim().substring(2), true)).replaceAll(" ", "");
- if (JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(text) && text.length() < 20) {
+ if (PsiNameHelper.getInstance(myProject).isIdentifier(text) && text.length() < 20) {
return text;
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectDialog.java b/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectDialog.java
index ca64d8d7f954..fddd19bb4630 100644
--- a/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectDialog.java
@@ -189,7 +189,7 @@ public class ExtractMethodObjectDialog extends AbstractExtractDialog {
private void update() {
myCbMakeStatic.setEnabled(myCreateInnerClassRb.isSelected() && myCanBeStatic && !myStaticFlag);
updateSignature();
- final PsiNameHelper helper = JavaPsiFacade.getInstance(myProject).getNameHelper();
+ final PsiNameHelper helper = PsiNameHelper.getInstance(myProject);
setOKActionEnabled((myCreateInnerClassRb.isSelected() && helper.isIdentifier(myInnerClassName.getText())) ||
(!myCreateInnerClassRb.isSelected() && helper.isIdentifier(myMethodName.getText())));
}
diff --git a/java/java-impl/src/com/intellij/refactoring/extractSuperclass/JavaExtractSuperBaseDialog.java b/java/java-impl/src/com/intellij/refactoring/extractSuperclass/JavaExtractSuperBaseDialog.java
index f80af85c471f..86089a95e59d 100644
--- a/java/java-impl/src/com/intellij/refactoring/extractSuperclass/JavaExtractSuperBaseDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/extractSuperclass/JavaExtractSuperBaseDialog.java
@@ -27,7 +27,6 @@ import com.intellij.openapi.util.Pass;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.psi.*;
-import com.intellij.psi.impl.ElementPresentationUtil;
import com.intellij.psi.presentation.java.SymbolPresentationUtil;
import com.intellij.refactoring.MoveDestination;
import com.intellij.refactoring.PackageWrapper;
@@ -131,13 +130,12 @@ public abstract class JavaExtractSuperBaseDialog extends ExtractSuperBaseDialog<
@Override
protected void preparePackage() throws OperationFailedException {
final String targetPackageName = getTargetPackageName();
- final JavaPsiFacade psiFacade = JavaPsiFacade.getInstance(myProject);
final PsiFile containingFile = mySourceClass.getContainingFile();
final boolean fromDefaultPackage = containingFile instanceof PsiClassOwner && ((PsiClassOwner)containingFile).getPackageName().isEmpty();
- if (!(fromDefaultPackage && StringUtil.isEmpty(targetPackageName)) && !psiFacade.getNameHelper().isQualifiedName(targetPackageName)) {
+ if (!(fromDefaultPackage && StringUtil.isEmpty(targetPackageName)) && !PsiNameHelper.getInstance(myProject).isQualifiedName(targetPackageName)) {
throw new OperationFailedException("Invalid package name: " + targetPackageName);
}
- final PsiPackage aPackage = psiFacade.findPackage(targetPackageName);
+ final PsiPackage aPackage = JavaPsiFacade.getInstance(myProject).findPackage(targetPackageName);
if (aPackage != null) {
final PsiDirectory[] directories = aPackage.getDirectories(mySourceClass.getResolveScope());
if (directories.length >= 1) {
@@ -173,7 +171,7 @@ public abstract class JavaExtractSuperBaseDialog extends ExtractSuperBaseDialog<
@Nullable
@Override
protected String validateName(String name) {
- return JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(name)
+ return PsiNameHelper.getInstance(myProject).isIdentifier(name)
? null
: RefactoringMessageUtil.getIncorrectIdentifierMessage(name);
}
diff --git a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassDialog.java b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassDialog.java
index 18e53fb6ece5..9089af1e0f93 100644
--- a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassDialog.java
@@ -166,7 +166,7 @@ class ExtractClassDialog extends RefactoringDialog implements MemberInfoChangeLi
@Override
protected void canRun() throws ConfigurationException {
final Project project = sourceClass.getProject();
- final PsiNameHelper nameHelper = JavaPsiFacade.getInstance(project).getNameHelper();
+ final PsiNameHelper nameHelper = PsiNameHelper.getInstance(project);
final List<PsiMethod> methods = getMethodsToExtract();
final List<PsiField> fields = getFieldsToExtract();
final List<PsiClass> innerClasses = getClassesToExtract();
diff --git a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java
index d69352551623..30300db5c322 100644
--- a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java
+++ b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java
@@ -229,13 +229,13 @@ public class ExtractClassProcessor extends FixableUsagesRefactoringProcessor {
final String baseName = settings.FIELD_NAME_PREFIX.length() == 0 ? StringUtil.decapitalize(newClassName) : newClassName;
String name = settings.FIELD_NAME_PREFIX + baseName + settings.FIELD_NAME_SUFFIX;
- if (!existsFieldWithName(name) && !JavaPsiFacade.getInstance(project).getNameHelper().isKeyword(name)) {
+ if (!existsFieldWithName(name) && !PsiNameHelper.getInstance(project).isKeyword(name)) {
return name;
}
int counter = 1;
while (true) {
name = settings.FIELD_NAME_PREFIX + baseName + counter + settings.FIELD_NAME_SUFFIX;
- if (!existsFieldWithName(name) && !JavaPsiFacade.getInstance(project).getNameHelper().isKeyword(name)) {
+ if (!existsFieldWithName(name) && !PsiNameHelper.getInstance(project).isKeyword(name)) {
return name;
}
counter++;
diff --git a/java/java-impl/src/com/intellij/refactoring/inheritanceToDelegation/InheritanceToDelegationDialog.java b/java/java-impl/src/com/intellij/refactoring/inheritanceToDelegation/InheritanceToDelegationDialog.java
index b21204e55ef2..32e4992fe744 100644
--- a/java/java-impl/src/com/intellij/refactoring/inheritanceToDelegation/InheritanceToDelegationDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/inheritanceToDelegation/InheritanceToDelegationDialog.java
@@ -108,7 +108,7 @@ public class InheritanceToDelegationDialog extends RefactoringDialog {
@Override
protected void canRun() throws ConfigurationException {
final String fieldName = getFieldName();
- final PsiNameHelper helper = JavaPsiFacade.getInstance(myProject).getNameHelper();
+ final PsiNameHelper helper = PsiNameHelper.getInstance(myProject);
if (!helper.isIdentifier(fieldName)){
throw new ConfigurationException("\'" + fieldName + "\' is invalid field name for delegation");
}
diff --git a/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java b/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java
index b29d02fad178..8ab4fe47ce7d 100644
--- a/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java
+++ b/java/java-impl/src/com/intellij/refactoring/inline/InlineMethodProcessor.java
@@ -448,7 +448,12 @@ public class InlineMethodProcessor extends BaseRefactoringProcessor {
if (element instanceof PsiReferenceExpression) {
refExprList.add((PsiReferenceExpression)element);
} else if (element instanceof PsiImportStaticReferenceElement) {
- imports2Delete.add(PsiTreeUtil.getParentOfType(element, PsiImportStaticStatement.class));
+ final JavaResolveResult[] resolveResults = ((PsiImportStaticReferenceElement)element).multiResolve(false);
+ if (resolveResults.length < 2) {
+ //no overloads available: ensure broken import are deleted and
+ //unused overloaded imports are deleted by optimize imports helper
+ imports2Delete.add(PsiTreeUtil.getParentOfType(element, PsiImportStaticStatement.class));
+ }
}
else if (JavaLanguage.INSTANCE != element.getLanguage()) {
GenericInlineHandler.inlineReference(usage, myMethod, myInliners);
diff --git a/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceConstantDialog.java b/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceConstantDialog.java
index 4bae67e08f16..d39cc8a1035e 100644
--- a/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceConstantDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceConstantDialog.java
@@ -320,7 +320,7 @@ class IntroduceConstantDialog extends DialogWrapper {
}
private void updateButtons() {
- setOKActionEnabled(JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(getEnteredName()));
+ setOKActionEnabled(PsiNameHelper.getInstance(myProject).isIdentifier(getEnteredName()));
}
private void targetClassChanged() {
@@ -433,7 +433,7 @@ class IntroduceConstantDialog extends DialogWrapper {
String errorString = null;
if ("".equals(fieldName)) {
errorString = RefactoringBundle.message("no.field.name.specified");
- } else if (!JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(fieldName)) {
+ } else if (!PsiNameHelper.getInstance(myProject).isIdentifier(fieldName)) {
errorString = RefactoringMessageUtil.getIncorrectIdentifierMessage(fieldName);
} else if (newClass != null && !myParentClass.getLanguage().equals(newClass.getLanguage())) {
errorString = RefactoringBundle.message("move.to.different.language", UsageViewUtil.getType(myParentClass),
diff --git a/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldDialog.java b/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldDialog.java
index 09c8cbd1a8cf..6f1cd002c9c5 100644
--- a/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/introduceField/IntroduceFieldDialog.java
@@ -189,7 +189,7 @@ class IntroduceFieldDialog extends DialogWrapper {
}
private void updateButtons() {
- setOKActionEnabled(JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(getEnteredName()));
+ setOKActionEnabled(PsiNameHelper.getInstance(myProject).isIdentifier(getEnteredName()));
}
private String getTypeLabel() {
@@ -240,7 +240,7 @@ class IntroduceFieldDialog extends DialogWrapper {
String errorString = null;
if ("".equals(fieldName)) {
errorString = RefactoringBundle.message("no.field.name.specified");
- } else if (!JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(fieldName)) {
+ } else if (!PsiNameHelper.getInstance(myProject).isIdentifier(fieldName)) {
errorString = RefactoringMessageUtil.getIncorrectIdentifierMessage(fieldName);
}
if (errorString != null) {
diff --git a/java/java-impl/src/com/intellij/refactoring/introduceParameter/AbstractJavaInplaceIntroducer.java b/java/java-impl/src/com/intellij/refactoring/introduceParameter/AbstractJavaInplaceIntroducer.java
index 5e610f52e40f..a22a0987bdbb 100644
--- a/java/java-impl/src/com/intellij/refactoring/introduceParameter/AbstractJavaInplaceIntroducer.java
+++ b/java/java-impl/src/com/intellij/refactoring/introduceParameter/AbstractJavaInplaceIntroducer.java
@@ -121,7 +121,7 @@ public abstract class AbstractJavaInplaceIntroducer extends AbstractInplaceIntro
public static String[] appendUnresolvedExprName(String[] names, final PsiExpression expr) {
if (expr instanceof PsiReferenceExpression && ((PsiReferenceExpression)expr).resolve() == null) {
final String name = expr.getText();
- if (JavaPsiFacade.getInstance(expr.getProject()).getNameHelper().isIdentifier(name, LanguageLevel.HIGHEST)) {
+ if (PsiNameHelper.getInstance(expr.getProject()).isIdentifier(name, LanguageLevel.HIGHEST)) {
names = ArrayUtil.mergeArrays(new String[]{name}, names);
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterDialog.java b/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterDialog.java
index b23b0c465858..2c1fd8376619 100644
--- a/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/introduceParameter/IntroduceParameterDialog.java
@@ -281,7 +281,7 @@ public class IntroduceParameterDialog extends RefactoringDialog {
@Override
protected void canRun() throws ConfigurationException {
String name = getParameterName();
- if (name == null || !JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(name)) {
+ if (name == null || !PsiNameHelper.getInstance(myProject).isIdentifier(name)) {
throw new ConfigurationException("\'" + (name != null ? name : "") + "\' is invalid parameter name");
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableDialog.java b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableDialog.java
index 99b2d6a096a1..350422dd436b 100644
--- a/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/introduceVariable/IntroduceVariableDialog.java
@@ -20,6 +20,7 @@ import com.intellij.openapi.project.Project;
import com.intellij.openapi.ui.DialogWrapper;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiExpression;
+import com.intellij.psi.PsiNameHelper;
import com.intellij.psi.PsiType;
import com.intellij.psi.codeStyle.CodeStyleSettingsManager;
import com.intellij.psi.codeStyle.SuggestedNameInfo;
@@ -270,7 +271,7 @@ class IntroduceVariableDialog extends DialogWrapper implements IntroduceVariable
private void updateOkStatus() {
String text = getEnteredName();
- setOKActionEnabled(JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(text));
+ setOKActionEnabled(PsiNameHelper.getInstance(myProject).isIdentifier(text));
}
public JComponent getPreferredFocusedComponent() {
diff --git a/java/java-impl/src/com/intellij/refactoring/introduceparameterobject/IntroduceParameterObjectDialog.java b/java/java-impl/src/com/intellij/refactoring/introduceparameterobject/IntroduceParameterObjectDialog.java
index 7378c2e57d59..878e686474d1 100644
--- a/java/java-impl/src/com/intellij/refactoring/introduceparameterobject/IntroduceParameterObjectDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/introduceparameterobject/IntroduceParameterObjectDialog.java
@@ -185,8 +185,7 @@ public class IntroduceParameterObjectDialog extends RefactoringDialog {
@Override
protected void canRun() throws ConfigurationException {
final Project project = sourceMethod.getProject();
- final JavaPsiFacade manager = JavaPsiFacade.getInstance(project);
- final PsiNameHelper nameHelper = manager.getNameHelper();
+ final PsiNameHelper nameHelper = PsiNameHelper.getInstance(project);
final List<PsiParameter> parametersToExtract = getParametersToExtract();
if (parametersToExtract.isEmpty()) {
diff --git a/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeParameterizedStaticDialog.java b/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeParameterizedStaticDialog.java
index fa471dfa3a6e..b08c8d33ca0f 100644
--- a/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeParameterizedStaticDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/makeStatic/MakeParameterizedStaticDialog.java
@@ -256,7 +256,7 @@ public class MakeParameterizedStaticDialog extends AbstractMakeStaticDialog {
setOKActionEnabled(false);
}
else {
- setOKActionEnabled(JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(classParameterName.trim()));
+ setOKActionEnabled(PsiNameHelper.getInstance(myProject).isIdentifier(classParameterName.trim()));
}
}
else
diff --git a/java/java-impl/src/com/intellij/refactoring/migration/EditMigrationEntryDialog.java b/java/java-impl/src/com/intellij/refactoring/migration/EditMigrationEntryDialog.java
index 4ca1a26f449e..6834a09693a8 100644
--- a/java/java-impl/src/com/intellij/refactoring/migration/EditMigrationEntryDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/migration/EditMigrationEntryDialog.java
@@ -132,12 +132,12 @@ public class EditMigrationEntryDialog extends DialogWrapper{
String text = myOldNameField.getText();
text = text.trim();
PsiManager manager = PsiManager.getInstance(myProject);
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isQualifiedName(text)){
+ if (!PsiNameHelper.getInstance(manager.getProject()).isQualifiedName(text)){
isEnabled = false;
}
text = myNewNameField.getText();
text = text.trim();
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isQualifiedName(text)){
+ if (!PsiNameHelper.getInstance(manager.getProject()).isQualifiedName(text)){
isEnabled = false;
}
setOKActionEnabled(isEnabled);
diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesDialog.java b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesDialog.java
index c5caa4c9c240..3bbcf743506c 100644
--- a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesDialog.java
@@ -322,7 +322,7 @@ public class MoveClassesOrPackagesDialog extends RefactoringDialog {
protected void canRun() throws ConfigurationException {
if (isMoveToPackage()) {
String name = getTargetPackage().trim();
- if (name.length() != 0 && !JavaPsiFacade.getInstance(myManager.getProject()).getNameHelper().isQualifiedName(name)) {
+ if (name.length() != 0 && !PsiNameHelper.getInstance(myManager.getProject()).isQualifiedName(name)) {
throw new ConfigurationException("\'" + name + "\' is invalid destination package name");
}
}
@@ -491,7 +491,7 @@ public class MoveClassesOrPackagesDialog extends RefactoringDialog {
@Nullable
private MoveDestination selectDestination() {
final String packageName = getTargetPackage().trim();
- if (packageName.length() > 0 && !JavaPsiFacade.getInstance(myManager.getProject()).getNameHelper().isQualifiedName(packageName)) {
+ if (packageName.length() > 0 && !PsiNameHelper.getInstance(myManager.getProject()).isQualifiedName(packageName)) {
Messages.showErrorDialog(myProject, RefactoringBundle.message("please.enter.a.valid.target.package.name"),
RefactoringBundle.message("move.title"));
return null;
diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java
index 0e02b8f94e28..54ddf03a5c57 100644
--- a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java
+++ b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java
@@ -122,7 +122,7 @@ public class MoveClassesOrPackagesProcessor extends BaseRefactoringProcessor {
public boolean verifyValidPackageName() {
String qName = myTargetPackage.getQualifiedName();
if (!StringUtil.isEmpty(qName)) {
- PsiNameHelper helper = JavaPsiFacade.getInstance(myProject).getNameHelper();
+ PsiNameHelper helper = PsiNameHelper.getInstance(myProject);
if (!helper.isQualifiedName(qName)) {
Messages.showMessageDialog(myProject, RefactoringBundle.message("invalid.target.package.name.specified"), "Invalid Package Name",
Messages.getErrorIcon());
diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveJavaFileHandler.java b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveJavaFileHandler.java
index 60619ef4f9ce..92c3bc888f1c 100644
--- a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveJavaFileHandler.java
+++ b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveJavaFileHandler.java
@@ -95,7 +95,7 @@ public class MoveJavaFileHandler extends MoveFileHandler {
final PsiPackage aPackage = JavaDirectoryService.getInstance().getPackage(containingDirectory);
if (aPackage != null) {
final String qualifiedName = aPackage.getQualifiedName();
- final PsiNameHelper helper = JavaPsiFacade.getInstance(file.getProject()).getNameHelper();
+ final PsiNameHelper helper = PsiNameHelper.getInstance(file.getProject());
final PsiPackageStatement packageStatement = !StringUtil.isEmptyOrSpaces(qualifiedName) && helper.isQualifiedName(qualifiedName)
? JavaPsiFacade.getElementFactory(file.getProject()).createPackageStatement(qualifiedName)
: null;
diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveInner/MoveInnerDialog.java b/java/java-impl/src/com/intellij/refactoring/move/moveInner/MoveInnerDialog.java
index dd87120c6770..cb502377f83b 100644
--- a/java/java-impl/src/com/intellij/refactoring/move/moveInner/MoveInnerDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/move/moveInner/MoveInnerDialog.java
@@ -247,7 +247,7 @@ public class MoveInnerDialog extends RefactoringDialog {
message = RefactoringBundle.message("no.class.name.specified");
}
else {
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(className)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(className)) {
message = RefactoringMessageUtil.getIncorrectIdentifierMessage(className);
}
else {
@@ -256,7 +256,7 @@ public class MoveInnerDialog extends RefactoringDialog {
message = RefactoringBundle.message("no.parameter.name.specified");
}
else {
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isIdentifier(parameterName)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isIdentifier(parameterName)) {
message = RefactoringMessageUtil.getIncorrectIdentifierMessage(parameterName);
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveInstanceMethod/MoveInstanceMethodDialog.java b/java/java-impl/src/com/intellij/refactoring/move/moveInstanceMethod/MoveInstanceMethodDialog.java
index 3afe836ce615..1c058d2fe855 100644
--- a/java/java-impl/src/com/intellij/refactoring/move/moveInstanceMethod/MoveInstanceMethodDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/move/moveInstanceMethod/MoveInstanceMethodDialog.java
@@ -134,7 +134,7 @@ public class MoveInstanceMethodDialog extends MoveInstanceMethodDialogBase {
EditorTextField field = myOldClassParameterNameFields.get(aClass);
if (field.isEnabled()) {
String parameterName = field.getText().trim();
- if (!JavaPsiFacade.getInstance(myMethod.getProject()).getNameHelper().isIdentifier(parameterName)) {
+ if (!PsiNameHelper.getInstance(myMethod.getProject()).isIdentifier(parameterName)) {
Messages
.showErrorDialog(getProject(), RefactoringBundle.message("move.method.enter.a.valid.name.for.parameter"), myRefactoringName);
return;
diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveMembers/MoveMembersDialog.java b/java/java-impl/src/com/intellij/refactoring/move/moveMembers/MoveMembersDialog.java
index ab1bc8a8af0b..a8daa9e733fe 100644
--- a/java/java-impl/src/com/intellij/refactoring/move/moveMembers/MoveMembersDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/move/moveMembers/MoveMembersDialog.java
@@ -264,7 +264,7 @@ public class MoveMembersDialog extends RefactoringDialog implements MoveMembersO
return RefactoringBundle.message("no.destination.class.specified");
}
else {
- if (!JavaPsiFacade.getInstance(manager.getProject()).getNameHelper().isQualifiedName(fqName)) {
+ if (!PsiNameHelper.getInstance(manager.getProject()).isQualifiedName(fqName)) {
return RefactoringBundle.message("0.is.not.a.legal.fq.name", fqName);
}
else {
diff --git a/java/java-impl/src/com/intellij/refactoring/rename/DirectoryAsPackageRenameHandler.java b/java/java-impl/src/com/intellij/refactoring/rename/DirectoryAsPackageRenameHandler.java
index 71ec7ebe267b..958572dce0a6 100644
--- a/java/java-impl/src/com/intellij/refactoring/rename/DirectoryAsPackageRenameHandler.java
+++ b/java/java-impl/src/com/intellij/refactoring/rename/DirectoryAsPackageRenameHandler.java
@@ -18,10 +18,7 @@ package com.intellij.refactoring.rename;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.util.text.StringUtil;
import com.intellij.openapi.vfs.VirtualFile;
-import com.intellij.psi.JavaDirectoryService;
-import com.intellij.psi.JavaPsiFacade;
-import com.intellij.psi.PsiDirectory;
-import com.intellij.psi.PsiPackage;
+import com.intellij.psi.*;
import com.intellij.refactoring.BaseRefactoringProcessor;
import com.intellij.refactoring.RefactoringBundle;
import com.intellij.refactoring.move.moveClassesOrPackages.MoveDirectoryWithClassesProcessor;
@@ -38,7 +35,7 @@ public class DirectoryAsPackageRenameHandler extends DirectoryAsPackageRenameHan
@Override
protected boolean isIdentifier(String name, Project project) {
- return JavaPsiFacade.getInstance(project).getNameHelper().isIdentifier(name);
+ return PsiNameHelper.getInstance(project).isIdentifier(name);
}
@Override
diff --git a/java/java-impl/src/com/intellij/refactoring/rename/PsiPackageRenameValidator.java b/java/java-impl/src/com/intellij/refactoring/rename/PsiPackageRenameValidator.java
index 2a25f057e82f..29df2ff556b0 100644
--- a/java/java-impl/src/com/intellij/refactoring/rename/PsiPackageRenameValidator.java
+++ b/java/java-impl/src/com/intellij/refactoring/rename/PsiPackageRenameValidator.java
@@ -21,6 +21,7 @@ import com.intellij.patterns.ElementPattern;
import com.intellij.patterns.PlatformPatterns;
import com.intellij.psi.JavaPsiFacade;
import com.intellij.psi.PsiElement;
+import com.intellij.psi.PsiNameHelper;
import com.intellij.psi.PsiPackage;
import com.intellij.psi.impl.file.PsiDirectoryFactory;
import com.intellij.util.ProcessingContext;
@@ -41,7 +42,7 @@ public class PsiPackageRenameValidator implements RenameInputValidatorEx {
if (!PsiDirectoryFactory.getInstance(project).isValidPackageName(newName)) {
return "Not a valid package name";
}
- if (!JavaPsiFacade.getInstance(project).getNameHelper().isIdentifier(newName)) {
+ if (!PsiNameHelper.getInstance(project).isIdentifier(newName)) {
return "Not a valid identifier name";
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/rename/naming/ConstructorParameterOnFieldRenameRenamer.java b/java/java-impl/src/com/intellij/refactoring/rename/naming/ConstructorParameterOnFieldRenameRenamer.java
index 345b3129defb..67bb13ce81e4 100644
--- a/java/java-impl/src/com/intellij/refactoring/rename/naming/ConstructorParameterOnFieldRenameRenamer.java
+++ b/java/java-impl/src/com/intellij/refactoring/rename/naming/ConstructorParameterOnFieldRenameRenamer.java
@@ -36,7 +36,9 @@ public class ConstructorParameterOnFieldRenameRenamer extends AutomaticRenamer {
}
protected String nameToCanonicalName(@NonNls final String name, final PsiNamedElement element) {
- return JavaCodeStyleManager.getInstance(element.getProject()).variableNameToPropertyName(name, VariableKind.FIELD);
+ final JavaCodeStyleManager javaCodeStyleManager = JavaCodeStyleManager.getInstance(element.getProject());
+ final VariableKind variableKind = element instanceof PsiVariable ? javaCodeStyleManager.getVariableKind((PsiVariable)element) : VariableKind.FIELD;
+ return javaCodeStyleManager.variableNameToPropertyName(name, variableKind);
}
public ConstructorParameterOnFieldRenameRenamer(PsiField aField, String newFieldName) {
diff --git a/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithBuilder/ReplaceConstructorWithBuilderDialog.java b/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithBuilder/ReplaceConstructorWithBuilderDialog.java
index e2354c99812e..41cccd9453ee 100644
--- a/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithBuilder/ReplaceConstructorWithBuilderDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithBuilder/ReplaceConstructorWithBuilderDialog.java
@@ -153,7 +153,7 @@ public class ReplaceConstructorWithBuilderDialog extends RefactoringDialog {
@Override
protected void canRun() throws ConfigurationException {
- final PsiNameHelper nameHelper = JavaPsiFacade.getInstance(myProject).getNameHelper();
+ final PsiNameHelper nameHelper = PsiNameHelper.getInstance(myProject);
for (ParameterData parameterData : myParametersMap.values()) {
if (!nameHelper.isIdentifier(parameterData.getFieldName())) throw new ConfigurationException("\'" + parameterData.getFieldName() + "\' is not a valid field name");
if (!nameHelper.isIdentifier(parameterData.getSetterName())) throw new ConfigurationException("\'" + parameterData.getSetterName() + "\' is not a valid setter name");
diff --git a/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java b/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java
index 01444d0cee4d..395ff848701d 100644
--- a/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/replaceConstructorWithFactory/ReplaceConstructorWithFactoryDialog.java
@@ -202,7 +202,7 @@ public class ReplaceConstructorWithFactoryDialog extends RefactoringDialog {
@Override
protected void canRun() throws ConfigurationException {
final String name = myNameField.getEnteredName();
- final PsiNameHelper nameHelper = JavaPsiFacade.getInstance(myContainingClass.getProject()).getNameHelper();
+ final PsiNameHelper nameHelper = PsiNameHelper.getInstance(myContainingClass.getProject());
if (!nameHelper.isIdentifier(name)) {
throw new ConfigurationException("\'" + name + "\' is invalid factory method name");
}
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/TypeCookProcessor.java b/java/java-impl/src/com/intellij/refactoring/typeCook/TypeCookProcessor.java
index 08ad857fe766..4e4e681ea03b 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/TypeCookProcessor.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/TypeCookProcessor.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -30,10 +30,7 @@ import com.intellij.usageView.UsageInfo;
import com.intellij.usageView.UsageViewDescriptor;
import org.jetbrains.annotations.NotNull;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.HashSet;
-import java.util.List;
+import java.util.*;
public class TypeCookProcessor extends BaseRefactoringProcessor {
private PsiElement[] myElements;
@@ -75,7 +72,7 @@ public class TypeCookProcessor extends BaseRefactoringProcessor {
}
}
- final HashSet<PsiElement> changedItems = myResult.getCookedElements();
+ final Set<PsiElement> changedItems = myResult.getCookedElements();
final UsageInfo[] usages = new UsageInfo[changedItems.size()];
int i = 0;
@@ -100,7 +97,7 @@ public class TypeCookProcessor extends BaseRefactoringProcessor {
}
protected void performRefactoring(UsageInfo[] usages) {
- final HashSet<PsiElement> victims = new HashSet<PsiElement>();
+ final Set<PsiElement> victims = new HashSet<PsiElement>();
for (UsageInfo usage : usages) {
victims.add(usage.getElement());
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/Util.java b/java/java-impl/src/com/intellij/refactoring/typeCook/Util.java
index e33388e0e8b7..54149613704b 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/Util.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/Util.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -217,7 +217,7 @@ public class Util {
return subst;
}
- public static boolean bindsTypeParameters(PsiType t, HashSet<PsiTypeParameter> params) {
+ public static boolean bindsTypeParameters(PsiType t, Set<PsiTypeParameter> params) {
if (t instanceof PsiWildcardType) {
final PsiWildcardType wct = ((PsiWildcardType)t);
final PsiType bound = wct.getBound();
@@ -286,7 +286,7 @@ public class Util {
PsiSubstitutor theSubst = PsiSubstitutor.EMPTY;
- final HashSet<PsiTypeVariable> cluster = new HashSet<PsiTypeVariable>();
+ final Set<PsiTypeVariable> cluster = new HashSet<PsiTypeVariable>();
for (final PsiTypeParameter parm : aSubst.getSubstitutionMap().keySet()) {
final PsiType type = createParameterizedType(aSubst.substitute(parm), factory, false, context);
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/PsiTypeVariableFactory.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/PsiTypeVariableFactory.java
index e9a53aa68702..95535071b50e 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/PsiTypeVariableFactory.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/PsiTypeVariableFactory.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,23 +21,21 @@ import com.intellij.psi.util.PsiTreeUtil;
import com.intellij.psi.util.PsiUtil;
import org.jetbrains.annotations.NotNull;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.LinkedList;
+import java.util.*;
/**
* @author db
*/
public class PsiTypeVariableFactory {
private int myCurrent = 0;
- private final LinkedList<HashSet<PsiTypeVariable>> myClusters = new LinkedList<HashSet<PsiTypeVariable>>();
- private final HashMap<Integer, HashSet<PsiTypeVariable>> myVarCluster = new HashMap<Integer, HashSet<PsiTypeVariable>>();
+ private final List<Set<PsiTypeVariable>> myClusters = new LinkedList<Set<PsiTypeVariable>>();
+ private final Map<Integer, Set<PsiTypeVariable>> myVarCluster = new HashMap<Integer, Set<PsiTypeVariable>>();
public final int getNumber() {
return myCurrent;
}
- public final void registerCluster(final HashSet<PsiTypeVariable> cluster) {
+ public final void registerCluster(final Set<PsiTypeVariable> cluster) {
myClusters.add(cluster);
for (final PsiTypeVariable aCluster : cluster) {
@@ -45,11 +43,11 @@ public class PsiTypeVariableFactory {
}
}
- public final LinkedList<HashSet<PsiTypeVariable>> getClusters() {
+ public final List<Set<PsiTypeVariable>> getClusters() {
return myClusters;
}
- public final HashSet<PsiTypeVariable> getClusterOf(final int var) {
+ public final Set<PsiTypeVariable> getClusterOf(final int var) {
return myVarCluster.get(new Integer(var));
}
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/ReductionSystem.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/ReductionSystem.java
index 271c686b7fa9..a23d6d033c74 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/ReductionSystem.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/ReductionSystem.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -31,19 +31,19 @@ import java.util.*;
* @author db
*/
public class ReductionSystem {
- final HashSet<Constraint> myConstraints = new HashSet<Constraint>();
- final HashSet<PsiElement> myElements;
- final HashMap<PsiTypeCastExpression, PsiType> myCastToOperandType;
- final HashMap<PsiElement, PsiType> myTypes;
+ final Set<Constraint> myConstraints = new HashSet<Constraint>();
+ final Set<PsiElement> myElements;
+ final Map<PsiTypeCastExpression, PsiType> myCastToOperandType;
+ final Map<PsiElement, PsiType> myTypes;
final PsiTypeVariableFactory myTypeVariableFactory;
final Project myProject;
final Settings mySettings;
- HashSet<PsiTypeVariable> myBoundVariables;
+ Set<PsiTypeVariable> myBoundVariables;
public ReductionSystem(final Project project,
- final HashSet<PsiElement> elements,
- final HashMap<PsiElement, PsiType> types,
+ final Set<PsiElement> elements,
+ final Map<PsiElement, PsiType> types,
final PsiTypeVariableFactory factory,
final Settings settings) {
myProject = project;
@@ -59,7 +59,7 @@ public class ReductionSystem {
return myProject;
}
- public HashSet<Constraint> getConstraints() {
+ public Set<Constraint> getConstraints() {
return myConstraints;
}
@@ -165,7 +165,7 @@ public class ReductionSystem {
class Node {
int myComponent = -1;
Constraint myConstraint;
- HashSet<Node> myNeighbours = new HashSet<Node>();
+ Set<Node> myNeighbours = new HashSet<Node>();
public Node() {
myConstraint = null;
@@ -189,7 +189,7 @@ public class ReductionSystem {
final Node[] typeVariableNodes = new Node[myTypeVariableFactory.getNumber()];
final Node[] constraintNodes = new Node[myConstraints.size()];
- final HashMap<Constraint, HashSet<PsiTypeVariable>> boundVariables = new HashMap<Constraint, HashSet<PsiTypeVariable>>();
+ final Map<Constraint, Set<PsiTypeVariable>> boundVariables = new HashMap<Constraint, Set<PsiTypeVariable>>();
for (int i = 0; i < typeVariableNodes.length; i++) {
typeVariableNodes[i] = new Node();
@@ -207,7 +207,7 @@ public class ReductionSystem {
int l = 0;
for (final Constraint constraint : myConstraints) {
- final HashSet<PsiTypeVariable> boundVars = new HashSet<PsiTypeVariable>();
+ final Set<PsiTypeVariable> boundVars = new LinkedHashSet<PsiTypeVariable>();
final Node constraintNode = constraintNodes[l++];
new Object() {
@@ -266,9 +266,9 @@ public class ReductionSystem {
}
}
- final LinkedList<HashSet<PsiTypeVariable>> clusters = myTypeVariableFactory.getClusters();
+ List<Set<PsiTypeVariable>> clusters = myTypeVariableFactory.getClusters();
- for (final HashSet<PsiTypeVariable> cluster : clusters) {
+ for (final Set<PsiTypeVariable> cluster : clusters) {
Node prev = null;
for (final PsiTypeVariable variable : cluster) {
@@ -327,7 +327,7 @@ public class ReductionSystem {
return systems;
}
- private void addConstraint(final Constraint constraint, final HashSet<PsiTypeVariable> vars) {
+ private void addConstraint(final Constraint constraint, final Set<PsiTypeVariable> vars) {
if (myBoundVariables == null) {
myBoundVariables = vars;
}
@@ -342,7 +342,7 @@ public class ReductionSystem {
return myTypeVariableFactory;
}
- public HashSet<PsiTypeVariable> getBoundVariables() {
+ public Set<PsiTypeVariable> getBoundVariables() {
return myBoundVariables;
}
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/Result.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/Result.java
index 31e67a451e7f..a74fc23261e3 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/Result.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/Result.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -25,9 +25,9 @@ import com.intellij.refactoring.typeCook.deductive.resolver.Binding;
import com.intellij.util.IncorrectOperationException;
import org.jetbrains.annotations.NonNls;
-import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
+import java.util.Set;
/**
* @author db
@@ -35,10 +35,10 @@ import java.util.Map;
public class Result {
private static final Logger LOG = Logger.getInstance("#com.intellij.refactoring.typeCook.deductive.builder.Result");
- private final HashSet<PsiElement> myVictims;
- private final HashMap<PsiElement, PsiType> myTypes;
+ private final Set<PsiElement> myVictims;
+ private final Map<PsiElement, PsiType> myTypes;
private final Settings mySettings;
- private final HashMap<PsiTypeCastExpression, PsiType> myCastToOperandType;
+ private final Map<PsiTypeCastExpression, PsiType> myCastToOperandType;
private int myCookedNumber = -1;
private int myCastsRemoved = -1;
@@ -92,10 +92,10 @@ public class Result {
return originalType;
}
- public HashSet<PsiElement> getCookedElements() {
+ public Set<PsiElement> getCookedElements() {
myCookedNumber = 0;
- final HashSet<PsiElement> set = new HashSet<PsiElement>();
+ final Set<PsiElement> set = new HashSet<PsiElement>();
for (final PsiElement element : myVictims) {
final PsiType originalType = Util.getType(element);
@@ -137,7 +137,7 @@ public class Result {
return false;
}
- public void apply(final HashSet<PsiElement> victims) {
+ public void apply(final Set<PsiElement> victims) {
for (final PsiElement element : victims) {
if (element instanceof PsiTypeCastExpression && myCastToOperandType.containsKey(element)) {
final PsiTypeCastExpression cast = ((PsiTypeCastExpression)element);
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/SystemBuilder.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/SystemBuilder.java
index 2cd9045ba121..8b0514143ba6 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/SystemBuilder.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/builder/SystemBuilder.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -37,6 +37,7 @@ import com.intellij.util.containers.HashMap;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Map;
+import java.util.Set;
/**
* Created by IntelliJ IDEA.
@@ -49,11 +50,11 @@ public class SystemBuilder {
private static final Logger LOG = Logger.getInstance("#com.intellij.refactoring.typeCook.deductive.builder.SystemBuilder");
private final PsiManager myManager;
- private final HashMap<PsiElement, Boolean> myMethodCache;
- private final HashMap<PsiParameter, PsiParameter> myParameters;
- private final HashMap<PsiMethod, PsiMethod> myMethods;
- private final HashMap<PsiElement, PsiType> myTypes;
- private final HashSet<PsiAnchor> myVisitedConstructions;
+ private final Map<PsiElement, Boolean> myMethodCache;
+ private final Map<PsiParameter, PsiParameter> myParameters;
+ private final Map<PsiMethod, PsiMethod> myMethods;
+ private final Map<PsiElement, PsiType> myTypes;
+ private final Set<PsiAnchor> myVisitedConstructions;
private final Settings mySettings;
private final PsiTypeVariableFactory myTypeVariableFactory;
private final Project myProject;
@@ -70,11 +71,11 @@ public class SystemBuilder {
myTypeVariableFactory = new PsiTypeVariableFactory();
}
- private HashSet<PsiElement> collect(final PsiElement[] scopes) {
+ private Set<PsiElement> collect(final PsiElement[] scopes) {
return new VictimCollector(scopes, mySettings).getVictims();
}
- private boolean verifyMethod(final PsiElement element, final HashSet<PsiElement> victims, final PsiSearchHelper helper) {
+ private boolean verifyMethod(final PsiElement element, final Set<PsiElement> victims, final PsiSearchHelper helper) {
PsiMethod method;
PsiParameter parameter = null;
int index = 0;
@@ -352,7 +353,7 @@ public class SystemBuilder {
final PsiExpression qualifier =
expr instanceof PsiMethodCallExpression ? ((PsiMethodCallExpression)expr).getMethodExpression().getQualifierExpression() : null;
- final HashSet<PsiTypeParameter> typeParameters = new HashSet<PsiTypeParameter>(Arrays.asList(methodTypeParameters));
+ final Set<PsiTypeParameter> typeParameters = new HashSet<PsiTypeParameter>(Arrays.asList(methodTypeParameters));
PsiSubstitutor qualifierSubstitutor = PsiSubstitutor.EMPTY;
PsiSubstitutor supertypeSubstitutor = PsiSubstitutor.EMPTY;
@@ -397,7 +398,7 @@ public class SystemBuilder {
}
}
- final HashMap<PsiTypeParameter, PsiType> mapping = new HashMap<PsiTypeParameter, PsiType>();
+ final Map<PsiTypeParameter, PsiType> mapping = new HashMap<PsiTypeParameter, PsiType>();
for (int i = 0; i < Math.min(parameters.length, arguments.length); i++) {
final PsiType argumentType = evaluateType(arguments[i], system);
@@ -913,7 +914,7 @@ public class SystemBuilder {
return build(collect(scopes));
}
- public ReductionSystem build(final HashSet<PsiElement> victims) {
+ public ReductionSystem build(final Set<PsiElement> victims) {
final PsiSearchHelper helper = PsiSearchHelper.SERVICE.getInstance(myManager.getProject());
ReductionSystem system = new ReductionSystem(myProject, victims, myTypes, myTypeVariableFactory, mySettings);
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/Binding.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/Binding.java
index 54901124c3c1..88286517e4f1 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/Binding.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/Binding.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -18,7 +18,7 @@ package com.intellij.refactoring.typeCook.deductive.resolver;
import com.intellij.psi.PsiType;
import com.intellij.psi.PsiTypeVariable;
-import java.util.HashSet;
+import java.util.Set;
/**
* @author db
@@ -47,7 +47,7 @@ public abstract class Binding {
public abstract void merge(Binding b, boolean removeObject);
- public abstract HashSet<PsiTypeVariable> getBoundVariables();
+ public abstract Set<PsiTypeVariable> getBoundVariables();
public abstract int getWidth();
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/BindingFactory.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/BindingFactory.java
index 49525a67de44..14b9a1715050 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/BindingFactory.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/BindingFactory.java
@@ -33,7 +33,6 @@ import com.intellij.util.IncorrectOperationException;
import gnu.trove.TIntObjectHashMap;
import gnu.trove.TObjectProcedure;
-import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.LinkedList;
import java.util.Set;
@@ -45,7 +44,7 @@ import java.util.Set;
public class BindingFactory {
private static final Logger LOG = Logger.getInstance("#com.intellij.refactoring.typeCook.deductive.resolver.BindingFactory");
- private final HashSet<PsiTypeVariable> myBoundVariables;
+ private final Set<PsiTypeVariable> myBoundVariables;
private final Project myProject;
private final PsiTypeVariableFactory myFactory;
@@ -95,7 +94,7 @@ public class BindingFactory {
myBindings.put(index, type);
if (type instanceof Bottom) {
- final HashSet<PsiTypeVariable> cluster = myFactory.getClusterOf(index);
+ final Set<PsiTypeVariable> cluster = myFactory.getClusterOf(index);
if (cluster != null) {
for (PsiTypeVariable var : cluster) {
@@ -540,7 +539,7 @@ public class BindingFactory {
if (removeObject &&
javaLangObject.equals(type)) {
- final HashSet<PsiTypeVariable> cluster = myFactory.getClusterOf(var.getIndex());
+ final Set<PsiTypeVariable> cluster = myFactory.getClusterOf(var.getIndex());
if (cluster != null) {
for (final PsiTypeVariable war : cluster) {
@@ -560,7 +559,7 @@ public class BindingFactory {
}
}
- public HashSet<PsiTypeVariable> getBoundVariables() {
+ public Set<PsiTypeVariable> getBoundVariables() {
return myBoundVariables;
}
@@ -663,7 +662,7 @@ public class BindingFactory {
Binding unify(PsiType x, PsiType y);
}
- public Binding balance(final PsiType x, final PsiType y, final Balancer balancer, final HashSet<Constraint> constraints) {
+ public Binding balance(final PsiType x, final PsiType y, final Balancer balancer, final Set<Constraint> constraints) {
final int indicator = (x instanceof PsiTypeVariable ? 1 : 0) + (y instanceof PsiTypeVariable ? 2 : 0);
switch (indicator) {
@@ -878,7 +877,7 @@ public class BindingFactory {
}
}
- public Binding riseWithWildcard(final PsiType x, final PsiType y, final HashSet<Constraint> constraints) {
+ public Binding riseWithWildcard(final PsiType x, final PsiType y, final Set<Constraint> constraints) {
final Binding binding = balance(x, y, new Balancer() {
public Binding varType(final PsiTypeVariable x, final PsiType y) {
if (y instanceof Bottom) {
@@ -941,7 +940,7 @@ public class BindingFactory {
return binding != null ? binding.reduceRecursive() : null;
}
- public Binding rise(final PsiType x, final PsiType y, final HashSet<Constraint> constraints) {
+ public Binding rise(final PsiType x, final PsiType y, final Set<Constraint> constraints) {
final Binding binding = balance(x, y, new Balancer() {
public Binding varType(final PsiTypeVariable x, final PsiType y) {
if (y instanceof Bottom || y instanceof PsiWildcardType) {
@@ -977,7 +976,7 @@ public class BindingFactory {
return binding != null ? binding.reduceRecursive() : null;
}
- public Binding sink(final PsiType x, final PsiType y, final HashSet<Constraint> constraints) {
+ public Binding sink(final PsiType x, final PsiType y, final Set<Constraint> constraints) {
return balance(x, y, new Balancer() {
public Binding varType(final PsiTypeVariable x, final PsiType y) {
return create(x, y);
@@ -1141,7 +1140,7 @@ public class BindingFactory {
return new BindingImpl();
}
- public HashSet<PsiTypeVariable> getBoundVariables() {
+ public Set<PsiTypeVariable> getBoundVariables() {
return myBoundVariables;
}
}
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/ResolverTree.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/ResolverTree.java
index 7279b6d4a0d0..a58e0561c449 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/ResolverTree.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/resolver/ResolverTree.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2013 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,6 +28,7 @@ import com.intellij.refactoring.typeCook.deductive.PsiExtendedTypeVisitor;
import com.intellij.refactoring.typeCook.deductive.builder.Constraint;
import com.intellij.refactoring.typeCook.deductive.builder.ReductionSystem;
import com.intellij.refactoring.typeCook.deductive.builder.Subtype;
+import com.intellij.util.containers.EmptyIterator;
import com.intellij.util.graph.DFSTBuilder;
import com.intellij.util.graph.Graph;
import gnu.trove.TIntArrayList;
@@ -51,7 +52,7 @@ public class ResolverTree {
private final Settings mySettings;
private boolean mySolutionFound = false;
- private HashSet<Constraint> myConstraints;
+ private Set<Constraint> myConstraints;
public ResolverTree(final ReductionSystem system) {
myBindingFactory = new BindingFactory(system);
@@ -65,7 +66,7 @@ public class ResolverTree {
reduceCyclicVariables();
}
- private ResolverTree(final ResolverTree parent, final HashSet<Constraint> constraints, final Binding binding) {
+ private ResolverTree(final ResolverTree parent, final Set<Constraint> constraints, final Binding binding) {
myBindingFactory = parent.myBindingFactory;
myCurrentBinding = binding;
mySolutions = parent.mySolutions;
@@ -76,7 +77,7 @@ public class ResolverTree {
}
private static class PsiTypeVarCollector extends PsiExtendedTypeVisitor {
- final HashSet<PsiTypeVariable> mySet = new HashSet<PsiTypeVariable>();
+ final Set<PsiTypeVariable> mySet = new HashSet<PsiTypeVariable>();
@Override
public Object visitTypeVariable(final PsiTypeVariable var) {
@@ -85,7 +86,7 @@ public class ResolverTree {
return null;
}
- public HashSet<PsiTypeVariable> getSet(final PsiType type) {
+ public Set<PsiTypeVariable> getSet(final PsiType type) {
type.accept(this);
return mySet;
}
@@ -120,14 +121,14 @@ public class ResolverTree {
return result;
}
- private void setDegree(final HashSet<PsiTypeVariable> set, TObjectIntHashMap<PsiTypeVariable> result) {
+ private void setDegree(final Set<PsiTypeVariable> set, TObjectIntHashMap<PsiTypeVariable> result) {
for (final PsiTypeVariable var : set) {
result.increment(var);
}
}
- private HashSet<Constraint> apply(final Binding b) {
- final HashSet<Constraint> result = new HashSet<Constraint>();
+ private Set<Constraint> apply(final Binding b) {
+ final Set<Constraint> result = new HashSet<Constraint>();
for (final Constraint constr : myConstraints) {
result.add(constr.apply(b));
@@ -136,8 +137,8 @@ public class ResolverTree {
return result;
}
- private HashSet<Constraint> apply(final Binding b, final HashSet<Constraint> additional) {
- final HashSet<Constraint> result = new HashSet<Constraint>();
+ private Set<Constraint> apply(final Binding b, final Set<Constraint> additional) {
+ final Set<Constraint> result = new HashSet<Constraint>();
for (final Constraint constr : myConstraints) {
result.add(constr.apply(b));
@@ -156,18 +157,18 @@ public class ResolverTree {
return newBinding == null ? null : new ResolverTree(this, apply(b), newBinding);
}
- private ResolverTree applyRule(final Binding b, final HashSet<Constraint> additional) {
+ private ResolverTree applyRule(final Binding b, final Set<Constraint> additional) {
final Binding newBinding = b != null ? myCurrentBinding.compose(b) : null;
return newBinding == null ? null : new ResolverTree(this, apply(b, additional), newBinding);
}
private void reduceCyclicVariables() {
- final HashSet<PsiTypeVariable> nodes = new HashSet<PsiTypeVariable>();
- final HashSet<Constraint> candidates = new HashSet<Constraint>();
+ final Set<PsiTypeVariable> nodes = new HashSet<PsiTypeVariable>();
+ final Set<Constraint> candidates = new HashSet<Constraint>();
- final HashMap<PsiTypeVariable, HashSet<PsiTypeVariable>> ins = new HashMap<PsiTypeVariable, HashSet<PsiTypeVariable>>();
- final HashMap<PsiTypeVariable, HashSet<PsiTypeVariable>> outs = new HashMap<PsiTypeVariable, HashSet<PsiTypeVariable>>();
+ final Map<PsiTypeVariable, Set<PsiTypeVariable>> ins = new HashMap<PsiTypeVariable, Set<PsiTypeVariable>>();
+ final Map<PsiTypeVariable, Set<PsiTypeVariable>> outs = new HashMap<PsiTypeVariable, Set<PsiTypeVariable>>();
for (final Constraint constraint : myConstraints) {
final PsiType left = constraint.getLeft();
@@ -182,11 +183,11 @@ public class ResolverTree {
nodes.add(leftVar);
nodes.add(rightVar);
- final HashSet<PsiTypeVariable> in = ins.get(leftVar);
- final HashSet<PsiTypeVariable> out = outs.get(rightVar);
+ Set<PsiTypeVariable> in = ins.get(leftVar);
+ Set<PsiTypeVariable> out = outs.get(rightVar);
if (in == null) {
- final HashSet<PsiTypeVariable> newIn = new HashSet<PsiTypeVariable>();
+ final Set<PsiTypeVariable> newIn = new HashSet<PsiTypeVariable>();
newIn.add(rightVar);
@@ -197,7 +198,7 @@ public class ResolverTree {
}
if (out == null) {
- final HashSet<PsiTypeVariable> newOut = new HashSet<PsiTypeVariable>();
+ final Set<PsiTypeVariable> newOut = new HashSet<PsiTypeVariable>();
newOut.add(leftVar);
@@ -217,10 +218,10 @@ public class ResolverTree {
@Override
public Iterator<PsiTypeVariable> getIn(final PsiTypeVariable n) {
- final HashSet<PsiTypeVariable> in = ins.get(n);
+ final Set<PsiTypeVariable> in = ins.get(n);
if (in == null) {
- return new HashSet<PsiTypeVariable>().iterator();
+ return EmptyIterator.getInstance();
}
return in.iterator();
@@ -228,10 +229,10 @@ public class ResolverTree {
@Override
public Iterator<PsiTypeVariable> getOut(final PsiTypeVariable n) {
- final HashSet<PsiTypeVariable> out = outs.get(n);
+ final Set<PsiTypeVariable> out = outs.get(n);
if (out == null) {
- return new HashSet<PsiTypeVariable>().iterator();
+ return EmptyIterator.getInstance();
}
return out.iterator();
@@ -240,7 +241,7 @@ public class ResolverTree {
});
final TIntArrayList sccs = dfstBuilder.getSCCs();
- final HashMap<PsiTypeVariable, Integer> index = new HashMap<PsiTypeVariable, Integer>();
+ final Map<PsiTypeVariable, Integer> index = new HashMap<PsiTypeVariable, Integer>();
sccs.forEach(new TIntProcedure() {
int myTNumber = 0;
@@ -284,9 +285,9 @@ public class ResolverTree {
private void reduceTypeType(final Constraint constr) {
final PsiType left = constr.getLeft();
final PsiType right = constr.getRight();
- final HashSet<Constraint> addendumRise = new HashSet<Constraint>();
- final HashSet<Constraint> addendumSink = new HashSet<Constraint>();
- final HashSet<Constraint> addendumWcrd = new HashSet<Constraint>();
+ final Set<Constraint> addendumRise = new HashSet<Constraint>();
+ final Set<Constraint> addendumSink = new HashSet<Constraint>();
+ final Set<Constraint> addendumWcrd = new HashSet<Constraint>();
int numSons = 0;
Binding riseBinding = myBindingFactory.rise(left, right, addendumRise);
@@ -356,7 +357,7 @@ public class ResolverTree {
private void fillTypeRange(final PsiType lowerBound,
final PsiType upperBound,
- final HashSet<PsiType> holder) {
+ final Set<PsiType> holder) {
if (lowerBound instanceof PsiClassType && upperBound instanceof PsiClassType) {
final PsiClassType.ClassResolveResult resultLower = ((PsiClassType)lowerBound).resolveGenerics();
final PsiClassType.ClassResolveResult resultUpper = ((PsiClassType)upperBound).resolveGenerics();
@@ -385,7 +386,7 @@ public class ResolverTree {
}
private PsiType[] getTypeRange(final PsiType lowerBound, final PsiType upperBound) {
- final HashSet<PsiType> range = new HashSet<PsiType>();
+ Set<PsiType> range = new HashSet<PsiType>();
range.add(lowerBound);
range.add(upperBound);
@@ -464,8 +465,8 @@ public class ResolverTree {
reduceCyclicVariables();
}
- final HashMap<PsiTypeVariable, Constraint> myTypeVarConstraints = new HashMap<PsiTypeVariable, Constraint>();
- final HashMap<PsiTypeVariable, Constraint> myVarTypeConstraints = new HashMap<PsiTypeVariable, Constraint>();
+ final Map<PsiTypeVariable, Constraint> myTypeVarConstraints = new HashMap<PsiTypeVariable, Constraint>();
+ final Map<PsiTypeVariable, Constraint> myVarTypeConstraints = new HashMap<PsiTypeVariable, Constraint>();
for (final Constraint constr : myConstraints) {
final PsiType left = constr.getLeft();
@@ -530,7 +531,7 @@ public class ResolverTree {
final PsiType right = constr.getRight();
if (!(left instanceof PsiTypeVariable) && right instanceof PsiTypeVariable) {
- final HashSet<PsiTypeVariable> bound = new PsiTypeVarCollector().getSet(left);
+ Set<PsiTypeVariable> bound = new PsiTypeVarCollector().getSet(left);
if (bound.contains(right)) {
myConstraints.remove(constr);
@@ -561,10 +562,10 @@ public class ResolverTree {
//T1 < a < b < ...
{
- final HashSet<PsiTypeVariable> haveLeftBound = new HashSet<PsiTypeVariable>();
+ Set<PsiTypeVariable> haveLeftBound = new HashSet<PsiTypeVariable>();
Constraint target = null;
- final HashSet<PsiTypeVariable> boundVariables = new HashSet<PsiTypeVariable>();
+ Set<PsiTypeVariable> boundVariables = new HashSet<PsiTypeVariable>();
for (final Constraint constr : myConstraints) {
final PsiType leftType = constr.getLeft();
diff --git a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/util/VictimCollector.java b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/util/VictimCollector.java
index 5b2354563ed9..9af367c9fbd1 100644
--- a/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/util/VictimCollector.java
+++ b/java/java-impl/src/com/intellij/refactoring/typeCook/deductive/util/VictimCollector.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,13 +19,14 @@ import com.intellij.psi.*;
import com.intellij.refactoring.typeCook.Settings;
import com.intellij.refactoring.typeCook.Util;
-import java.util.HashSet;
+import java.util.LinkedHashSet;
+import java.util.Set;
/**
* @author db
*/
public class VictimCollector extends Visitor {
- final HashSet<PsiElement> myVictims = new HashSet<PsiElement>();
+ final Set<PsiElement> myVictims = new LinkedHashSet<PsiElement>();
final PsiElement[] myElements;
final Settings mySettings;
@@ -106,7 +107,7 @@ public class VictimCollector extends Visitor {
}
}
- public HashSet<PsiElement> getVictims() {
+ public Set<PsiElement> getVictims() {
for (PsiElement element : myElements) {
element.accept(this);
}
diff --git a/java/java-impl/src/com/intellij/refactoring/util/ParameterTablePanel.java b/java/java-impl/src/com/intellij/refactoring/util/ParameterTablePanel.java
index 83fba883184c..7a427b9fc56f 100644
--- a/java/java-impl/src/com/intellij/refactoring/util/ParameterTablePanel.java
+++ b/java/java-impl/src/com/intellij/refactoring/util/ParameterTablePanel.java
@@ -310,7 +310,7 @@ public abstract class ParameterTablePanel extends JPanel {
case PARAMETER_NAME_COLUMN: {
VariableData data = getVariableData()[rowIndex];
String name = (String)aValue;
- if (JavaPsiFacade.getInstance(myProject).getNameHelper().isIdentifier(name)) {
+ if (PsiNameHelper.getInstance(myProject).isIdentifier(name)) {
data.name = name;
}
updateSignature();
diff --git a/java/java-impl/src/com/intellij/refactoring/util/duplicates/MethodDuplicatesHandler.java b/java/java-impl/src/com/intellij/refactoring/util/duplicates/MethodDuplicatesHandler.java
index 876617b516e4..4bd3d6db70a5 100644
--- a/java/java-impl/src/com/intellij/refactoring/util/duplicates/MethodDuplicatesHandler.java
+++ b/java/java-impl/src/com/intellij/refactoring/util/duplicates/MethodDuplicatesHandler.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2000-2009 JetBrains s.r.o.
+ * Copyright 2000-2014 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -28,13 +28,14 @@ import com.intellij.openapi.command.CommandProcessor;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Editor;
import com.intellij.openapi.module.Module;
-import com.intellij.openapi.module.ModuleUtil;
+import com.intellij.openapi.module.ModuleUtilCore;
import com.intellij.openapi.progress.ProgressIndicator;
import com.intellij.openapi.progress.ProgressManager;
import com.intellij.openapi.progress.Task;
import com.intellij.openapi.project.Project;
import com.intellij.openapi.project.ProjectUtil;
import com.intellij.openapi.ui.Messages;
+import com.intellij.openapi.util.Computable;
import com.intellij.openapi.vfs.VirtualFile;
import com.intellij.openapi.wm.WindowManager;
import com.intellij.psi.*;
@@ -71,7 +72,7 @@ public class MethodDuplicatesHandler implements RefactoringActionHandler {
}
final AnalysisScope scope = new AnalysisScope(file);
- final Module module = ModuleUtil.findModuleForPsiElement(file);
+ final Module module = ModuleUtilCore.findModuleForPsiElement(file);
final BaseAnalysisActionDialog dlg = new BaseAnalysisActionDialog(RefactoringBundle.message("replace.method.duplicates.scope.chooser.title", REFACTORING_NAME),
RefactoringBundle.message("replace.method.duplicates.scope.chooser.message"),
project, scope, module != null ? module.getName() : null, false,
@@ -134,13 +135,18 @@ public class MethodDuplicatesHandler implements RefactoringActionHandler {
}
final Map<PsiMember, Set<Module>> memberWithModulesMap = new HashMap<PsiMember, Set<Module>>();
- for (PsiMember member : members) {
- final Module module = ModuleUtil.findModuleForPsiElement(member);
+ for (final PsiMember member : members) {
+ final Module module = ApplicationManager.getApplication().runReadAction(new Computable<Module>() {
+ @Override
+ public Module compute() {
+ return ModuleUtilCore.findModuleForPsiElement(member);
+ }
+ });
if (module != null) {
final HashSet<Module> dependencies = new HashSet<Module>();
ApplicationManager.getApplication().runReadAction(new Runnable() {
public void run() {
- ModuleUtil.collectModulesDependsOn(module, dependencies);
+ ModuleUtilCore.collectModulesDependsOn(module, dependencies);
}
});
memberWithModulesMap.put(member, dependencies);
@@ -158,7 +164,7 @@ public class MethodDuplicatesHandler implements RefactoringActionHandler {
progressIndicator.setText2(ProjectUtil.calcRelativeToProjectPath(virtualFile, project));
}
}
- final Module targetModule = ModuleUtil.findModuleForPsiElement(file);
+ final Module targetModule = ModuleUtilCore.findModuleForPsiElement(file);
if (targetModule == null) return;
for (Map.Entry<PsiMember, Set<Module>> entry : memberWithModulesMap.entrySet()) {
final Set<Module> dependencies = entry.getValue();
diff --git a/java/java-impl/src/com/intellij/refactoring/wrapreturnvalue/WrapReturnValueDialog.java b/java/java-impl/src/com/intellij/refactoring/wrapreturnvalue/WrapReturnValueDialog.java
index ac9b65950590..e7918134afe5 100644
--- a/java/java-impl/src/com/intellij/refactoring/wrapreturnvalue/WrapReturnValueDialog.java
+++ b/java/java-impl/src/com/intellij/refactoring/wrapreturnvalue/WrapReturnValueDialog.java
@@ -107,8 +107,7 @@ class WrapReturnValueDialog extends RefactoringDialog {
@Override
protected void canRun() throws ConfigurationException {
final Project project = sourceMethod.getProject();
- final JavaPsiFacade manager = JavaPsiFacade.getInstance(project);
- final PsiNameHelper nameHelper = manager.getNameHelper();
+ final PsiNameHelper nameHelper = PsiNameHelper.getInstance(project);
if (myCreateInnerClassButton.isSelected()) {
final String innerClassName = getInnerClassName().trim();
if (!nameHelper.isIdentifier(innerClassName)) throw new ConfigurationException("\'" + innerClassName + "\' is invalid inner class name");