blob: 81c6407f67333dce8c44fe5b15706fbc6602c9ea [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.2) on Wed Sep 23 17:36:24 GMT 2020 -->
<title>Invocation (jakarta.ws.rs-api 3.0.0 API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="dc.created" content="2020-09-23">
<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 3.0.0 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">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<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>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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>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>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= 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">jakarta.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 jakarta.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>
<table class="memberSummary">
<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>
<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 jakarta.ws.rs.client">Invocation.Builder</a></span></code></th>
<td class="colLast">
<div class="block">A client request invocation builder.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</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></caption>
<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>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="../core/Response.html" title="class in jakarta.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 id="i1" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#invoke(jakarta.ws.rs.core.GenericType)">invoke</a></span>&#8203;(<a href="../core/GenericType.html" title="class in jakarta.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 id="i2" class="altColor">
<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 id="i3" class="rowColor">
<td class="colFirst"><code><a href="Invocation.html" title="interface in jakarta.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 id="i4" class="altColor">
<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 jakarta.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 id="i5" class="rowColor">
<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(jakarta.ws.rs.client.InvocationCallback)">submit</a></span>&#8203;(<a href="InvocationCallback.html" title="interface in jakarta.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 jakarta.ws.rs.client"><code>InvocationCallback</code></a> to process the future
result of the invocation.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<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(jakarta.ws.rs.core.GenericType)">submit</a></span>&#8203;(<a href="../core/GenericType.html" title="class in jakarta.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>
<tr id="i7" class="rowColor">
<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>
</table>
</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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.ws.rs.core"><code>Response</code></a>.</dd>
</dl>
</li>
</ul>
<a id="invoke(jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.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 jakarta.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain the <a href="../core/Response.html" title="class in jakarta.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 jakarta.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 jakarta.ws.rs"><code>ProcessingException</code></a> thrown in
case of an invocation processing failure or a <a href="../WebApplicationException.html" title="class in jakarta.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 jakarta.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 jakarta.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain
the <a href="../core/Response.html" title="class in jakarta.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(jakarta.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 jakarta.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 jakarta.ws.rs"><code>ProcessingException</code></a> thrown in
case of an invocation processing failure or a <a href="../WebApplicationException.html" title="class in jakarta.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 jakarta.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 jakarta.ws.rs.client"><code>ResponseProcessingException</code></a> type and will contain
the <a href="../core/Response.html" title="class in jakarta.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(jakarta.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 jakarta.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 jakarta.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 jakarta.ws.rs"><code>ProcessingException</code></a> thrown in
case of an invocation processing failure or a <a href="../WebApplicationException.html" title="class in jakarta.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 jakarta.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 jakarta.ws.rs.client"><code>ResponseProcessingException</code></a>
type and will contain the <a href="../core/Response.html" title="class in jakarta.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">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</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>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>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small><p align="left">Copyright &#169; 2018, 2020 Eclipse Foundation.<br>Use is subject to <a href="../../../../resources/EFSL.html" target="_top">license terms</a>.</small></p>
</footer>
</body>
</html>