| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <title>APIResponse</title> |
| <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../../../../../script.js"></script> |
| |
| <link rel="shortcut icon" href="/img/microprofile-favicon.png"> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="APIResponse"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li>Prev Class</li> |
| <li><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponses.html" title="annotation in org.eclipse.microprofile.openapi.annotations.responses"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html" target="_top">Frames</a></li> |
| <li><a href="APIResponse.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Field | </li> |
| <li>Required | </li> |
| <li><a href="#annotation.type.optional.element.summary">Optional</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#annotation.type.element.detail">Element</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">org.eclipse.microprofile.openapi.annotations.responses</div> |
| <h2 title="Annotation Type APIResponse" class="title">Annotation Type APIResponse</h2> |
| </div> |
| <div class="contentContainer"> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <hr> |
| <br> |
| <pre>@Target(value=METHOD) |
| @Retention(value=RUNTIME) |
| @Inherited |
| @Repeatable(value=<a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponses.html" title="annotation in org.eclipse.microprofile.openapi.annotations.responses">APIResponses.class</a>) |
| public @interface <span class="memberNameLabel">APIResponse</span></pre> |
| <div class="block">The APIResponse annotation corresponds to the OpenAPI Response model object which |
| describes a single response from an API Operation, including design-time, |
| static links to operations based on the response. |
| <p> |
| When this annotation is applied to a JAX-RS method the response is added to the responses |
| defined in the corresponding OpenAPI operation. If the operation already has a |
| response with the specified responseCode the annotation on the method is ignored. |
| |
| <pre> |
| @APIResponse(responseCode="200", description="Calculate load size", content= |
| { @Content(mediaType="application/json", Schema=@Schema(type="integer")) } ) |
| @GET |
| public getLuggageWeight(Flight id) { |
| return getBagWeight(id) + getCargoWeight(id); |
| } |
| </pre> |
| <p> |
| When this annotation is applied to an <code>ExceptionMapper</code>, it allows developers |
| to describe the API response that will be added to a generated OpenAPI operation based |
| on a JAX-RS method that declares an <code>Exception</code> of the type handled by the |
| <code>ExceptionMapper</code>. |
| |
| <pre> |
| @Provider |
| public class NotFoundExceptionMapper implements ExceptionMapper<NotFoundException> { |
| @Override |
| @APIResponse(responseCode = "404", description = "Not Found") |
| public Response toResponse(NotFoundException t) { |
| return Response.status(404) |
| .type(MediaType.TEXT_PLAIN) |
| .entity("Not found") |
| .build(); |
| } |
| } |
| </pre></div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd>"https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.0.md#responseObject"</dd> |
| </dl> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- =========== ANNOTATION TYPE OPTIONAL MEMBER SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="annotation.type.optional.element.summary"> |
| <!-- --> |
| </a> |
| <h3>Optional Element Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Optional Element Summary table, listing optional elements, and an explanation"> |
| <caption><span>Optional Elements</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Optional Element and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/media/Content.html" title="annotation in org.eclipse.microprofile.openapi.annotations.media">Content</a>[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#content--">content</a></span></code> |
| <div class="block">An array containing descriptions of potential response payloads for different media types.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#description--">description</a></span></code> |
| <div class="block">A short description of the response.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/headers/Header.html" title="annotation in org.eclipse.microprofile.openapi.annotations.headers">Header</a>[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#headers--">headers</a></span></code> |
| <div class="block">An array of response headers.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/links/Link.html" title="annotation in org.eclipse.microprofile.openapi.annotations.links">Link</a>[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#links--">links</a></span></code> |
| <div class="block">An array of operation links that can be followed from the response.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#name--">name</a></span></code> |
| <div class="block">The unique name to identify this response.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#ref--">ref</a></span></code> |
| <div class="block">Reference value to a Response object.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>java.lang.String</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#responseCode--">responseCode</a></span></code> |
| <div class="block">The HTTP response code, or 'default', for the supplied response.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ ANNOTATION TYPE MEMBER DETAIL =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="annotation.type.element.detail"> |
| <!-- --> |
| </a> |
| <h3>Element Detail</h3> |
| <a name="description--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>description</h4> |
| <pre>public abstract java.lang.String description</pre> |
| <div class="block">A short description of the response. It is a REQUIRED property unless this is only a reference to a response instance.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>description of the response.</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>""</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="responseCode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>responseCode</h4> |
| <pre>public abstract java.lang.String responseCode</pre> |
| <div class="block">The HTTP response code, or 'default', for the supplied response. May only have 1 default entry.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>HTTP response code for this response instance or default</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>"default"</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="headers--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>headers</h4> |
| <pre>public abstract <a href="../../../../../../org/eclipse/microprofile/openapi/annotations/headers/Header.html" title="annotation in org.eclipse.microprofile.openapi.annotations.headers">Header</a>[] headers</pre> |
| <div class="block">An array of response headers. Allows additional information to be included with response. |
| <p> |
| RFC7230 states header names are case insensitive. If a response header is defined with the name "Content-Type", it SHALL be ignored.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>array of headers for this response instance</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>{}</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="links--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>links</h4> |
| <pre>public abstract <a href="../../../../../../org/eclipse/microprofile/openapi/annotations/links/Link.html" title="annotation in org.eclipse.microprofile.openapi.annotations.links">Link</a>[] links</pre> |
| <div class="block">An array of operation links that can be followed from the response.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>array of operation links for this response instance</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>{}</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="content--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>content</h4> |
| <pre>public abstract <a href="../../../../../../org/eclipse/microprofile/openapi/annotations/media/Content.html" title="annotation in org.eclipse.microprofile.openapi.annotations.media">Content</a>[] content</pre> |
| <div class="block">An array containing descriptions of potential response payloads for different media types.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>content of this response instance</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>{}</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="name--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>name</h4> |
| <pre>public abstract java.lang.String name</pre> |
| <div class="block">The unique name to identify this response. Only REQUIRED when the response is defined |
| within <a href="../../../../../../org/eclipse/microprofile/openapi/annotations/Components.html" title="annotation in org.eclipse.microprofile.openapi.annotations"><code>Components</code></a>. The name will |
| be used as the key to add this response to the 'responses' map for reuse.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>this response's name</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>""</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <ul class="blockList"> |
| <li class="blockList"><a name="ref--"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>ref</h4> |
| <pre>public abstract java.lang.String ref</pre> |
| <div class="block">Reference value to a Response object. |
| <p> |
| This property provides a reference to an object defined elsewhere. This property and |
| all other properties are mutually exclusive. If other properties are defined in addition |
| to the ref property then the result is undefined.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>reference to a response</dd> |
| </dl> |
| <dl> |
| <dt>Default:</dt> |
| <dd>""</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../../../help-doc.html">Help</a></li> |
| </ul> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li>Prev Class</li> |
| <li><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponses.html" title="annotation in org.eclipse.microprofile.openapi.annotations.responses"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html" target="_top">Frames</a></li> |
| <li><a href="APIResponse.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Field | </li> |
| <li>Required | </li> |
| <li><a href="#annotation.type.optional.element.summary">Optional</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li><a href="#annotation.type.element.detail">Element</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </body> |
| </html> |