blob: fcf3fe9dccb168e805c1ff72cb10840d2271f1a1 [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (12) on Mon Aug 12 13:20:58 GMT 2019 -->
<title>Invocation (jakarta.ws.rs-api 2.1.6 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2019-08-12">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="Invocation (jakarta.ws.rs-api 2.1.6 API)";
}
}
catch(err) {
}
//-->
var data = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Invocation.html">Use</a></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">
<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>Constr&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>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
</div>
<a id="skip.navbar.top">
<!-- -->
</a>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">javax.ws.rs.client</a></div>
<h2 title="Interface Invocation" class="title">Interface Invocation</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public interface <span class="typeNameLabel">Invocation</span></pre>
<div class="block">A client request invocation.
An invocation is a request that has been prepared and is ready for execution.
Invocations provide a generic (command) interface that enables a separation of
concerns between the creator and the submitter. In particular, the submitter
does not need to know how the invocation was prepared, but only how it should
be executed (synchronously or asynchronously) and when.</div>
<dl>
<dt><span class="simpleTagLabel">Author:</span></dt>
<dd>Marek Potociar, Santiago Pericas-Geertsen</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Invocation.Builder.html" title="interface in javax.ws.rs.client"><code>Invocation.Builder</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<div class="memberSummary">
<table>
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Interface</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code>static interface&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="Invocation.Builder.html" title="interface in javax.ws.rs.client">Invocation.Builder</a></span></code></th>
<td class="colLast">
<div class="block">A client request invocation builder.</div>
</td>
</tr>
</tbody>
</table>
</div>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<div class="memberSummary">
<div role="tablist" aria-orientation="horizontal"><button role="tab" aria-selected="true" aria-controls="memberSummary_tabpanel" tabindex="0" onkeydown="switchTab(event)" id="t0" class="activeTableTab">All Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t2" class="tableTab" onclick="show(2);">Instance Methods</button><button role="tab" aria-selected="false" aria-controls="memberSummary_tabpanel" tabindex="-1" onkeydown="switchTab(event)" id="t3" class="tableTab" onclick="show(4);">Abstract Methods</button></div>
<div id="memberSummary_tabpanel" role="tabpanel">
<table aria-labelledby="t0">
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor" id="i0">
<td class="colFirst"><code><a href="../core/Response.html" title="class in javax.ws.rs.core">Response</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#invoke()">invoke</a></span>()</code></th>
<td class="colLast">
<div class="block">Synchronously invoke the request and receive a response back.</div>
</td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#invoke(java.lang.Class)">invoke</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;T&gt;&nbsp;responseType)</code></th>
<td class="colLast">
<div class="block">Synchronously invoke the request and receive a response of the specified
type back.</div>
</td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#invoke(javax.ws.rs.core.GenericType)">invoke</a></span>&#8203;(<a href="../core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;responseType)</code></th>
<td class="colLast">
<div class="block">Synchronously invoke the request and receive a response of the specified
generic type back.</div>
</td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="Invocation.html" title="interface in javax.ws.rs.client">Invocation</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#property(java.lang.String,java.lang.Object)">property</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Set a new property in the context of a request represented by this invocation.</div>
</td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;<a href="../core/Response.html" title="class in javax.ws.rs.core">Response</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#submit()">submit</a></span>()</code></th>
<td class="colLast">
<div class="block">Submit the request for an asynchronous invocation and receive a future
response back.</div>
</td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#submit(java.lang.Class)">submit</a></span>&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;T&gt;&nbsp;responseType)</code></th>
<td class="colLast">
<div class="block">Submit the request for an asynchronous invocation and receive a future
response of the specified type back.</div>
</td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#submit(javax.ws.rs.client.InvocationCallback)">submit</a></span>&#8203;(<a href="InvocationCallback.html" title="interface in javax.ws.rs.client">InvocationCallback</a>&lt;T&gt;&nbsp;callback)</code></th>
<td class="colLast">
<div class="block">Submit the request for an asynchronous invocation and register an
<a href="InvocationCallback.html" title="interface in javax.ws.rs.client"><code>InvocationCallback</code></a> to process the future result of the invocation.</div>
</td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;T&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#submit(javax.ws.rs.core.GenericType)">submit</a></span>&#8203;(<a href="../core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;responseType)</code></th>
<td class="colLast">
<div class="block">Submit the request for an asynchronous invocation and receive a future
response of the specified generic type back.</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="property(java.lang.String,java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>property</h4>
<pre class="methodSignature"><a href="Invocation.html" title="interface in javax.ws.rs.client">Invocation</a>&nbsp;property&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang" class="externalLink">String</a>&nbsp;name,
<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang" class="externalLink">Object</a>&nbsp;value)</pre>
<div class="block">Set a new property in the context of a request represented by this invocation.
<p>
The property is available for a later retrieval via <a href="ClientRequestContext.html#getProperty(java.lang.String)"><code>ClientRequestContext.getProperty(String)</code></a>
or <a href="../ext/InterceptorContext.html#getProperty(java.lang.String)"><code>InterceptorContext.getProperty(String)</code></a>.
If a property with a given name is already set in the request context,
the existing value of the property will be updated.
Setting a <code>null</code> value into a property effectively removes the property
from the request property bag.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>name</code> - property name.</dd>
<dd><code>value</code> - (new) property value. <code>null</code> value removes the property
with the given name.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the updated invocation.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Invocation.Builder.html#property(java.lang.String,java.lang.Object)"><code>Invocation.Builder.property(String, Object)</code></a></dd>
</dl>
</li>
</ul>
<a id="invoke()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invoke</h4>
<pre class="methodSignature"><a href="../core/Response.html" title="class in javax.ws.rs.core">Response</a>&nbsp;invoke()</pre>
<div class="block">Synchronously invoke the request and receive a response back.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><a href="../core/Response.html" title="class in javax.ws.rs.core"><code>response</code></a> object as a result of the request
invocation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="ResponseProcessingException.html" title="class in javax.ws.rs.client">ResponseProcessingException</a></code> - in case processing of a received HTTP response fails (e.g. in a filter
or during conversion of the response entity data to an instance
of a particular Java type).</dd>
<dd><code><a href="../ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - in case the request processing or subsequent I/O operation fails.</dd>
</dl>
</li>
</ul>
<a id="invoke(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invoke</h4>
<pre class="methodSignature">&lt;T&gt;&nbsp;T&nbsp;invoke&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;T&gt;&nbsp;responseType)</pre>
<div class="block">Synchronously invoke the request and receive a response of the specified
type back.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - response type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>responseType</code> - Java type the response should be converted into.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>response object of the specified type as a result of the request
invocation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="ResponseProcessingException.html" title="class in javax.ws.rs.client">ResponseProcessingException</a></code> - in case processing of a received HTTP response fails (e.g. in a filter
or during conversion of the response entity data to an instance
of a particular Java type).</dd>
<dd><code><a href="../ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - in case the request processing or subsequent I/O operation fails.</dd>
<dd><code><a href="../WebApplicationException.html" title="class in javax.ws.rs">WebApplicationException</a></code> - in case the response status code of the response
returned by the server is not
<a href="../core/Response.Status.Family.html#SUCCESSFUL"><code>successful</code></a> and the specified response type is not
<a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>.</dd>
</dl>
</li>
</ul>
<a id="invoke(javax.ws.rs.core.GenericType)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invoke</h4>
<pre class="methodSignature">&lt;T&gt;&nbsp;T&nbsp;invoke&#8203;(<a href="../core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;responseType)</pre>
<div class="block">Synchronously invoke the request and receive a response of the specified
generic type back.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - generic response type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>responseType</code> - type literal representing a generic Java type the
response should be converted into.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>response object of the specified generic type as a result of the
request invocation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="ResponseProcessingException.html" title="class in javax.ws.rs.client">ResponseProcessingException</a></code> - in case processing of a received HTTP response fails (e.g. in a filter
or during conversion of the response entity data to an instance
of a particular Java type).</dd>
<dd><code><a href="../ProcessingException.html" title="class in javax.ws.rs">ProcessingException</a></code> - in case the request processing or subsequent I/O operation fails.</dd>
<dd><code><a href="../WebApplicationException.html" title="class in javax.ws.rs">WebApplicationException</a></code> - in case the response status code of the response
returned by the server is not
<a href="../core/Response.Status.Family.html#SUCCESSFUL"><code>successful</code></a>.</dd>
</dl>
</li>
</ul>
<a id="submit()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>submit</h4>
<pre class="methodSignature"><a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;<a href="../core/Response.html" title="class in javax.ws.rs.core">Response</a>&gt;&nbsp;submit()</pre>
<div class="block">Submit the request for an asynchronous invocation and receive a future
response back.
<p>
Note that calling the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true#get()" title="class or interface in java.util.concurrent" class="externalLink"><code>Future.get()</code></a> method on the returned
<code>Future</code> instance may throw an <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink"><code>ExecutionException</code></a>
that wraps a <a href="../ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> thrown in case of an invocation processing
failure.
In case a processing of a properly received response fails, the wrapped processing exception
will be of <a href="ResponseProcessingException.html" title="class in javax.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain the <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>
instance whose processing has failed.
</p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>future <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>response</code></a> object as a result of the request
invocation.</dd>
</dl>
</li>
</ul>
<a id="submit(java.lang.Class)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>submit</h4>
<pre class="methodSignature">&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;T&gt;&nbsp;submit&#8203;(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang" class="externalLink">Class</a>&lt;T&gt;&nbsp;responseType)</pre>
<div class="block">Submit the request for an asynchronous invocation and receive a future
response of the specified type back.
<p>
Note that calling the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true#get()" title="class or interface in java.util.concurrent" class="externalLink"><code>Future.get()</code></a> method on the returned
<code>Future</code> instance may throw an <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink"><code>ExecutionException</code></a>
that wraps either a <a href="../ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> thrown in case of an invocation processing
failure or a <a href="../WebApplicationException.html" title="class in javax.ws.rs"><code>WebApplicationException</code></a> or one of its subclasses thrown in case the
received response status code is not <a href="../core/Response.Status.Family.html#SUCCESSFUL"><code>successful</code></a> and the specified response type is not <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>.
In case a processing of a properly received response fails, the wrapped processing exception
will be of <a href="ResponseProcessingException.html" title="class in javax.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain the <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>
instance whose processing has failed.
</p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - response type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>responseType</code> - Java type the response should be converted into.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>future response object of the specified type as a result of the
request invocation.</dd>
</dl>
</li>
</ul>
<a id="submit(javax.ws.rs.core.GenericType)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>submit</h4>
<pre class="methodSignature">&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;T&gt;&nbsp;submit&#8203;(<a href="../core/GenericType.html" title="class in javax.ws.rs.core">GenericType</a>&lt;T&gt;&nbsp;responseType)</pre>
<div class="block">Submit the request for an asynchronous invocation and receive a future
response of the specified generic type back.
<p>
Note that calling the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true#get()" title="class or interface in java.util.concurrent" class="externalLink"><code>Future.get()</code></a> method on the returned
<code>Future</code> instance may throw an <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink"><code>ExecutionException</code></a>
that wraps either a <a href="../ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> thrown in case of an invocation processing
failure or a <a href="../WebApplicationException.html" title="class in javax.ws.rs"><code>WebApplicationException</code></a> or one of its subclasses thrown in case the
received response status code is not <a href="../core/Response.Status.Family.html#SUCCESSFUL"><code>successful</code></a> and the specified response type is not <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>.
In case a processing of a properly received response fails, the wrapped processing exception
will be of <a href="ResponseProcessingException.html" title="class in javax.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain the <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>
instance whose processing has failed.
</p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - generic response type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>responseType</code> - type literal representing a generic Java type the
response should be converted into.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>future response object of the specified generic type as a result
of the request invocation.</dd>
</dl>
</li>
</ul>
<a id="submit(javax.ws.rs.client.InvocationCallback)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>submit</h4>
<pre class="methodSignature">&lt;T&gt;&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink">Future</a>&lt;T&gt;&nbsp;submit&#8203;(<a href="InvocationCallback.html" title="interface in javax.ws.rs.client">InvocationCallback</a>&lt;T&gt;&nbsp;callback)</pre>
<div class="block">Submit the request for an asynchronous invocation and register an
<a href="InvocationCallback.html" title="interface in javax.ws.rs.client"><code>InvocationCallback</code></a> to process the future result of the invocation.
<p>
Note that calling the <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/Future.html?is-external=true#get()" title="class or interface in java.util.concurrent" class="externalLink"><code>Future.get()</code></a> method on the returned
<code>Future</code> instance may throw an <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ExecutionException.html?is-external=true" title="class or interface in java.util.concurrent" class="externalLink"><code>ExecutionException</code></a>
that wraps either a <a href="../ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> thrown in case of an invocation processing
failure or a <a href="../WebApplicationException.html" title="class in javax.ws.rs"><code>WebApplicationException</code></a> or one of its subclasses thrown in case the
received response status code is not <a href="../core/Response.Status.Family.html#SUCCESSFUL"><code>successful</code></a> and the generic type of the supplied response callback is not
<a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>.
In case a processing of a properly received response fails, the wrapped processing exception
will be of <a href="ResponseProcessingException.html" title="class in javax.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain the <a href="../core/Response.html" title="class in javax.ws.rs.core"><code>Response</code></a>
instance whose processing has failed.
</p></div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - response type</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>callback</code> - invocation callback for asynchronous processing of the
request invocation result.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>future response object of the specified type as a result of the
request invocation.</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/Invocation.html">Use</a></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">
<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>Constr&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>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright (c) 2019 Eclipse Foundation. Licensed under <a href="resources/EFSL.html">Eclipse Foundation Specification License</a>.</small></p>
</footer>
</body>
</html>