mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
cleanup PropertyUtil
This commit is contained in:
+2
-2
@@ -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);
|
||||
|
||||
+2
-2
@@ -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
|
||||
|
||||
+3
-2
@@ -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 + "();",
|
||||
|
||||
@@ -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)) {
|
||||
|
||||
@@ -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)");
|
||||
|
||||
+1
-1
@@ -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));
|
||||
|
||||
@@ -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<PsiField> 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) {
|
||||
|
||||
@@ -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 {
|
||||
|
||||
@@ -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
|
||||
)};
|
||||
|
||||
@@ -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));
|
||||
}
|
||||
|
||||
+2
-2
@@ -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
|
||||
|
||||
+2
-2
@@ -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,
|
||||
|
||||
Reference in New Issue
Block a user