private static void addAnnotation(StringBuffer buf, IJavaElement element, IAnnotationBinding annotation) throws URISyntaxException { IJavaElement javaElement= annotation.getAnnotationType().getJavaElement(); buf.append('@'); if (javaElement != null) { String uri= JavaElementLinks.createURI(JavaElementLinks.JAVADOC_SCHEME, javaElement); addLink(buf, uri, annotation.getName()); } else { buf.append(annotation.getName()); } IMemberValuePairBinding[] mvPairs= annotation.getDeclaredMemberValuePairs(); if (mvPairs.length > 0) { buf.append('('); for (int j= 0; j < mvPairs.length; j++) { if (j > 0) { buf.append(JavaElementLabels.COMMA_STRING); } IMemberValuePairBinding mvPair= mvPairs[j]; String memberURI= JavaElementLinks.createURI(JavaElementLinks.JAVADOC_SCHEME, mvPair.getMethodBinding().getJavaElement()); addLink(buf, memberURI, mvPair.getName()); buf.append('='); addValue(buf, element, mvPair.getValue()); } buf.append(')'); } }
private static void addAnnotation(StringBuffer buf, IAnnotationBinding annotation, boolean addLinks) throws URISyntaxException { IJavaElement javaElement= annotation.getAnnotationType().getJavaElement(); buf.append('@'); if (javaElement == null || !addLinks) { buf.append(annotation.getName()); } else { String uri= JavaElementLinks.createURI(JavaElementLinks.JAVADOC_SCHEME, javaElement); addLink(buf, uri, annotation.getName()); } IMemberValuePairBinding[] mvPairs= annotation.getDeclaredMemberValuePairs(); if (mvPairs.length > 0) { buf.append('('); for (int j= 0; j < mvPairs.length; j++) { if (j > 0) { buf.append(JavaElementLabels.COMMA_STRING); } IMemberValuePairBinding mvPair= mvPairs[j]; if (addLinks) { String memberURI= JavaElementLinks.createURI(JavaElementLinks.JAVADOC_SCHEME, mvPair.getMethodBinding().getJavaElement()); addLink(buf, memberURI, mvPair.getName()); } else { buf.append(mvPair.getName()); } buf.append('='); addValue(buf, mvPair.getValue(), addLinks); } buf.append(')'); } }