| <!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,TYPE}) |
| @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 a JAX-RS resource class, the response is added to the responses defined in all |
| OpenAPI operations which correspond to a method on that class. If an operation already has a response with the |
| specified responseCode the response is not added to that operation. |
| |
| <p> |
| When this annotation is applied to an <code>ExceptionMapper</code> class or <code>toResponse</code> method, 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/extensions/Extension.html" title="annotation in org.eclipse.microprofile.openapi.annotations.extensions">Extension</a>[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/microprofile/openapi/annotations/responses/APIResponse.html#extensions--">extensions</a></span></code> |
| <div class="block">List of extensions to be added to the <a href="../../../../../../org/eclipse/microprofile/openapi/models/responses/APIResponse.html" title="interface in org.eclipse.microprofile.openapi.models.responses"><code>APIResponse</code></a> model corresponding to the containing annotation.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <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="altColor"> |
| <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="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#name--">name</a></span></code> |
| <div class="block">The unique name to identify this 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#ref--">ref</a></span></code> |
| <div class="block">Reference value to a Response object.</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#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="blockList"> |
| <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> |
| <ul class="blockList"> |
| <li class="blockList"><a name="extensions--"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>extensions</h4> |
| <pre>public abstract <a href="../../../../../../org/eclipse/microprofile/openapi/annotations/extensions/Extension.html" title="annotation in org.eclipse.microprofile.openapi.annotations.extensions">Extension</a>[] extensions</pre> |
| <div class="block">List of extensions to be added to the <a href="../../../../../../org/eclipse/microprofile/openapi/models/responses/APIResponse.html" title="interface in org.eclipse.microprofile.openapi.models.responses"><code>APIResponse</code></a> model corresponding to the containing annotation.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>array of extensions</dd> |
| <dt><span class="simpleTagLabel">Since:</span></dt> |
| <dd>3.1</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> |