blob: 6ea0482038b81ce901f91ac507e638c414c12828 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<title>ClientBuilder</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="ClientBuilder";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":10,"i6":9,"i7":9,"i8":9,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6};
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/client/Client.html" title="interface in javax.ws.rs.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../javax/ws/rs/client/ClientRequestContext.html" title="interface in javax.ws.rs.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?javax/ws/rs/client/ClientBuilder.html" target="_top">Frames</a></li>
<li><a href="ClientBuilder.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>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&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><a href="#field.detail">Field</a>&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.client</div>
<h2 title="Class ClientBuilder" class="title">Class ClientBuilder</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>javax.ws.rs.client.ClientBuilder</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../javax/ws/rs/core/Configurable.html" title="interface in javax.ws.rs.core">Configurable</a>&lt;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&gt;</dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">ClientBuilder</span>
extends java.lang.Object
implements <a href="../../../../javax/ws/rs/core/Configurable.html" title="interface in javax.ws.rs.core">Configurable</a>&lt;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&gt;</pre>
<div class="block">Main entry point to the client API used to bootstrap <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client"><code>Client</code></a>
instances.</div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.0</dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static java.lang.String</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY">JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY</a></span></code>
<div class="block">Name of the property identifying the <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client"><code>ClientBuilder</code></a> implementation
to be returned from <a href="../../../../javax/ws/rs/client/ClientBuilder.html#newBuilder--"><code>newBuilder()</code></a>.</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/client/ClientBuilder.html#ClientBuilder--">ClientBuilder</a></span>()</code>
<div class="block">Allows custom implementations to extend the <code>ClientBuilder</code> class.</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>abstract <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client">Client</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#build--">build</a></span>()</code>
<div class="block">Build a new client instance using all the configuration previously specified
in this client builder.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#connectTimeout-long-java.util.concurrent.TimeUnit-">connectTimeout</a></span>(long&nbsp;timeout,
java.util.concurrent.TimeUnit&nbsp;unit)</code>
<div class="block">Set the connect timeout.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#executorService-java.util.concurrent.ExecutorService-">executorService</a></span>(java.util.concurrent.ExecutorService&nbsp;executorService)</code>
<div class="block">Set the client-side <code>ExecutorService</code>.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#hostnameVerifier-javax.net.ssl.HostnameVerifier-">hostnameVerifier</a></span>(javax.net.ssl.HostnameVerifier&nbsp;verifier)</code>
<div class="block">Set the hostname verifier to be used by the client to verify the endpoint's hostname against it's
identification information.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-char:A-">keyStore</a></span>(java.security.KeyStore&nbsp;keyStore,
char[]&nbsp;password)</code>
<div class="block">Set the client-side key store.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-java.lang.String-">keyStore</a></span>(java.security.KeyStore&nbsp;keyStore,
java.lang.String&nbsp;password)</code>
<div class="block">Set the client-side key store.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#newBuilder--">newBuilder</a></span>()</code>
<div class="block">Create a new <code>ClientBuilder</code> instance using the default client builder
implementation class provided by the implementation provider.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client">Client</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#newClient--">newClient</a></span>()</code>
<div class="block">Create a new <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client"><code>Client</code></a> instance using the default client builder implementation
class provided by the implementation provider.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client">Client</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#newClient-javax.ws.rs.core.Configuration-">newClient</a></span>(<a href="../../../../javax/ws/rs/core/Configuration.html" title="interface in javax.ws.rs.core">Configuration</a>&nbsp;configuration)</code>
<div class="block">Create a new custom-configured <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client"><code>Client</code></a> instance using the default client builder
implementation class provided by the implementation provider.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#readTimeout-long-java.util.concurrent.TimeUnit-">readTimeout</a></span>(long&nbsp;timeout,
java.util.concurrent.TimeUnit&nbsp;unit)</code>
<div class="block">Set the read timeout.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#scheduledExecutorService-java.util.concurrent.ScheduledExecutorService-">scheduledExecutorService</a></span>(java.util.concurrent.ScheduledExecutorService&nbsp;scheduledExecutorService)</code>
<div class="block">Set the client-side <code>ScheduledExecutorService</code>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-">sslContext</a></span>(javax.net.ssl.SSLContext&nbsp;sslContext)</code>
<div class="block">Set the SSL context that will be used when creating secured transport connections
to server endpoints from <a href="../../../../javax/ws/rs/client/WebTarget.html" title="interface in javax.ws.rs.client"><code>web targets</code></a> created by the client
instance that is using this SSL context.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#trustStore-java.security.KeyStore-">trustStore</a></span>(java.security.KeyStore&nbsp;trustStore)</code>
<div class="block">Set the client-side trust store.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>abstract <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../javax/ws/rs/client/ClientBuilder.html#withConfig-javax.ws.rs.core.Configuration-">withConfig</a></span>(<a href="../../../../javax/ws/rs/core/Configuration.html" title="interface in javax.ws.rs.core">Configuration</a>&nbsp;config)</code>
<div class="block">Set the internal configuration state to an externally provided configuration state.</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>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.ws.rs.core.Configurable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;javax.ws.rs.core.<a href="../../../../javax/ws/rs/core/Configurable.html" title="interface in javax.ws.rs.core">Configurable</a></h3>
<code><a href="../../../../javax/ws/rs/core/Configurable.html#getConfiguration--">getConfiguration</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#property-java.lang.String-java.lang.Object-">property</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Class-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Class-java.lang.Class...-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Class-int-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Class-java.util.Map-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Object-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Object-java.lang.Class...-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Object-int-">register</a>, <a href="../../../../javax/ws/rs/core/Configurable.html#register-java.lang.Object-java.util.Map-">register</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY</h4>
<pre>public static final&nbsp;java.lang.String JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY</pre>
<div class="block">Name of the property identifying the <a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client"><code>ClientBuilder</code></a> implementation
to be returned from <a href="../../../../javax/ws/rs/client/ClientBuilder.html#newBuilder--"><code>newBuilder()</code></a>.</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../constant-values.html#javax.ws.rs.client.ClientBuilder.JAXRS_DEFAULT_CLIENT_BUILDER_PROPERTY">Constant Field Values</a></dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ClientBuilder--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ClientBuilder</h4>
<pre>protected&nbsp;ClientBuilder()</pre>
<div class="block">Allows custom implementations to extend the <code>ClientBuilder</code> class.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="newBuilder--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newBuilder</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;newBuilder()</pre>
<div class="block">Create a new <code>ClientBuilder</code> instance using the default client builder
implementation class provided by the implementation provider.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>new client builder instance.</dd>
</dl>
</li>
</ul>
<a name="newClient--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newClient</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client">Client</a>&nbsp;newClient()</pre>
<div class="block">Create a new <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client"><code>Client</code></a> instance using the default client builder implementation
class provided by the implementation provider.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>new client instance.</dd>
</dl>
</li>
</ul>
<a name="newClient-javax.ws.rs.core.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newClient</h4>
<pre>public static&nbsp;<a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client">Client</a>&nbsp;newClient(<a href="../../../../javax/ws/rs/core/Configuration.html" title="interface in javax.ws.rs.core">Configuration</a>&nbsp;configuration)</pre>
<div class="block">Create a new custom-configured <a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client"><code>Client</code></a> instance using the default client builder
implementation class provided by the implementation provider.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>configuration</code> - data used to provide initial configuration for the new
client instance.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>new configured client instance.</dd>
</dl>
</li>
</ul>
<a name="withConfig-javax.ws.rs.core.Configuration-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withConfig</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;withConfig(<a href="../../../../javax/ws/rs/core/Configuration.html" title="interface in javax.ws.rs.core">Configuration</a>&nbsp;config)</pre>
<div class="block">Set the internal configuration state to an externally provided configuration state.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>config</code> - external configuration state to replace the configuration of this configurable
instance.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the updated client builder instance.</dd>
</dl>
</li>
</ul>
<a name="sslContext-javax.net.ssl.SSLContext-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sslContext</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;sslContext(javax.net.ssl.SSLContext&nbsp;sslContext)</pre>
<div class="block">Set the SSL context that will be used when creating secured transport connections
to server endpoints from <a href="../../../../javax/ws/rs/client/WebTarget.html" title="interface in javax.ws.rs.client"><code>web targets</code></a> created by the client
instance that is using this SSL context. The SSL context is expected to have all the
security infrastructure initialized, including the key and trust managers.
<p>
Setting a SSL context instance resets any <a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-char:A-"><code>key store</code></a> or <a href="../../../../javax/ws/rs/client/ClientBuilder.html#trustStore-java.security.KeyStore-"><code>trust store</code></a> values previously
specified.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>sslContext</code> - secure socket protocol implementation which acts as a factory
for secure socket factories or <code>SSL engines</code>. Must not be <code>null</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - in case the <code>sslContext</code> parameter is <code>null</code>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-char:A-"><code>keyStore(java.security.KeyStore, char[])</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-java.lang.String-"><code>keyStore(java.security.KeyStore, String)</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#trustStore-java.security.KeyStore-"><code>trustStore(java.security.KeyStore)</code></a></dd>
</dl>
</li>
</ul>
<a name="keyStore-java.security.KeyStore-char:A-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>keyStore</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;keyStore(java.security.KeyStore&nbsp;keyStore,
char[]&nbsp;password)</pre>
<div class="block">Set the client-side key store. Key store contains client's private keys, and the certificates with their
corresponding public keys.
<p>
Setting a key store instance resets any <a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-"><code>SSL context instance</code></a>
value previously specified.
</p>
<p>
Note that a custom key store is only required if you want to enable a custom setup of a 2-way SSL connections
(client certificate authentication).
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keyStore</code> - client-side key store. Must not be <code>null</code>.</dd>
<dd><code>password</code> - client key password. Must not be <code>null</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - in case any of the supplied parameters is <code>null</code>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-"><code>sslContext(javax.net.ssl.SSLContext)</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-java.lang.String-"><code>keyStore(java.security.KeyStore, String)</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#trustStore-java.security.KeyStore-"><code>trustStore(java.security.KeyStore)</code></a></dd>
</dl>
</li>
</ul>
<a name="keyStore-java.security.KeyStore-java.lang.String-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>keyStore</h4>
<pre>public&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;keyStore(java.security.KeyStore&nbsp;keyStore,
java.lang.String&nbsp;password)</pre>
<div class="block">Set the client-side key store. Key store contains client's private keys, and the certificates with their
corresponding public keys.
<p>
Setting a key store instance resets any <a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-"><code>SSL context instance</code></a>
value previously specified.
</p>
<p>
Note that for improved security of working with password data and avoid storing passwords in Java string
objects, the <a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-char:A-"><code>keyStore(java.security.KeyStore, char[])</code></a> version of the method can be utilized.
Also note that a custom key store is only required if you want to enable a custom setup of a 2-way SSL
connections (client certificate authentication).
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keyStore</code> - client-side key store. Must not be <code>null</code>.</dd>
<dd><code>password</code> - client key password. Must not be <code>null</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - in case any of the supplied parameters is <code>null</code>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-"><code>sslContext(javax.net.ssl.SSLContext)</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-char:A-"><code>keyStore(java.security.KeyStore, char[])</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#trustStore-java.security.KeyStore-"><code>trustStore(java.security.KeyStore)</code></a></dd>
</dl>
</li>
</ul>
<a name="trustStore-java.security.KeyStore-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>trustStore</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;trustStore(java.security.KeyStore&nbsp;trustStore)</pre>
<div class="block">Set the client-side trust store. Trust store is expected to contain certificates from other parties
the client is you expect to communicate with, or from Certificate Authorities that are trusted to
identify other parties.
<p>
Setting a trust store instance resets any <a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-"><code>SSL context instance</code></a>
value previously specified.
</p>
<p>
In case a custom trust store or custom SSL context is not specified, the trust management will be
configured to use the default Java runtime settings.
</p></div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>trustStore</code> - client-side trust store. Must not be <code>null</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.NullPointerException</code> - in case the supplied trust store parameter is <code>null</code>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/client/ClientBuilder.html#sslContext-javax.net.ssl.SSLContext-"><code>sslContext(javax.net.ssl.SSLContext)</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-char:A-"><code>keyStore(java.security.KeyStore, char[])</code></a>,
<a href="../../../../javax/ws/rs/client/ClientBuilder.html#keyStore-java.security.KeyStore-java.lang.String-"><code>keyStore(java.security.KeyStore, String)</code></a></dd>
</dl>
</li>
</ul>
<a name="hostnameVerifier-javax.net.ssl.HostnameVerifier-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hostnameVerifier</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;hostnameVerifier(javax.net.ssl.HostnameVerifier&nbsp;verifier)</pre>
<div class="block">Set the hostname verifier to be used by the client to verify the endpoint's hostname against it's
identification information.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>verifier</code> - hostname verifier.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
</dl>
</li>
</ul>
<a name="executorService-java.util.concurrent.ExecutorService-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>executorService</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;executorService(java.util.concurrent.ExecutorService&nbsp;executorService)</pre>
<div class="block">Set the client-side <code>ExecutorService</code>.
<p>
Provided executor service will be used for executing asynchronous tasks.
<p>
When running in a Jakarta EE container, implementations are required to use the container-managed
executor service by default. In Java SE, the default is implementation-specific. In either
case, calling this method will override the default.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>executorService</code> - executor service to be used for async invocations.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.1</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/client/Invocation.Builder.html#async--"><code>Invocation.Builder.async()</code></a>,
<a href="../../../../javax/ws/rs/client/Invocation.Builder.html#rx--"><code>Invocation.Builder.rx()</code></a>,
<a href="../../../../javax/ws/rs/client/RxInvokerProvider.html#getRxInvoker-javax.ws.rs.client.SyncInvoker-java.util.concurrent.ExecutorService-"><code>RxInvokerProvider.getRxInvoker(SyncInvoker, ExecutorService)</code></a></dd>
</dl>
</li>
</ul>
<a name="scheduledExecutorService-java.util.concurrent.ScheduledExecutorService-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scheduledExecutorService</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;scheduledExecutorService(java.util.concurrent.ScheduledExecutorService&nbsp;scheduledExecutorService)</pre>
<div class="block">Set the client-side <code>ScheduledExecutorService</code>.
<p>
Provided executor service will be used for executing scheduled asynchronous tasks.
<p>
When running in a Jakarta EE container, implementations are required to use the container-managed
scheduled executor service by default. In Java SE the default is implementation-specific. In
either case, calling this method will override the default.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>scheduledExecutorService</code> - executor service to be used for scheduled async invocations.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.1</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../javax/ws/rs/sse/SseEventSource.Builder.html#reconnectingEvery-long-java.util.concurrent.TimeUnit-"><code>SseEventSource.Builder.reconnectingEvery(long, TimeUnit)</code></a></dd>
</dl>
</li>
</ul>
<a name="connectTimeout-long-java.util.concurrent.TimeUnit-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connectTimeout</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;connectTimeout(long&nbsp;timeout,
java.util.concurrent.TimeUnit&nbsp;unit)</pre>
<div class="block">Set the connect timeout.
<p>
Value <code>0</code> represents infinity. Negative values are not allowed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>timeout</code> - the maximum time to wait.</dd>
<dd><code>unit</code> - the time unit of the timeout argument.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - when the value is negative.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.1</dd>
</dl>
</li>
</ul>
<a name="readTimeout-long-java.util.concurrent.TimeUnit-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readTimeout</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/ClientBuilder.html" title="class in javax.ws.rs.client">ClientBuilder</a>&nbsp;readTimeout(long&nbsp;timeout,
java.util.concurrent.TimeUnit&nbsp;unit)</pre>
<div class="block">Set the read timeout.
<p>
The value is the timeout to read a response. If the server doesn't respond within the defined timeframe,
<a href="../../../../javax/ws/rs/ProcessingException.html" title="class in javax.ws.rs"><code>ProcessingException</code></a> is thrown with <code>TimeoutException</code> as a cause.
<p>
Value <code>0</code> represents infinity. Negative values are not allowed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>timeout</code> - the maximum time to wait.</dd>
<dd><code>unit</code> - the time unit of the timeout argument.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an updated client builder instance.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - when the value is negative.</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>2.1</dd>
</dl>
</li>
</ul>
<a name="build--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>build</h4>
<pre>public abstract&nbsp;<a href="../../../../javax/ws/rs/client/Client.html" title="interface in javax.ws.rs.client">Client</a>&nbsp;build()</pre>
<div class="block">Build a new client instance using all the configuration previously specified
in this client builder.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new client instance.</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/client/Client.html" title="interface in javax.ws.rs.client"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../javax/ws/rs/client/ClientRequestContext.html" title="interface in javax.ws.rs.client"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?javax/ws/rs/client/ClientBuilder.html" target="_top">Frames</a></li>
<li><a href="ClientBuilder.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>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&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><a href="#field.detail">Field</a>&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>