void (UAnnotation annotation, UAnnotated annotated) { if (annotated != null) { PsiElement annotatedSrc = annotated.getSourcePsi(); final WritableRefElement element = (WritableRefElement)myRefManager.getReference(annotatedSrc); if (element != null) { StringBuilder buf = new StringBuilder(); final List<UNamedExpression> nameValuePairs = annotation.getAttributeValues(); for (UNamedExpression nameValuePair : nameValuePairs) { UExpression value = nameValuePair.getExpression(); if (value instanceof ULiteralExpression) { Object val = ((ULiteralExpression)value).getValue(); if (val instanceof String) { buf.append(",").append(String.valueOf(val).replaceAll("[{}\"]", "")); } } else if (value instanceof UCallExpression && ((UCallExpression)value).getKind() == UastCallKind.NESTED_ARRAY_INITIALIZER) { for (UExpression argument : ((UCallExpression)value).getValueArguments()) { if (argument instanceof ULiteralExpression) { Object val = ((ULiteralExpression)argument).getValue(); if (val instanceof String) { buf.append(",").append(val); } } } } } if (!buf.isEmpty()) { String suppressId = buf.substring(1); element.addSuppression(suppressId); if (annotatedSrc instanceof PsiField) { addSuppressionsForSiblings((PsiField)annotatedSrc, suppressId); } } } } }