use of com.sun.javadoc.Tag in project RoboBinding by RoboBinding.
the class InlineLinkTagTranslator method getInlineLinkTags.
private List<SeeTag> getInlineLinkTags(Tag containingTag) {
List<SeeTag> linkTags = new ArrayList<SeeTag>();
Tag[] inlineTags = containingTag.inlineTags();
for (Tag tag : inlineTags) {
if ("@link".equals(tag.name())) {
linkTags.add((SeeTag) tag);
}
}
return linkTags;
}
use of com.sun.javadoc.Tag in project RoboBinding by RoboBinding.
the class PropTaglet method getTagletOutput.
public TagletOutput getTagletOutput(Doc doc, TagletWriter tagletWriter) throws IllegalArgumentException {
Tag[] tags = doc.tags(NAME);
if (tags.length == 0) {
return null;
}
TagletWriterImpl tagletWriterImpl = (TagletWriterImpl) tagletWriter;
StringBuilder sb = new StringBuilder();
sb.append("<table style=\"border: 2px solid gray\"><caption style=\"text-align:left\"><strong>Supported Properties</strong></caption><tr style=\"background-color:#555555; color: #ffffff\"><th>Name</th><th>Supported types</th><th>Two-ways?</th></tr>");
for (int i = 0; i < tags.length; i++) {
Tag tag = tags[i];
Prop prop = parser.parse(tag);
sb.append(MessageFormat.format("<tr style=\"background-color:{0}\"><td><strong>{1}</strong></td><td>{2}</td><td>{3}</td></tr>", (i % 2 == 0) ? "#eeeeef" : "#ffffff", prop.getName(), inlineLinkTagTranslator.translate(prop.getSupportedTypes(), tag, doc, tagletWriterImpl), prop.getSupportedBindingTypes()));
}
sb.append("</table></br>");
return new TagletOutputImpl(sb.toString());
}
use of com.sun.javadoc.Tag in project RoboBinding by RoboBinding.
the class PropParserTest method tag.
private Tag tag(String description) {
Tag mockTag = mock(Tag.class);
when(mockTag.text()).thenReturn(description);
return mockTag;
}
use of com.sun.javadoc.Tag in project RoboBinding by RoboBinding.
the class PropParserTest method whenParseInvalidTags_thenFailed.
@Test
public void whenParseInvalidTags_thenFailed() {
PropParser propParser = new PropParser();
Tag[] invalidTags = new Tag[] { tag("prop1; Type1, Type2, Type3"), tag("prop2; ; two-way; something else") };
for (Tag invalidTag : invalidTags) {
try {
propParser.parse(invalidTag);
fail("expected invalid tag exception");
} catch (RuntimeException e) {
}
}
}
use of com.sun.javadoc.Tag in project Orchid by JavaEden.
the class CommentParser method getInlineTags.
private JSONArray getInlineTags(Doc doc) {
JSONArray array = new JSONArray();
Tag[] tags = doc.inlineTags();
if (!EdenUtils.isEmpty(tags)) {
for (Tag tag : tags) {
JavadocInlineTagHandler handler = null;
for (JavadocInlineTagHandler tagHandler : inlineTagHandlers) {
if (("@" + tagHandler.getName()).equalsIgnoreCase(tag.kind())) {
handler = tagHandler;
break;
}
}
JSONObject result = new JSONObject();
if (handler != null) {
result.put("kind", handler.getName());
result.put("value", handler.processTag(tag).getElement());
} else {
result.put("kind", tag.kind().replaceAll("@", "").toLowerCase());
result.put("value", tag.text());
}
array.put(result);
}
}
return (array.length() > 0) ? array : null;
}
Aggregations