Search in sources :

Example 1 with TagImpl

use of org.wildfly.swarm.microprofile.openapi.api.models.tags.TagImpl in project wildfly-swarm by wildfly-swarm.

the class OpenApiAnnotationScanner method readTag.

/**
 * Reads a single Tag annotation.
 * @param tagAnno
 */
private Tag readTag(AnnotationInstance tagAnno) {
    if (tagAnno == null) {
        return null;
    }
    LOG.debug("Processing a single @Tag annotation.");
    TagImpl tag = new TagImpl();
    tag.setName(JandexUtil.stringValue(tagAnno, OpenApiConstants.PROP_NAME));
    tag.setDescription(JandexUtil.stringValue(tagAnno, OpenApiConstants.PROP_DESCRIPTION));
    tag.setExternalDocs(readExternalDocs(tagAnno.value(OpenApiConstants.PROP_EXTERNAL_DOCS)));
    return tag;
}
Also used : TagImpl(org.wildfly.swarm.microprofile.openapi.api.models.tags.TagImpl)

Example 2 with TagImpl

use of org.wildfly.swarm.microprofile.openapi.api.models.tags.TagImpl in project wildfly-swarm by wildfly-swarm.

the class OpenApiParser method readTags.

/**
 * Reads a list of {@link Tag} OpenAPI nodes.
 * @param node
 */
private List<Tag> readTags(JsonNode node) {
    if (node == null || !node.isArray()) {
        return null;
    }
    ArrayNode nodes = (ArrayNode) node;
    List<Tag> rval = new ArrayList<>(nodes.size());
    for (JsonNode tagNode : nodes) {
        TagImpl model = new TagImpl();
        model.setName(JsonUtil.stringProperty(tagNode, OpenApiConstants.PROP_NAME));
        model.setDescription(JsonUtil.stringProperty(tagNode, OpenApiConstants.PROP_DESCRIPTION));
        model.setExternalDocs(readExternalDocs(tagNode.get(OpenApiConstants.PROP_EXTERNAL_DOCS)));
        readExtensions(tagNode, model);
        rval.add(model);
    }
    return rval;
}
Also used : TagImpl(org.wildfly.swarm.microprofile.openapi.api.models.tags.TagImpl) ArrayList(java.util.ArrayList) JsonNode(com.fasterxml.jackson.databind.JsonNode) ArrayNode(com.fasterxml.jackson.databind.node.ArrayNode) Tag(org.eclipse.microprofile.openapi.models.tags.Tag)

Aggregations

TagImpl (org.wildfly.swarm.microprofile.openapi.api.models.tags.TagImpl)2 JsonNode (com.fasterxml.jackson.databind.JsonNode)1 ArrayNode (com.fasterxml.jackson.databind.node.ArrayNode)1 ArrayList (java.util.ArrayList)1 Tag (org.eclipse.microprofile.openapi.models.tags.Tag)1