ParameterData (PsiParameter parameter, String setterPrefix, Map<String, ParameterData> result) { JavaCodeStyleManager styleManager = JavaCodeStyleManager.getInstance(parameter.getProject()); final String paramName = parameter.getName(); final String pureParamName = styleManager.variableNameToPropertyName(paramName, VariableKind.PARAMETER); String uniqueParamName = pureParamName; ParameterData parameterData = result.get(uniqueParamName); int i = 0; while (parameterData != null) { if (!Comparing.equal(parameter.getType(), parameterData.getType())) { uniqueParamName = pureParamName + i++; parameterData = result.get(uniqueParamName); } else { break; } } if (parameterData == null) { parameterData = new ParameterData(paramName, parameter.getType()); parameterData.setFieldName(styleManager.suggestVariableName(VariableKind.FIELD, uniqueParamName, null, parameter.getType()).names[0]); parameterData.setSetterName(PropertyUtilBase.suggestSetterName(uniqueParamName, setterPrefix)); result.put(uniqueParamName, parameterData); } return parameterData; }