void (PsiClass klass, String prefix, Map<String, String> mapping) { String thePrefix = prefix + klass.getName() + "."; for (PsiClass inner : klass.getInnerClasses()) { collectFields(inner, thePrefix, mapping); } for (PsiField field : klass.getFields()) { PsiCallExpression initializer = (PsiCallExpression)field.getInitializer(); PsiLiteralExpression arg = (PsiLiteralExpression)initializer.getArgumentList().getExpressions()[0]; mapping.put((String)arg.getValue(), thePrefix + field.getName()); } }