Search in sources :

Example 1 with LinkImpl

use of org.wildfly.swarm.microprofile.openapi.api.models.links.LinkImpl in project wildfly-swarm by wildfly-swarm.

the class OpenApiAnnotationScanner method readLink.

/**
 * Reads a Link annotation into a model.
 * @param annotation
 */
private Link readLink(AnnotationInstance annotation) {
    if (annotation == null) {
        return null;
    }
    LOG.debug("Processing a single @Link annotation.");
    Link link = new LinkImpl();
    link.setOperationRef(JandexUtil.stringValue(annotation, OpenApiConstants.PROP_OPERATION_REF));
    link.setOperationId(JandexUtil.stringValue(annotation, OpenApiConstants.PROP_OPERATION_ID));
    link.setParameters(readLinkParameters(annotation.value(OpenApiConstants.PROP_PARAMETERS)));
    link.setDescription(JandexUtil.stringValue(annotation, OpenApiConstants.PROP_DESCRIPTION));
    link.setRequestBody(JandexUtil.stringValue(annotation, OpenApiConstants.PROP_REQUEST_BODY));
    link.setServer(readServer(annotation.value(OpenApiConstants.PROP_SERVER)));
    link.setRef(JandexUtil.refValue(annotation, RefType.Link));
    return link;
}
Also used : LinkImpl(org.wildfly.swarm.microprofile.openapi.api.models.links.LinkImpl) Link(org.eclipse.microprofile.openapi.models.links.Link)

Example 2 with LinkImpl

use of org.wildfly.swarm.microprofile.openapi.api.models.links.LinkImpl in project wildfly-swarm by wildfly-swarm.

the class OpenApiParser method readLink.

/**
 * Reads a {@link Link} OpenAPI node.
 * @param node
 */
private Link readLink(JsonNode node) {
    if (node == null || !node.isObject()) {
        return null;
    }
    LinkImpl model = new LinkImpl();
    model.setRef(JsonUtil.stringProperty(node, OpenApiConstants.PROP_$REF));
    model.setOperationRef(JsonUtil.stringProperty(node, OpenApiConstants.PROP_OPERATION_REF));
    model.setOperationId(JsonUtil.stringProperty(node, OpenApiConstants.PROP_OPERATION_ID));
    model.setParameters(readLinkParameters(node.get(OpenApiConstants.PROP_PARAMETERS)));
    model.setRequestBody(readObject(node.get(OpenApiConstants.PROP_REQUEST_BODY)));
    model.setDescription(JsonUtil.stringProperty(node, OpenApiConstants.PROP_DESCRIPTION));
    model.setServer(readServer(node.get(OpenApiConstants.PROP_SERVER)));
    readExtensions(node, model);
    return model;
}
Also used : LinkImpl(org.wildfly.swarm.microprofile.openapi.api.models.links.LinkImpl)

Aggregations

LinkImpl (org.wildfly.swarm.microprofile.openapi.api.models.links.LinkImpl)2 Link (org.eclipse.microprofile.openapi.models.links.Link)1