for (FieldDoc fieldDoc : classDoc.fields())
{
if (!fieldDoc.isTransient() && !fieldDoc.isStatic() && !hasAnnotation(fieldDoc, SchemaIgnore.class))
{
SchemaFieldDoc schemaFieldDoc = new SchemaFieldDoc();
schemaFieldDoc.setFieldName(fieldDoc.name());
schemaFieldDoc.setFieldTitle(getTitle(fieldDoc));
Doc docForField = fieldDoc;
String originalText = fieldDoc.commentText();
Tag[] originalInlineTags = fieldDoc.inlineTags();
boolean revertInlineTags = false;
if (fieldDocOverrides.containsKey(fieldDoc.name()))
{
docForField.setRawCommentText(fieldDocOverrides.get(fieldDoc.name()));
//this sucks, but setting the comment text does NOT clear the tag cache
Class docImpl = fieldDoc.getClass().getSuperclass().getSuperclass().getSuperclass();
Field inlineTagsField = docImpl.getDeclaredField("inlineTags");
inlineTagsField.setAccessible(true);
inlineTagsField.set(docForField,null);
revertInlineTags = true;
}
else if (Strings.isNullOrEmpty(fieldDoc.commentText()))
{
MethodDoc accessor = findFieldAccessor(classDoc, fieldDoc);
if (null != accessor && !Strings.isNullOrEmpty(accessor.commentText()))
{
docForField = accessor;
}
}
schemaFieldDoc.setFieldDocs(getDocWithIncludes(docForField));
schemaFieldDocs.add(schemaFieldDoc);
if(revertInlineTags)
{