<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>Response</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Response";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":9,"i1":9,"i2":6,"i3":6,"i4":9,"i5":9,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":10,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":9,"i28":9,"i29":9,"i30":9,"i31":9,"i32":9,"i33":9,"i34":9,"i35":9,"i36":9,"i37":6,"i38":6,"i39":6,"i40":6,"i41":9,"i42":9,"i43":9,"i44":9,"i45":9,"i46":9,"i47":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</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><a href="../../../../javax/ws/rs/core/Request.html" title="interface in javax.ws.rs.core"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?javax/ws/rs/core/Response.html" target="_top">Frames</a></li>
<li><a href="Response.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</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">javax.ws.rs.core</div>
<h2 title="Class Response" class="title">Class Response</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>javax.ws.rs.core.Response</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>java.lang.AutoCloseable</dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">Response</span>
extends java.lang.Object
implements java.lang.AutoCloseable</pre>
<div class="block">Defines the contract between a returned instance and the runtime when
 an application needs to provide meta-data to the runtime.
 <p>
 An application class should not extend this class directly. <code>Response</code> class is
 reserved for an extension by a JAX-RS implementation providers. An application should use one
 of the static methods to create a <code>Response</code> instance using a ResponseBuilder.
 </p>
 <p>
 Several methods have parameters of type URI, <a href="../../../../javax/ws/rs/core/UriBuilder.html" title="class in javax.ws.rs.core"><code>UriBuilder</code></a> provides
 convenient methods to create such values as does <code>URI.create(java.lang.String)</code>.
 </p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>1.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core"><code>Response.ResponseBuilder</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></span></code>
<div class="block">A class used to build Response instances that contain metadata instead
 of or in addition to an entity.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>static class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.Status.html" title="enum in javax.ws.rs.core">Response.Status</a></span></code>
<div class="block">Commonly used status codes defined by HTTP, see
 <a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10">HTTP/1.1 documentation</a>
 for the complete list.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static interface&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.StatusType.html" title="interface in javax.ws.rs.core">Response.StatusType</a></span></code>
<div class="block">Base interface for statuses used in responses.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colLast" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#Response--">Response</a></span>()</code>
<div class="block">Protected constructor, use one of the static methods to obtain a
 <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core"><code>Response.ResponseBuilder</code></a> instance and obtain a Response from that.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#accepted--">accepted</a></span>()</code>
<div class="block">Create a new ResponseBuilder with an ACCEPTED status.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#accepted-java.lang.Object-">accepted</a></span>(java.lang.Object&nbsp;entity)</code>
<div class="block">Create a new ResponseBuilder with an ACCEPTED status that contains
 a representation.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--">bufferEntity</a></span>()</code>
<div class="block">Buffer the message entity data.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#close--">close</a></span>()</code>
<div class="block">Close the underlying message entity input stream (if available and open)
 as well as releases any other resources associated with the response
 (e.g.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#created-java.net.URI-">created</a></span>(java.net.URI&nbsp;location)</code>
<div class="block">Create a new ResponseBuilder for a created resource, set the location
 header using the supplied value.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#fromResponse-javax.ws.rs.core.Response-">fromResponse</a></span>(<a href="../../../../javax/ws/rs/core/Response.html" title="class in javax.ws.rs.core">Response</a>&nbsp;response)</code>
<div class="block">Create a new ResponseBuilder by performing a shallow copy of an
 existing Response.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>abstract java.util.Set&lt;java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getAllowedMethods--">getAllowedMethods</a></span>()</code>
<div class="block">Get the allowed HTTP methods from the Allow HTTP header.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>abstract java.util.Map&lt;java.lang.String,<a href="../../../../javax/ws/rs/core/NewCookie.html" title="class in javax.ws.rs.core">NewCookie</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getCookies--">getCookies</a></span>()</code>
<div class="block">Get any new cookies set on the response message.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>abstract java.util.Date</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getDate--">getDate</a></span>()</code>
<div class="block">Get message date.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>abstract java.lang.Object</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getEntity--">getEntity</a></span>()</code>
<div class="block">Get the message entity Java instance.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/EntityTag.html" title="class in javax.ws.rs.core">EntityTag</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getEntityTag--">getEntityTag</a></span>()</code>
<div class="block">Get the entity tag.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><a href="../../../../javax/ws/rs/core/MultivaluedMap.html" title="interface in javax.ws.rs.core">MultivaluedMap</a>&lt;java.lang.String,java.lang.Object&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getHeaders--">getHeaders</a></span>()</code>
<div class="block">Get view of the response headers and their object values.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>abstract java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getHeaderString-java.lang.String-">getHeaderString</a></span>(java.lang.String&nbsp;name)</code>
<div class="block">Get a message header as a single string value.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>abstract java.util.Locale</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLanguage--">getLanguage</a></span>()</code>
<div class="block">Get the language of the message entity.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>abstract java.util.Date</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLastModified--">getLastModified</a></span>()</code>
<div class="block">Get the last modified date.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLength--">getLength</a></span>()</code>
<div class="block">Get Content-Length value.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/Link.html" title="class in javax.ws.rs.core">Link</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLink-java.lang.String-">getLink</a></span>(java.lang.String&nbsp;relation)</code>
<div class="block">Get the link for the relation.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/Link.Builder.html" title="interface in javax.ws.rs.core">Link.Builder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLinkBuilder-java.lang.String-">getLinkBuilder</a></span>(java.lang.String&nbsp;relation)</code>
<div class="block">Convenience method that returns a <a href="../../../../javax/ws/rs/core/Link.Builder.html" title="interface in javax.ws.rs.core"><code>Link.Builder</code></a> for the relation.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>abstract java.util.Set&lt;<a href="../../../../javax/ws/rs/core/Link.html" title="class in javax.ws.rs.core">Link</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLinks--">getLinks</a></span>()</code>
<div class="block">Get the links attached to the message as headers.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>abstract java.net.URI</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getLocation--">getLocation</a></span>()</code>
<div class="block">Get the location.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/MediaType.html" title="class in javax.ws.rs.core">MediaType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getMediaType--">getMediaType</a></span>()</code>
<div class="block">Get the media type of the message entity.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/MultivaluedMap.html" title="interface in javax.ws.rs.core">MultivaluedMap</a>&lt;java.lang.String,java.lang.Object&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getMetadata--">getMetadata</a></span>()</code>
<div class="block">See <a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>getHeaders()</code></a>.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>abstract int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getStatus--">getStatus</a></span>()</code>
<div class="block">Get the status code associated with the response.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/Response.StatusType.html" title="interface in javax.ws.rs.core">Response.StatusType</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getStatusInfo--">getStatusInfo</a></span>()</code>
<div class="block">Get the complete status information associated with the response.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/core/MultivaluedMap.html" title="interface in javax.ws.rs.core">MultivaluedMap</a>&lt;java.lang.String,java.lang.String&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#getStringHeaders--">getStringHeaders</a></span>()</code>
<div class="block">Get view of the response headers and their string values.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#hasEntity--">hasEntity</a></span>()</code>
<div class="block">Check if there is an entity available in the response.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>abstract boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#hasLink-java.lang.String-">hasLink</a></span>(java.lang.String&nbsp;relation)</code>
<div class="block">Check if link for relation exists.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#noContent--">noContent</a></span>()</code>
<div class="block">Create a new ResponseBuilder for an empty response.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#notAcceptable-java.util.List-">notAcceptable</a></span>(java.util.List&lt;<a href="../../../../javax/ws/rs/core/Variant.html" title="class in javax.ws.rs.core">Variant</a>&gt;&nbsp;variants)</code>
<div class="block">Create a new ResponseBuilder for a not acceptable response.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#notModified--">notModified</a></span>()</code>
<div class="block">Create a new ResponseBuilder with a not-modified status.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#notModified-javax.ws.rs.core.EntityTag-">notModified</a></span>(<a href="../../../../javax/ws/rs/core/EntityTag.html" title="class in javax.ws.rs.core">EntityTag</a>&nbsp;tag)</code>
<div class="block">Create a new ResponseBuilder with a not-modified status.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#notModified-java.lang.String-">notModified</a></span>(java.lang.String&nbsp;tag)</code>
<div class="block">Create a new ResponseBuilder with a not-modified status
 and a strong entity tag.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#ok--">ok</a></span>()</code>
<div class="block">Create a new ResponseBuilder with an OK status.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#ok-java.lang.Object-">ok</a></span>(java.lang.Object&nbsp;entity)</code>
<div class="block">Create a new ResponseBuilder that contains a representation.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#ok-java.lang.Object-javax.ws.rs.core.MediaType-">ok</a></span>(java.lang.Object&nbsp;entity,
  <a href="../../../../javax/ws/rs/core/MediaType.html" title="class in javax.ws.rs.core">MediaType</a>&nbsp;type)</code>
<div class="block">Create a new ResponseBuilder that contains a representation.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#ok-java.lang.Object-java.lang.String-">ok</a></span>(java.lang.Object&nbsp;entity,
  java.lang.String&nbsp;type)</code>
<div class="block">Create a new ResponseBuilder that contains a representation.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#ok-java.lang.Object-javax.ws.rs.core.Variant-">ok</a></span>(java.lang.Object&nbsp;entity,
  <a href="../../../../javax/ws/rs/core/Variant.html" title="class in javax.ws.rs.core">Variant</a>&nbsp;variant)</code>
<div class="block">Create a new ResponseBuilder that contains a representation.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#readEntity-java.lang.Class-">readEntity</a></span>(java.lang.Class&lt;T&gt;&nbsp;entityType)</code>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#readEntity-java.lang.Class-java.lang.annotation.Annotation:A-">readEntity</a></span>(java.lang.Class&lt;T&gt;&nbsp;entityType,
          java.lang.annotation.Annotation[]&nbsp;annotations)</code>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#readEntity-javax.ws.rs.core.GenericType-">readEntity</a></span>(<a href="../../../../javax/ws/rs/core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;entityType)</code>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>abstract &lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#readEntity-javax.ws.rs.core.GenericType-java.lang.annotation.Annotation:A-">readEntity</a></span>(<a href="../../../../javax/ws/rs/core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;entityType,
          java.lang.annotation.Annotation[]&nbsp;annotations)</code>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#seeOther-java.net.URI-">seeOther</a></span>(java.net.URI&nbsp;location)</code>
<div class="block">Create a new ResponseBuilder for a redirection.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#serverError--">serverError</a></span>()</code>
<div class="block">Create a new ResponseBuilder with an server error status.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#status-int-">status</a></span>(int&nbsp;status)</code>
<div class="block">Create a new ResponseBuilder with the supplied status.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#status-int-java.lang.String-">status</a></span>(int&nbsp;status,
      java.lang.String&nbsp;reasonPhrase)</code>
<div class="block">Create a new ResponseBuilder with the supplied status and reason phrase.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#status-javax.ws.rs.core.Response.Status-">status</a></span>(<a href="../../../../javax/ws/rs/core/Response.Status.html" title="enum in javax.ws.rs.core">Response.Status</a>&nbsp;status)</code>
<div class="block">Create a new ResponseBuilder with the supplied status.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#status-javax.ws.rs.core.Response.StatusType-">status</a></span>(<a href="../../../../javax/ws/rs/core/Response.StatusType.html" title="interface in javax.ws.rs.core">Response.StatusType</a>&nbsp;status)</code>
<div class="block">Create a new ResponseBuilder with the supplied status.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/core/Response.html#temporaryRedirect-java.net.URI-">temporaryRedirect</a></span>(java.net.URI&nbsp;location)</code>
<div class="block">Create a new ResponseBuilder for a temporary redirection.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="Response--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>Response</h4>
<pre>protected&nbsp;Response()</pre>
<div class="block">Protected constructor, use one of the static methods to obtain a
 <a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core"><code>Response.ResponseBuilder</code></a> instance and obtain a Response from that.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="getStatus--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStatus</h4>
<pre>public abstract&nbsp;int&nbsp;getStatus()</pre>
<div class="block">Get the status code associated with the response.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the response status code.</dd>
</dl>
</li>
</ul>
<a name="getStatusInfo--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStatusInfo</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/Response.StatusType.html" title="interface in javax.ws.rs.core">Response.StatusType</a>&nbsp;getStatusInfo()</pre>
<div class="block">Get the complete status information associated with the response.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the response status information. The returned value is never
         <code>null</code>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getEntity--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntity</h4>
<pre>public abstract&nbsp;java.lang.Object&nbsp;getEntity()</pre>
<div class="block">Get the message entity Java instance. Returns <code>null</code> if the message
 does not contain an entity body.
 <p>
 If the entity is represented by an un-consumed <code>input stream</code>
 the method will return the input stream.
 </p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message entity or <code>null</code> if message does not contain an
         entity body (i.e. when <a href="../../../../javax/ws/rs/core/Response.html#hasEntity--"><code>hasEntity()</code></a> returns <code>false</code>).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - if the entity was previously fully consumed
                               as an <code>input stream</code>, or
                               if the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a>.</dd>
</dl>
</li>
</ul>
<a name="readEntity-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readEntity</h4>
<pre>public abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;readEntity(java.lang.Class&lt;T&gt;&nbsp;entityType)</pre>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.
 <p>
 Method throws an <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> if the content of the
 message cannot be mapped to an entity of the requested type and
 <code>IllegalStateException</code> in case the entity is not backed by an input
 stream or if the original entity input stream has already been consumed
 without <a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--"><code>buffering</code></a> the entity data prior consuming.
 </p>
 <p>
 A message instance returned from this method will be cached for
 subsequent retrievals via <a href="../../../../javax/ws/rs/core/Response.html#getEntity--"><code>getEntity()</code></a>. Unless the supplied entity
 type is an <code>input stream</code>, this method automatically
 <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closes</code></a> the an unconsumed original response entity data stream
 if open. In case the entity data has been buffered, the buffer will be reset
 prior consuming the buffered data to enable subsequent invocations of
 <code>readEntity(...)</code> methods on this response.
 </p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - entity instance Java type.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entityType</code> - the type of entity.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message entity; for a zero-length response entities returns a corresponding
         Java object that represents zero-length data. In case no zero-length representation
         is defined for the Java type, a <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> wrapping the
         underlying <a href="../../../../javax/ws/rs/core/NoContentException.html" title="class in javax.ws.rs.core"><code>NoContentException</code></a> is thrown.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - if the content of the message cannot be
                               mapped to an entity of the requested type.</dd>
<dd><code>java.lang.IllegalStateException</code> - if the entity is not backed by an input stream,
                               the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a> already,
                               or if the entity input stream has been fully consumed already and has
                               not been buffered prior consuming.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a></dd>
</dl>
</li>
</ul>
<a name="readEntity-javax.ws.rs.core.GenericType-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readEntity</h4>
<pre>public abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;readEntity(<a href="../../../../javax/ws/rs/core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;entityType)</pre>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.
 <p>
 Method throws an <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> if the content of the
 message cannot be mapped to an entity of the requested type and
 <code>IllegalStateException</code> in case the entity is not backed by an input
 stream or if the original entity input stream has already been consumed
 without <a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--"><code>buffering</code></a> the entity data prior consuming.
 </p>
 <p>
 A message instance returned from this method will be cached for
 subsequent retrievals via <a href="../../../../javax/ws/rs/core/Response.html#getEntity--"><code>getEntity()</code></a>. Unless the supplied entity
 type is an <code>input stream</code>, this method automatically
 <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closes</code></a> the an unconsumed original response entity data stream
 if open. In case the entity data has been buffered, the buffer will be reset
 prior consuming the buffered data to enable subsequent invocations of
 <code>readEntity(...)</code> methods on this response.
 </p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - entity instance Java type.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entityType</code> - the type of entity; may be generic.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message entity; for a zero-length response entities returns a corresponding
         Java object that represents zero-length data. In case no zero-length representation
         is defined for the Java type, a <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> wrapping the
         underlying <a href="../../../../javax/ws/rs/core/NoContentException.html" title="class in javax.ws.rs.core"><code>NoContentException</code></a> is thrown.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - if the content of the message cannot be
                               mapped to an entity of the requested type.</dd>
<dd><code>java.lang.IllegalStateException</code> - if the entity is not backed by an input stream,
                               the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a> already,
                               or if the entity input stream has been fully consumed already and has
                               not been buffered prior consuming.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a></dd>
</dl>
</li>
</ul>
<a name="readEntity-java.lang.Class-java.lang.annotation.Annotation:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readEntity</h4>
<pre>public abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;readEntity(java.lang.Class&lt;T&gt;&nbsp;entityType,
                                 java.lang.annotation.Annotation[]&nbsp;annotations)</pre>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.
 <p>
 Method throws an <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> if the content of the
 message cannot be mapped to an entity of the requested type and
 <code>IllegalStateException</code> in case the entity is not backed by an input
 stream or if the original entity input stream has already been consumed
 without <a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--"><code>buffering</code></a> the entity data prior consuming.
 </p>
 <p>
 A message instance returned from this method will be cached for
 subsequent retrievals via <a href="../../../../javax/ws/rs/core/Response.html#getEntity--"><code>getEntity()</code></a>. Unless the supplied entity
 type is an <code>input stream</code>, this method automatically
 <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closes</code></a> the an unconsumed original response entity data stream
 if open. In case the entity data has been buffered, the buffer will be reset
 prior consuming the buffered data to enable subsequent invocations of
 <code>readEntity(...)</code> methods on this response.
 </p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - entity instance Java type.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entityType</code> - the type of entity.</dd>
<dd><code>annotations</code> - annotations that will be passed to the <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message entity; for a zero-length response entities returns a corresponding
         Java object that represents zero-length data. In case no zero-length representation
         is defined for the Java type, a <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> wrapping the
         underlying <a href="../../../../javax/ws/rs/core/NoContentException.html" title="class in javax.ws.rs.core"><code>NoContentException</code></a> is thrown.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - if the content of the message cannot be
                               mapped to an entity of the requested type.</dd>
<dd><code>java.lang.IllegalStateException</code> - if the entity is not backed by an input stream,
                               the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a> already,
                               or if the entity input stream has been fully consumed already and has
                               not been buffered prior consuming.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a></dd>
</dl>
</li>
</ul>
<a name="readEntity-javax.ws.rs.core.GenericType-java.lang.annotation.Annotation:A-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readEntity</h4>
<pre>public abstract&nbsp;&lt;T&gt;&nbsp;T&nbsp;readEntity(<a href="../../../../javax/ws/rs/core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;entityType,
                                 java.lang.annotation.Annotation[]&nbsp;annotations)</pre>
<div class="block">Read the message entity input stream as an instance of specified Java type
 using a <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a> that supports mapping the
 message entity stream onto the requested type.
 <p>
 Method throws an <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> if the content of the
 message cannot be mapped to an entity of the requested type and
 <code>IllegalStateException</code> in case the entity is not backed by an input
 stream or if the original entity input stream has already been consumed
 without <a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--"><code>buffering</code></a> the entity data prior consuming.
 </p>
 <p>
 A message instance returned from this method will be cached for
 subsequent retrievals via <a href="../../../../javax/ws/rs/core/Response.html#getEntity--"><code>getEntity()</code></a>. Unless the supplied entity
 type is an <code>input stream</code>, this method automatically
 <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closes</code></a> the an unconsumed original response entity data stream
 if open. In case the entity data has been buffered, the buffer will be reset
 prior consuming the buffered data to enable subsequent invocations of
 <code>readEntity(...)</code> methods on this response.
 </p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - entity instance Java type.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entityType</code> - the type of entity; may be generic.</dd>
<dd><code>annotations</code> - annotations that will be passed to the <a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message entity; for a zero-length response entities returns a corresponding
         Java object that represents zero-length data. In case no zero-length representation
         is defined for the Java type, a <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> wrapping the
         underlying <a href="../../../../javax/ws/rs/core/NoContentException.html" title="class in javax.ws.rs.core"><code>NoContentException</code></a> is thrown.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - if the content of the message cannot be
                               mapped to an entity of the requested type.</dd>
<dd><code>java.lang.IllegalStateException</code> - if the entity is not backed by an input stream,
                               the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a> already,
                               or if the entity input stream has been fully consumed already and has
                               not been buffered prior consuming.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/ext/MessageBodyReader.html" title="interface in javax.ws.rs.ext"><code>MessageBodyReader</code></a></dd>
</dl>
</li>
</ul>
<a name="hasEntity--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasEntity</h4>
<pre>public abstract&nbsp;boolean&nbsp;hasEntity()</pre>
<div class="block">Check if there is an entity available in the response. The method returns
 <code>true</code> if the entity is present, returns <code>false</code> otherwise.
 <p>
 Note that the method may return <code>true</code> also for response messages with
 a zero-length content, in case the <code><a href="../../../../javax/ws/rs/core/HttpHeaders.html#CONTENT_LENGTH">"Content-Length"</a></code> and
 <code><a href="../../../../javax/ws/rs/core/HttpHeaders.html#CONTENT_TYPE">"Content-Type"</a></code> headers are specified in the message.
 In such case, an attempt to read the entity using one of the <code>readEntity(...)</code>
 methods will return a corresponding instance representing a zero-length entity for a
 given Java type or produce a <a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> in case no such instance
 is available for the Java type.
 </p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if there is an entity present in the message,
         <code>false</code> otherwise.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - in case the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="bufferEntity--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bufferEntity</h4>
<pre>public abstract&nbsp;boolean&nbsp;bufferEntity()</pre>
<div class="block">Buffer the message entity data.
 <p>
 In case the message entity is backed by an unconsumed entity input stream,
 all the bytes of the original entity input stream are read and stored in a
 local buffer. The original entity input stream is consumed and automatically
 closed as part of the operation and the method returns <code>true</code>.
 </p>
 <p>
 In case the response entity instance is not backed by an unconsumed input stream
 an invocation of <code>bufferEntity</code> method is ignored and the method returns
 <code>false</code>.
 </p>
 <p>
 This operation is idempotent, i.e. it can be invoked multiple times with
 the same effect which also means that calling the <code>bufferEntity()</code>
 method on an already buffered (and thus closed) message instance is legal
 and has no further effect. Also, the result returned by the <code>bufferEntity()</code>
 method is consistent across all invocations of the method on the same
 <code>Response</code> instance.
 </p>
 <p>
 Buffering the message entity data allows for multiple invocations of
 <code>readEntity(...)</code> methods on the response instance. Note however, that
 once the response instance itself is <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a>, the implementations
 are expected to release the buffered message entity data too. Therefore any subsequent
 attempts to read a message entity stream on such closed response will result in an
 <code>IllegalStateException</code> being thrown.
 </p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the message entity input stream was available and
         was buffered successfully, returns <code>false</code> if the entity stream
         was not available.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - if there was an error while buffering the entity
                               input stream.</dd>
<dd><code>java.lang.IllegalStateException</code> - in case the response has been <a href="../../../../javax/ws/rs/core/Response.html#close--"><code>closed</code></a>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="close--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>public abstract&nbsp;void&nbsp;close()</pre>
<div class="block">Close the underlying message entity input stream (if available and open)
 as well as releases any other resources associated with the response
 (e.g. <a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--"><code>buffered message entity data</code></a>).
 <p>
 This operation is idempotent, i.e. it can be invoked multiple times with the
 same effect which also means that calling the <code>close()</code> method on an
 already closed message instance is legal and has no further effect.
 </p>
 <p>
 The <code>close()</code> method should be invoked on all instances that
 contain an un-consumed entity input stream to ensure the resources associated
 with the instance are properly cleaned-up and prevent potential memory leaks.
 This is typical for client-side scenarios where application layer code
 processes only the response headers and ignores the response entity.
 </p>
 <p>
 Any attempts to manipulate (read, get, buffer) a message entity on a closed response
 will result in an <code>IllegalStateException</code> being thrown.
 </p></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>close</code>&nbsp;in interface&nbsp;<code>java.lang.AutoCloseable</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - if there is an error closing the response.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getMediaType--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMediaType</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/MediaType.html" title="class in javax.ws.rs.core">MediaType</a>&nbsp;getMediaType()</pre>
<div class="block">Get the media type of the message entity.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the media type or <code>null</code> if there is no response entity.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLanguage--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLanguage</h4>
<pre>public abstract&nbsp;java.util.Locale&nbsp;getLanguage()</pre>
<div class="block">Get the language of the message entity.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the language of the entity or null if not specified.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLength--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLength</h4>
<pre>public abstract&nbsp;int&nbsp;getLength()</pre>
<div class="block">Get Content-Length value.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Content-Length as integer if present and valid number. In other
         cases returns <code>-1</code>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getAllowedMethods--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllowedMethods</h4>
<pre>public abstract&nbsp;java.util.Set&lt;java.lang.String&gt;&nbsp;getAllowedMethods()</pre>
<div class="block">Get the allowed HTTP methods from the Allow HTTP header.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the allowed HTTP methods, all methods will returned as upper case
         strings.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getCookies--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCookies</h4>
<pre>public abstract&nbsp;java.util.Map&lt;java.lang.String,<a href="../../../../javax/ws/rs/core/NewCookie.html" title="class in javax.ws.rs.core">NewCookie</a>&gt;&nbsp;getCookies()</pre>
<div class="block">Get any new cookies set on the response message.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a read-only map of cookie name (String) to Cookie.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getEntityTag--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntityTag</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/EntityTag.html" title="class in javax.ws.rs.core">EntityTag</a>&nbsp;getEntityTag()</pre>
<div class="block">Get the entity tag.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the entity tag, otherwise <code>null</code> if not present.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getDate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDate</h4>
<pre>public abstract&nbsp;java.util.Date&nbsp;getDate()</pre>
<div class="block">Get message date.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message date, otherwise <code>null</code> if not present.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLastModified--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLastModified</h4>
<pre>public abstract&nbsp;java.util.Date&nbsp;getLastModified()</pre>
<div class="block">Get the last modified date.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the last modified date, otherwise <code>null</code> if not present.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLocation--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLocation</h4>
<pre>public abstract&nbsp;java.net.URI&nbsp;getLocation()</pre>
<div class="block">Get the location.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the location URI, otherwise <code>null</code> if not present.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLinks--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLinks</h4>
<pre>public abstract&nbsp;java.util.Set&lt;<a href="../../../../javax/ws/rs/core/Link.html" title="class in javax.ws.rs.core">Link</a>&gt;&nbsp;getLinks()</pre>
<div class="block">Get the links attached to the message as headers. Any links in the message
 that are relative must be resolved with respect to the actual request URI
 that produced this response. Note that request URIs may be updated by
 filters, so the actual request URI may differ from that in the original
 invocation.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>links, may return empty <code>Set</code> if no links are present. Does
         not return <code>null</code>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="hasLink-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasLink</h4>
<pre>public abstract&nbsp;boolean&nbsp;hasLink(java.lang.String&nbsp;relation)</pre>
<div class="block">Check if link for relation exists.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>relation</code> - link relation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if the link for the relation is present in the
         <a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>message headers</code></a>, <code>false</code> otherwise.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLink-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLink</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/Link.html" title="class in javax.ws.rs.core">Link</a>&nbsp;getLink(java.lang.String&nbsp;relation)</pre>
<div class="block">Get the link for the relation. A relative link is resolved with respect
 to the actual request URI that produced this response. Note that request
 URIs may be updated by filters, so the actual request URI may differ from
 that in the original invocation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>relation</code> - link relation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the link for the relation, otherwise <code>null</code> if not present.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getLinkBuilder-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLinkBuilder</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/Link.Builder.html" title="interface in javax.ws.rs.core">Link.Builder</a>&nbsp;getLinkBuilder(java.lang.String&nbsp;relation)</pre>
<div class="block">Convenience method that returns a <a href="../../../../javax/ws/rs/core/Link.Builder.html" title="interface in javax.ws.rs.core"><code>Link.Builder</code></a> for the relation.
 See <a href="../../../../javax/ws/rs/core/Response.html#getLink-java.lang.String-"><code>getLink(java.lang.String)</code></a> for more information.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>relation</code> - link relation.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the link builder for the relation, otherwise <code>null</code> if not
         present.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="getMetadata--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMetadata</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/MultivaluedMap.html" title="interface in javax.ws.rs.core">MultivaluedMap</a>&lt;java.lang.String,java.lang.Object&gt;&nbsp;getMetadata()</pre>
<div class="block">See <a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>getHeaders()</code></a>.

 This method is considered deprecated. Users are encouraged to switch their
 code to use the <code>getHeaders()</code> method instead. The method may be annotated
 as <code>&#64;Deprecated</code> in a future release of JAX-RS API.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>response headers as a multivalued map.</dd>
</dl>
</li>
</ul>
<a name="getHeaders--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeaders</h4>
<pre>public&nbsp;<a href="../../../../javax/ws/rs/core/MultivaluedMap.html" title="interface in javax.ws.rs.core">MultivaluedMap</a>&lt;java.lang.String,java.lang.Object&gt;&nbsp;getHeaders()</pre>
<div class="block">Get view of the response headers and their object values.

 The underlying header data may be subsequently modified by the JAX-RS runtime on the
 server side. Changes in the underlying header data are reflected in this view.
 <p>
 On the server-side, when the message is sent, the non-string values will be serialized
 using a <a href="../../../../javax/ws/rs/ext/RuntimeDelegate.HeaderDelegate.html" title="interface in javax.ws.rs.ext"><code>RuntimeDelegate.HeaderDelegate</code></a> if one is available via
 <a href="../../../../javax/ws/rs/ext/RuntimeDelegate.html#createHeaderDelegate-java.lang.Class-"><code>RuntimeDelegate.createHeaderDelegate(java.lang.Class)</code></a> for the
 class of the value or using the values <code>toString</code> method if a header delegate is
 not available.
 </p>
 <p>
 On the client side, the returned map is identical to the one returned by
 <a href="../../../../javax/ws/rs/core/Response.html#getStringHeaders--"><code>getStringHeaders()</code></a>.
 </p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>response headers as an object view of header values.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/core/Response.html#getStringHeaders--"><code>getStringHeaders()</code></a>, 
<a href="../../../../javax/ws/rs/core/Response.html#getHeaderString-java.lang.String-"><code>getHeaderString(java.lang.String)</code></a></dd>
</dl>
</li>
</ul>
<a name="getStringHeaders--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getStringHeaders</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/core/MultivaluedMap.html" title="interface in javax.ws.rs.core">MultivaluedMap</a>&lt;java.lang.String,java.lang.String&gt;&nbsp;getStringHeaders()</pre>
<div class="block">Get view of the response headers and their string values.

 The underlying header data may be subsequently modified by the JAX-RS runtime on
 the server side. Changes in the underlying header data are reflected in this view.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>response headers as a string view of header values.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>getHeaders()</code></a>, 
<a href="../../../../javax/ws/rs/core/Response.html#getHeaderString-java.lang.String-"><code>getHeaderString(java.lang.String)</code></a></dd>
</dl>
</li>
</ul>
<a name="getHeaderString-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHeaderString</h4>
<pre>public abstract&nbsp;java.lang.String&nbsp;getHeaderString(java.lang.String&nbsp;name)</pre>
<div class="block">Get a message header as a single string value.

 Each single header value is converted to String using a
 <a href="../../../../javax/ws/rs/ext/RuntimeDelegate.HeaderDelegate.html" title="interface in javax.ws.rs.ext"><code>RuntimeDelegate.HeaderDelegate</code></a> if one is available
 via <a href="../../../../javax/ws/rs/ext/RuntimeDelegate.html#createHeaderDelegate-java.lang.Class-"><code>RuntimeDelegate.createHeaderDelegate(java.lang.Class)</code></a>
 for the header value class or using its <code>toString</code> method  if a header
 delegate is not available.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - the message header.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the message header value. If the message header is not present then
         <code>null</code> is returned. If the message header is present but has no
         value then the empty string is returned. If the message header is present
         more than once then the values of joined together and separated by a ','
         character.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>getHeaders()</code></a>, 
<a href="../../../../javax/ws/rs/core/Response.html#getStringHeaders--"><code>getStringHeaders()</code></a></dd>
</dl>
</li>
</ul>
<a name="fromResponse-javax.ws.rs.core.Response-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>fromResponse</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;fromResponse(<a href="../../../../javax/ws/rs/core/Response.html" title="class in javax.ws.rs.core">Response</a>&nbsp;response)</pre>
<div class="block">Create a new ResponseBuilder by performing a shallow copy of an
 existing Response.
 <p>
 The returned builder has its own <a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>response headers</code></a>
 but the header values are shared with the original <code>Response</code> instance.
 The original response entity instance reference is set in the new response
 builder.
 </p>
 <p>
 Note that if the entity is backed by an un-consumed input stream, the
 reference to the stream is copied. In such case make sure to
 <a href="../../../../javax/ws/rs/core/Response.html#bufferEntity--"><code>buffer</code></a> the entity stream of the original response
 instance before passing it to this method.
 </p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>response</code> - a Response from which the status code, entity and
                 <a href="../../../../javax/ws/rs/core/Response.html#getHeaders--"><code>response headers</code></a> will be copied.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="status-javax.ws.rs.core.Response.StatusType-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>status</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;status(<a href="../../../../javax/ws/rs/core/Response.StatusType.html" title="interface in javax.ws.rs.core">Response.StatusType</a>&nbsp;status)</pre>
<div class="block">Create a new ResponseBuilder with the supplied status.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>status</code> - the response status.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if status is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="status-javax.ws.rs.core.Response.Status-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>status</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;status(<a href="../../../../javax/ws/rs/core/Response.Status.html" title="enum in javax.ws.rs.core">Response.Status</a>&nbsp;status)</pre>
<div class="block">Create a new ResponseBuilder with the supplied status.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>status</code> - the response status.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if status is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="status-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>status</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;status(int&nbsp;status)</pre>
<div class="block">Create a new ResponseBuilder with the supplied status.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>status</code> - the response status.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if status is less than <code>100</code> or greater
                                  than <code>599</code>.</dd>
</dl>
</li>
</ul>
<a name="status-int-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>status</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;status(int&nbsp;status,
                                              java.lang.String&nbsp;reasonPhrase)</pre>
<div class="block">Create a new ResponseBuilder with the supplied status and reason phrase.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>status</code> - the response status.</dd>
<dd><code>reasonPhrase</code> - the reason phrase.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the updated response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if status is less than <code>100</code> or greater
                                  than <code>599</code>.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.1</dd>
</dl>
</li>
</ul>
<a name="ok--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ok</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;ok()</pre>
<div class="block">Create a new ResponseBuilder with an OK status.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="ok-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ok</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;ok(java.lang.Object&nbsp;entity)</pre>
<div class="block">Create a new ResponseBuilder that contains a representation. It is the
 callers responsibility to wrap the actual entity with
 <a href="../../../../javax/ws/rs/core/GenericEntity.html" title="class in javax.ws.rs.core"><code>GenericEntity</code></a> if preservation of its generic type is required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entity</code> - the representation entity data.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="ok-java.lang.Object-javax.ws.rs.core.MediaType-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ok</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;ok(java.lang.Object&nbsp;entity,
                                          <a href="../../../../javax/ws/rs/core/MediaType.html" title="class in javax.ws.rs.core">MediaType</a>&nbsp;type)</pre>
<div class="block">Create a new ResponseBuilder that contains a representation. It is the
 callers responsibility to wrap the actual entity with
 <a href="../../../../javax/ws/rs/core/GenericEntity.html" title="class in javax.ws.rs.core"><code>GenericEntity</code></a> if preservation of its generic type is required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entity</code> - the representation entity data.</dd>
<dd><code>type</code> - the media type of the entity.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="ok-java.lang.Object-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ok</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;ok(java.lang.Object&nbsp;entity,
                                          java.lang.String&nbsp;type)</pre>
<div class="block">Create a new ResponseBuilder that contains a representation. It is the
 callers responsibility to wrap the actual entity with
 <a href="../../../../javax/ws/rs/core/GenericEntity.html" title="class in javax.ws.rs.core"><code>GenericEntity</code></a> if preservation of its generic type is required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entity</code> - the representation entity data.</dd>
<dd><code>type</code> - the media type of the entity.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="ok-java.lang.Object-javax.ws.rs.core.Variant-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ok</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;ok(java.lang.Object&nbsp;entity,
                                          <a href="../../../../javax/ws/rs/core/Variant.html" title="class in javax.ws.rs.core">Variant</a>&nbsp;variant)</pre>
<div class="block">Create a new ResponseBuilder that contains a representation. It is the
 callers responsibility to wrap the actual entity with
 <a href="../../../../javax/ws/rs/core/GenericEntity.html" title="class in javax.ws.rs.core"><code>GenericEntity</code></a> if preservation of its generic type is required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entity</code> - the representation entity data.</dd>
<dd><code>variant</code> - representation metadata.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="serverError--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>serverError</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;serverError()</pre>
<div class="block">Create a new ResponseBuilder with an server error status.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="created-java.net.URI-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>created</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;created(java.net.URI&nbsp;location)</pre>
<div class="block">Create a new ResponseBuilder for a created resource, set the location
 header using the supplied value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>location</code> - the URI of the new resource. If a relative URI is
                 supplied it will be converted into an absolute URI by resolving it
                 relative to the request URI (see <a href="../../../../javax/ws/rs/core/UriInfo.html#getRequestUri--"><code>UriInfo.getRequestUri()</code></a>).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if location is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="accepted--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>accepted</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;accepted()</pre>
<div class="block">Create a new ResponseBuilder with an ACCEPTED status.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="accepted-java.lang.Object-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>accepted</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;accepted(java.lang.Object&nbsp;entity)</pre>
<div class="block">Create a new ResponseBuilder with an ACCEPTED status that contains
 a representation. It is the callers responsibility to wrap the actual entity with
 <a href="../../../../javax/ws/rs/core/GenericEntity.html" title="class in javax.ws.rs.core"><code>GenericEntity</code></a> if preservation of its generic type is required.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>entity</code> - the representation entity data.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
<a name="noContent--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>noContent</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;noContent()</pre>
<div class="block">Create a new ResponseBuilder for an empty response.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="notModified--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notModified</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;notModified()</pre>
<div class="block">Create a new ResponseBuilder with a not-modified status.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
</dl>
</li>
</ul>
<a name="notModified-javax.ws.rs.core.EntityTag-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notModified</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;notModified(<a href="../../../../javax/ws/rs/core/EntityTag.html" title="class in javax.ws.rs.core">EntityTag</a>&nbsp;tag)</pre>
<div class="block">Create a new ResponseBuilder with a not-modified status.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tag</code> - a tag for the unmodified entity.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if tag is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="notModified-java.lang.String-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>notModified</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;notModified(java.lang.String&nbsp;tag)</pre>
<div class="block">Create a new ResponseBuilder with a not-modified status
 and a strong entity tag. This is a shortcut
 for <code>notModified(new EntityTag(<i>value</i>))</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>tag</code> - the string content of a strong entity tag. The JAX-RS
            runtime will quote the supplied value when creating the
            header.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if tag is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="seeOther-java.net.URI-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seeOther</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;seeOther(java.net.URI&nbsp;location)</pre>
<div class="block">Create a new ResponseBuilder for a redirection. Used in the
 redirect-after-POST (aka POST/redirect/GET) pattern.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>location</code> - the redirection URI. If a relative URI is
                 supplied it will be converted into an absolute URI by resolving it
                 relative to the base URI of the application (see
                 <a href="../../../../javax/ws/rs/core/UriInfo.html#getBaseUri--"><code>UriInfo.getBaseUri()</code></a>).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if location is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="temporaryRedirect-java.net.URI-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>temporaryRedirect</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;temporaryRedirect(java.net.URI&nbsp;location)</pre>
<div class="block">Create a new ResponseBuilder for a temporary redirection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>location</code> - the redirection URI. If a relative URI is
                 supplied it will be converted into an absolute URI by resolving it
                 relative to the base URI of the application (see
                 <a href="../../../../javax/ws/rs/core/UriInfo.html#getBaseUri--"><code>UriInfo.getBaseUri()</code></a>).</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if location is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="notAcceptable-java.util.List-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>notAcceptable</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core">Response.ResponseBuilder</a>&nbsp;notAcceptable(java.util.List&lt;<a href="../../../../javax/ws/rs/core/Variant.html" title="class in javax.ws.rs.core">Variant</a>&gt;&nbsp;variants)</pre>
<div class="block">Create a new ResponseBuilder for a not acceptable response.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>variants</code> - list of variants that were available, a null value is
                 equivalent to an empty list.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new response builder.</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><a href="../../../../javax/ws/rs/core/Request.html" title="interface in javax.ws.rs.core"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../javax/ws/rs/core/Response.ResponseBuilder.html" title="class in javax.ws.rs.core"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?javax/ws/rs/core/Response.html" target="_top">Frames</a></li>
<li><a href="Response.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;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:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
