Search in sources :

Example 26 with Tag

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;
}
Also used : SeeTag(com.sun.javadoc.SeeTag) ArrayList(java.util.ArrayList) SeeTag(com.sun.javadoc.SeeTag) Tag(com.sun.javadoc.Tag)

Example 27 with Tag

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());
}
Also used : Tag(com.sun.javadoc.Tag) TagletOutputImpl(com.sun.tools.doclets.formats.html.TagletOutputImpl) TagletWriterImpl(com.sun.tools.doclets.formats.html.TagletWriterImpl)

Example 28 with Tag

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;
}
Also used : Tag(com.sun.javadoc.Tag)

Example 29 with Tag

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) {
        }
    }
}
Also used : Tag(com.sun.javadoc.Tag) Test(org.junit.Test)

Example 30 with Tag

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;
}
Also used : JSONObject(org.json.JSONObject) JSONArray(org.json.JSONArray) JavadocInlineTagHandler(com.eden.orchid.javadoc.api.JavadocInlineTagHandler) Tag(com.sun.javadoc.Tag)

Aggregations

Tag (com.sun.javadoc.Tag)40 ParamTag (com.sun.javadoc.ParamTag)14 SeeTag (com.sun.javadoc.SeeTag)12 ArrayList (java.util.ArrayList)7 List (java.util.List)6 Matcher (java.util.regex.Matcher)4 Test (org.junit.Test)4 ClassDoc (com.sun.javadoc.ClassDoc)3 MethodDoc (com.sun.javadoc.MethodDoc)3 TagletOutputImpl (com.sun.tools.doclets.formats.html.TagletOutputImpl)3 HashMap (java.util.HashMap)3 Parameter (com.sun.javadoc.Parameter)2 ThrowsTag (com.sun.javadoc.ThrowsTag)2 Type (com.sun.javadoc.Type)2 TagletWriterImpl (com.sun.tools.doclets.formats.html.TagletWriterImpl)2 RepresentationDocType (org.glassfish.jersey.server.wadl.internal.generators.resourcedoc.model.RepresentationDocType)2 JSONObject (org.json.JSONObject)2 JavadocInlineTagHandler (com.eden.orchid.javadoc.api.JavadocInlineTagHandler)1 ApiField (com.emc.apidocs.model.ApiField)1 PsiDocTag (com.intellij.psi.javadoc.PsiDocTag)1