diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/JavaMemberNameCompletionContributor.java b/java/java-impl/src/com/intellij/codeInsight/completion/JavaMemberNameCompletionContributor.java index fc0baa591c30..542e4ad3d027 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/JavaMemberNameCompletionContributor.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/JavaMemberNameCompletionContributor.java @@ -388,7 +388,7 @@ public class JavaMemberNameCompletionContributor extends CompletionContributor { if (staticContext && (modifierList != null && !modifierList.hasModifierProperty(PsiModifier.STATIC))) continue; if (fieldType.equals(varType)) { - final String getterName = PropertyUtil.suggestGetterName(field.getProject(), field); + final String getterName = PropertyUtil.suggestGetterName(field); if ((psiClass.findMethodsByName(getterName, true).length == 0 || psiClass.findMethodBySignature(PropertyUtil.generateGetterPrototype(field), true) == null)) { propertyHandlers.add(getterName); @@ -396,7 +396,7 @@ public class JavaMemberNameCompletionContributor extends CompletionContributor { } if (PsiType.VOID.equals(varType)) { - final String setterName = PropertyUtil.suggestSetterName(field.getProject(), field); + final String setterName = PropertyUtil.suggestSetterName(field); if ((psiClass.findMethodsByName(setterName, true).length == 0 || psiClass.findMethodBySignature(PropertyUtil.generateSetterPrototype(field), true) == null)) { propertyHandlers.add(setterName); diff --git a/java/java-impl/src/com/intellij/refactoring/encapsulateFields/JavaEncapsulateFieldHelper.java b/java/java-impl/src/com/intellij/refactoring/encapsulateFields/JavaEncapsulateFieldHelper.java index 2d45a929edd1..19a6fb15ee0d 100644 --- a/java/java-impl/src/com/intellij/refactoring/encapsulateFields/JavaEncapsulateFieldHelper.java +++ b/java/java-impl/src/com/intellij/refactoring/encapsulateFields/JavaEncapsulateFieldHelper.java @@ -320,13 +320,13 @@ public class JavaEncapsulateFieldHelper extends EncapsulateFieldHelper { @Override @NotNull public String suggestSetterName(@NotNull PsiField field) { - return PropertyUtil.suggestSetterName(field.getProject(), field); + return PropertyUtil.suggestSetterName(field); } @Override @NotNull public String suggestGetterName(@NotNull PsiField field) { - return PropertyUtil.suggestGetterName(field.getProject(), field); + return PropertyUtil.suggestGetterName(field); } @Override diff --git a/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectProcessor.java b/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectProcessor.java index 90131299c98d..8d449cf94e74 100644 --- a/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/extractMethodObject/ExtractMethodObjectProcessor.java @@ -253,7 +253,7 @@ public class ExtractMethodObjectProcessor extends BaseRefactoringProcessor { myInnerClass.add(outputField); field = outputField; } else { - field = PropertyUtil.findPropertyField(myProject, myInnerClass, name, false); + field = PropertyUtil.findPropertyField(myInnerClass, name, false); } LOG.assertTrue(field != null, "i:" + i + "; output variables: " + Arrays.toString(outputVariables) + "; parameters: " + Arrays.toString(getMethod().getParameterList().getParameters()) + "; output field: " + outputField ); myInnerClass.add(GenerateMembersUtil.generateGetterPrototype(field)); @@ -763,7 +763,8 @@ public class ExtractMethodObjectProcessor extends BaseRefactoringProcessor { PsiStatement st = null; final String pureName = getPureName(variable); final int varIdxInOutput = ArrayUtil.find(myOutputVariables, variable); - final String getterName = varIdxInOutput > -1 && myOutputFields[varIdxInOutput] != null ? PropertyUtil.suggestGetterName(myProject, myOutputFields[varIdxInOutput]) : PropertyUtil.suggestGetterName(pureName, variable.getType()); + final String getterName = varIdxInOutput > -1 && myOutputFields[varIdxInOutput] != null ? PropertyUtil.suggestGetterName( + myOutputFields[varIdxInOutput]) : PropertyUtil.suggestGetterName(pureName, variable.getType()); if (isDeclaredInside(variable)) { st = myElementFactory.createStatementFromText( variable.getType().getCanonicalText() + " " + name + " = " + object + "." + getterName + "();", 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 3969ae580919..ea6443bcb369 100644 --- a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractClassProcessor.java @@ -597,7 +597,7 @@ public class ExtractClassProcessor extends FixableUsagesRefactoringProcessor { final String qualifiedName = StringUtil.getQualifiedName(newPackageName, newClassName); @NonNls String getter = null; if (myGenerateAccessors) { - getter = PropertyUtil.suggestGetterName(myProject, field); + getter = PropertyUtil.suggestGetterName(field); } else { final PsiMethod fieldGetter = PropertyUtil.findPropertyGetter(sourceClass, field.getName(), false, false); if (fieldGetter != null && isInMovedElement(fieldGetter)) { @@ -607,7 +607,7 @@ public class ExtractClassProcessor extends FixableUsagesRefactoringProcessor { @NonNls String setter = null; if (myGenerateAccessors) { - setter = PropertyUtil.suggestSetterName(myProject, field); + setter = PropertyUtil.suggestSetterName(field); } else { final PsiMethod fieldSetter = PropertyUtil.findPropertySetter(sourceClass, field.getName(), false, false); if (fieldSetter != null && isInMovedElement(fieldSetter)) { diff --git a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractedClassBuilder.java b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractedClassBuilder.java index caf4e32ead80..5f1da27f429f 100644 --- a/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractedClassBuilder.java +++ b/java/java-impl/src/com/intellij/refactoring/extractclass/ExtractedClassBuilder.java @@ -433,7 +433,7 @@ class ExtractedClassBuilder { } } else { - out.append(backPointerName + '.' + PropertyUtil.suggestGetterName(field.getProject(), field) + "()"); + out.append(backPointerName + '.' + PropertyUtil.suggestGetterName(field) + "()"); } } } @@ -476,16 +476,16 @@ class ExtractedClassBuilder { private void delegate(final PsiExpression rhs, final PsiField field, final PsiJavaToken sign, final IElementType tokenType, final String fieldName) { if (tokenType.equals(JavaTokenType.EQ)) { - final String setterName = PropertyUtil.suggestSetterName(field.getProject(), field); + final String setterName = PropertyUtil.suggestSetterName(field); out.append(fieldName + '.' + setterName + '('); rhs.accept(this); out.append(')'); } else { final String operator = sign.getText().substring(0, sign.getTextLength() - 1); - final String setterName = PropertyUtil.suggestSetterName(field.getProject(), field); + final String setterName = PropertyUtil.suggestSetterName(field); out.append(fieldName + '.' + setterName + '('); - final String getterName = PropertyUtil.suggestGetterName(field.getProject(), field); + final String getterName = PropertyUtil.suggestGetterName(field); out.append(fieldName + '.' + getterName + "()"); out.append(operator); rhs.accept(this); @@ -521,10 +521,10 @@ class ExtractedClassBuilder { assert field != null; if (!field.hasModifierProperty(PsiModifier.STATIC)) { out.append(backPointerName + - '.' + PropertyUtil.suggestSetterName(field.getProject(), field) + + '.' + PropertyUtil.suggestSetterName(field) + '(' + backPointerName + - '.' + PropertyUtil.suggestGetterName(field.getProject(), field) + + '.' + PropertyUtil.suggestGetterName(field) + "()" + operator + "1)"); diff --git a/java/java-impl/src/com/intellij/refactoring/removemiddleman/RemoveMiddlemanProcessor.java b/java/java-impl/src/com/intellij/refactoring/removemiddleman/RemoveMiddlemanProcessor.java index 246d25b0397c..ec94562a1354 100644 --- a/java/java-impl/src/com/intellij/refactoring/removemiddleman/RemoveMiddlemanProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/removemiddleman/RemoveMiddlemanProcessor.java @@ -66,7 +66,7 @@ public class RemoveMiddlemanProcessor extends FixableUsagesRefactoringProcessor if (!memberInfo.isChecked()) continue; final PsiMethod method = (PsiMethod)memberInfo.getMember(); final Project project = method.getProject(); - final String getterName = PropertyUtil.suggestGetterName(project, field); + final String getterName = PropertyUtil.suggestGetterName(field); final int[] paramPermutation = DelegationUtils.getParameterPermutation(method); final PsiMethod delegatedMethod = DelegationUtils.getDelegatedMethod(method); LOG.assertTrue(!DelegationUtils.isAbstract(method)); diff --git a/java/java-psi-api/src/com/intellij/psi/util/PropertyUtil.java b/java/java-psi-api/src/com/intellij/psi/util/PropertyUtil.java index 5f2d1d641405..d8376856a714 100644 --- a/java/java-psi-api/src/com/intellij/psi/util/PropertyUtil.java +++ b/java/java-psi-api/src/com/intellij/psi/util/PropertyUtil.java @@ -288,7 +288,7 @@ public class PropertyUtil { return null; } - @Nullable public static PsiField findPropertyField(Project project, PsiClass aClass, String propertyName, boolean isStatic) { + @Nullable public static PsiField findPropertyField(PsiClass aClass, String propertyName, boolean isStatic) { PsiField[] fields = aClass.getAllFields(); for (PsiField field : fields) { @@ -299,19 +299,6 @@ public class PropertyUtil { return null; } - @Nullable public static PsiField findPropertyFieldWithType(Project project, String propertyName, - boolean isStatic, PsiType type, Iterator fields) { - while (fields.hasNext()) { - PsiField field = fields.next(); - if (field.hasModifierProperty(PsiModifier.STATIC) != isStatic) continue; - if (propertyName.equals(suggestPropertyName(field))) { - if (type.equals(field.getType())) return field; - } - } - - return null; - } - @Nullable public static String getPropertyName(@NonNls String methodName) { return StringUtil.getPropertyName(methodName); } @@ -321,7 +308,7 @@ public class PropertyUtil { } public static String suggestGetterName(@NotNull String propertyName, @Nullable PsiType propertyType, @NonNls String existingGetterName) { - @NonNls StringBuffer name = new StringBuffer(StringUtil.capitalizeWithJavaBeanConvention(propertyName)); + @NonNls StringBuilder name = new StringBuilder(StringUtil.capitalizeWithJavaBeanConvention(propertyName)); if (isBoolean(propertyType)) { if (existingGetterName == null || !existingGetterName.startsWith("get")) { name.insert(0, IS_PREFIX); @@ -348,7 +335,7 @@ public class PropertyUtil { } public static String suggestSetterName(@NonNls String propertyName) { - @NonNls StringBuffer name = new StringBuffer(StringUtil.capitalizeWithJavaBeanConvention(propertyName)); + @NonNls StringBuilder name = new StringBuilder(StringUtil.capitalizeWithJavaBeanConvention(propertyName)); name.insert(0, "set"); return name.toString(); } @@ -407,7 +394,7 @@ public class PropertyUtil { PsiElementFactory factory = JavaPsiFacade.getInstance(field.getProject()).getElementFactory(); Project project = field.getProject(); String name = field.getName(); - String getName = suggestGetterName(project, field); + String getName = suggestGetterName(field); try { PsiMethod getMethod = factory.createMethod(getName, field.getType()); PsiUtil.setModifierProperty(getMethod, PsiModifier.PUBLIC, true); @@ -460,7 +447,7 @@ public class PropertyUtil { boolean isStatic = field.hasModifierProperty(PsiModifier.STATIC); VariableKind kind = codeStyleManager.getVariableKind(field); String propertyName = codeStyleManager.variableNameToPropertyName(name, kind); - String setName = suggestSetterName(project, field); + String setName = suggestSetterName(field); try { PsiMethod setMethod = factory.createMethodFromText(factory.createMethod(setName, returnSelf ? factory.createType(containingClass) : PsiType.VOID).getText(), field); String parameterName = codeStyleManager.propertyNameToVariableName(propertyName, VariableKind.PARAMETER); @@ -472,7 +459,7 @@ public class PropertyUtil { PsiUtil.setModifierProperty(setMethod, PsiModifier.PUBLIC, true); PsiUtil.setModifierProperty(setMethod, PsiModifier.STATIC, isStatic); - @NonNls StringBuffer buffer = new StringBuffer(); + @NonNls StringBuilder buffer = new StringBuilder(); buffer.append("{\n"); if (name.equals(parameterName)) { if (!isStatic) { @@ -543,31 +530,16 @@ public class PropertyUtil { return name; } - public static String suggestGetterName(Project project, PsiField field) { + public static String suggestGetterName(PsiField field) { String propertyName = suggestPropertyName(field); return suggestGetterName(propertyName, field.getType()); } - public static String suggestSetterName(Project project, PsiField field) { + public static String suggestSetterName(PsiField field) { String propertyName = suggestPropertyName(field); return suggestSetterName(propertyName); } - /** - * "xxx", "void setMyProperty(String pp)" -> "setXxx" - */ - @Nullable - public static String suggestPropertyAccessor(String name, PsiMethod accessorTemplate) { - if (isSimplePropertyGetter(accessorTemplate)) { - PsiType type = accessorTemplate.getReturnType(); - return suggestGetterName(name, type, accessorTemplate.getName()); - } - if (isSimplePropertySetter(accessorTemplate)) { - return suggestSetterName(name); - } - return null; - } - @Nullable public static String getPropertyName(final PsiMember member) { if (member instanceof PsiMethod) { diff --git a/java/java-tests/testSrc/com/intellij/psi/util/PropertyUtilTest.java b/java/java-tests/testSrc/com/intellij/psi/util/PropertyUtilTest.java index cf556cf65abd..748ce415fdb6 100644 --- a/java/java-tests/testSrc/com/intellij/psi/util/PropertyUtilTest.java +++ b/java/java-tests/testSrc/com/intellij/psi/util/PropertyUtilTest.java @@ -17,27 +17,27 @@ public class PropertyUtilTest extends LightCodeInsightTestCase { public void testSuggestGetterName() throws Exception { assertEquals("isValid", PropertyUtil.suggestGetterName("valid", getType("boolean"))); assertEquals("getValid", PropertyUtil.suggestGetterName("valid", getType("Object"))); - assertEquals("isValid", PropertyUtil.suggestGetterName(ourProject, createField("valid", "boolean"))); - assertEquals("getValid", PropertyUtil.suggestGetterName(ourProject, createField("valid", "Object"))); + assertEquals("isValid", PropertyUtil.suggestGetterName(createField("valid", "boolean"))); + assertEquals("getValid", PropertyUtil.suggestGetterName(createField("valid", "Object"))); assertEquals("getURL", PropertyUtil.suggestGetterName("URL", getType("Object"))); - assertEquals("getURL", PropertyUtil.suggestGetterName(ourProject, createField("URL", "Object"))); + assertEquals("getURL", PropertyUtil.suggestGetterName(createField("URL", "Object"))); - assertEquals("isaURL", PropertyUtil.suggestGetterName(ourProject, createField("aURL", "boolean"))); - assertEquals("getaURL", PropertyUtil.suggestGetterName(ourProject, createField("aURL", "Object"))); - assertEquals("getBool", PropertyUtil.suggestGetterName(ourProject, createField("bool", "java.lang.Boolean"))); + assertEquals("isaURL", PropertyUtil.suggestGetterName(createField("aURL", "boolean"))); + assertEquals("getaURL", PropertyUtil.suggestGetterName(createField("aURL", "Object"))); + assertEquals("getBool", PropertyUtil.suggestGetterName(createField("bool", "java.lang.Boolean"))); } public void testSuggestSetterName() throws Exception { assertEquals("setValid", PropertyUtil.suggestSetterName("valid")); - assertEquals("setValid", PropertyUtil.suggestSetterName(ourProject, createField("valid", "Object"))); + assertEquals("setValid", PropertyUtil.suggestSetterName(createField("valid", "Object"))); assertEquals("setURL", PropertyUtil.suggestSetterName("URL")); - assertEquals("setURL", PropertyUtil.suggestSetterName(ourProject, createField("URL", "Object"))); + assertEquals("setURL", PropertyUtil.suggestSetterName(createField("URL", "Object"))); assertEquals("setaURL", PropertyUtil.suggestSetterName("aURL")); - assertEquals("setaURL", PropertyUtil.suggestSetterName(ourProject, createField("aURL", "Object"))); - assertEquals("setBool", PropertyUtil.suggestSetterName(ourProject, createField("bool", "java.lang.Boolean"))); + assertEquals("setaURL", PropertyUtil.suggestSetterName(createField("aURL", "Object"))); + assertEquals("setBool", PropertyUtil.suggestSetterName(createField("bool", "java.lang.Boolean"))); } public void testSuggestPropertyName() throws Exception { diff --git a/java/java-tests/testSrc/com/intellij/refactoring/EncapsulateFieldsTest.java b/java/java-tests/testSrc/com/intellij/refactoring/EncapsulateFieldsTest.java index dd3af4b420d0..666168ba9b43 100644 --- a/java/java-tests/testSrc/com/intellij/refactoring/EncapsulateFieldsTest.java +++ b/java/java-tests/testSrc/com/intellij/refactoring/EncapsulateFieldsTest.java @@ -113,8 +113,8 @@ public class EncapsulateFieldsTest extends MultiFileTestCase{ public FieldDescriptor[] getSelectedFields() { return new FieldDescriptor[]{new FieldDescriptorImpl( field, - PropertyUtil.suggestGetterName(project, field), - PropertyUtil.suggestSetterName(project, field), + PropertyUtil.suggestGetterName(field), + PropertyUtil.suggestSetterName(field), isToEncapsulateGet() ? PropertyUtil.generateGetterPrototype(field) : null, isToEncapsulateSet() ? PropertyUtil.generateSetterPrototype(field) : null )}; diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/gpp/GppReferenceContributor.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/gpp/GppReferenceContributor.java index ef9072bd97c2..c110707a4fa8 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/gpp/GppReferenceContributor.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/gpp/GppReferenceContributor.java @@ -92,7 +92,7 @@ public class GppReferenceContributor extends PsiReferenceContributor { if (setter != null) { applicable.add(new PsiElementResolveResult(setter)); } else { - final PsiField field = PropertyUtil.findPropertyField(psiClass.getProject(), psiClass, memberName, false); + final PsiField field = PropertyUtil.findPropertyField(psiClass, memberName, false); if (field != null) { applicable.add(new PsiElementResolveResult(field)); } diff --git a/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GroovyEncapsulateFieldHelper.java b/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GroovyEncapsulateFieldHelper.java index d7be9bf39c54..eeef75863630 100644 --- a/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GroovyEncapsulateFieldHelper.java +++ b/plugins/groovy/src/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GroovyEncapsulateFieldHelper.java @@ -61,13 +61,13 @@ public class GroovyEncapsulateFieldHelper extends EncapsulateFieldHelper { @Override @NotNull public String suggestSetterName(@NotNull PsiField field) { - return PropertyUtil.suggestSetterName(field.getProject(), field); + return PropertyUtil.suggestSetterName(field); } @Override @NotNull public String suggestGetterName(@NotNull PsiField field) { - return PropertyUtil.suggestGetterName(field.getProject(), field); + return PropertyUtil.suggestGetterName(field); } @Override diff --git a/plugins/groovy/test/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GrEncapsulateFieldsTest.groovy b/plugins/groovy/test/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GrEncapsulateFieldsTest.groovy index cc39826c44b9..f308eb478b7c 100644 --- a/plugins/groovy/test/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GrEncapsulateFieldsTest.groovy +++ b/plugins/groovy/test/org/jetbrains/plugins/groovy/refactoring/encapsulateFields/GrEncapsulateFieldsTest.groovy @@ -226,8 +226,8 @@ public class A { final Project project = myFixture.getProject() - if (!getterName) getterName = PropertyUtil.suggestGetterName(project, aField) - if (!setterName) setterName = PropertyUtil.suggestSetterName(project, aField) + if (!getterName) getterName = PropertyUtil.suggestGetterName(aField) + if (!setterName) setterName = PropertyUtil.suggestSetterName(aField) try { final EncapsulateFieldsDescriptor descriptor = createMockDescriptor(aClass, aField, generateGetters, generateSetters, getterName,