blob: 6845fac08204017613bb007fe6a681f9ad1100b9 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Kudu C++ client API: kudu::client::KuduClientBuilder Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">Kudu C++ client API
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>kudu</b></li><li class="navelem"><b>client</b></li><li class="navelem"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="classkudu_1_1client_1_1KuduClientBuilder-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">kudu::client::KuduClientBuilder Class Reference</div></div>
</div><!--header-->
<div class="contents">
<p>A "factory" for <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> objects.
<a href="classkudu_1_1client_1_1KuduClientBuilder.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="client_8h_source.html">client.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-types" name="pub-types"></a>
Public Types</h2></td></tr>
<tr class="memitem:a599cb3ea46b08531eb37ad3586bc6fbd" id="r_a599cb3ea46b08531eb37ad3586bc6fbd"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbd">EncryptionPolicy</a> { <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbdaee483fad5e8eddc9e32eafc1ce1f7b14">OPTIONAL</a>
, <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbda6edcb83b00da5c333232ccb935db919b">REQUIRED_REMOTE</a>
, <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbda0a0f8f2d17a5d532959579e9a4bb6011">REQUIRED</a>
}</td></tr>
<tr class="memdesc:a599cb3ea46b08531eb37ad3586bc6fbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Policy for on-the-wire encryption. <a href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbd">More...</a><br /></td></tr>
<tr class="separator:a599cb3ea46b08531eb37ad3586bc6fbd"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a341d5d14f5cd778fd6c2fe289b1e7e5a" id="r_a341d5d14f5cd778fd6c2fe289b1e7e5a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a341d5d14f5cd778fd6c2fe289b1e7e5a">clear_master_server_addrs</a> ()</td></tr>
<tr class="separator:a341d5d14f5cd778fd6c2fe289b1e7e5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2644e98434b7099189482fc461e4a1f1" id="r_a2644e98434b7099189482fc461e4a1f1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a2644e98434b7099189482fc461e4a1f1">master_server_addrs</a> (const std::vector&lt; std::string &gt; &amp;addrs)</td></tr>
<tr class="separator:a2644e98434b7099189482fc461e4a1f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef620c83e11ec5b4cdaa51b248029d1f" id="r_aef620c83e11ec5b4cdaa51b248029d1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#aef620c83e11ec5b4cdaa51b248029d1f">add_master_server_addr</a> (const std::string &amp;addr)</td></tr>
<tr class="separator:aef620c83e11ec5b4cdaa51b248029d1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac86f4279b0b5d4bf5daf02a2156254a9" id="r_ac86f4279b0b5d4bf5daf02a2156254a9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#ac86f4279b0b5d4bf5daf02a2156254a9">default_admin_operation_timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
<tr class="separator:ac86f4279b0b5d4bf5daf02a2156254a9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ce899016722e579349f7e03861f2118" id="r_a1ce899016722e579349f7e03861f2118"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1ce899016722e579349f7e03861f2118">default_rpc_timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
<tr class="separator:a1ce899016722e579349f7e03861f2118"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc5c4bb721af6dbc553045096d5b75ef" id="r_afc5c4bb721af6dbc553045096d5b75ef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#afc5c4bb721af6dbc553045096d5b75ef">connection_negotiation_timeout</a> (const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;timeout)</td></tr>
<tr class="separator:afc5c4bb721af6dbc553045096d5b75ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2111cd52c1c29c30c68d2394357207d" id="r_ab2111cd52c1c29c30c68d2394357207d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#ab2111cd52c1c29c30c68d2394357207d">jwt</a> (const std::string &amp;jwt)</td></tr>
<tr class="separator:ab2111cd52c1c29c30c68d2394357207d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9eeb69e29d525e7abd6e1ef89b54f3f8" id="r_a9eeb69e29d525e7abd6e1ef89b54f3f8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a9eeb69e29d525e7abd6e1ef89b54f3f8">import_authentication_credentials</a> (std::string authn_creds)</td></tr>
<tr class="separator:a9eeb69e29d525e7abd6e1ef89b54f3f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add45b5e0f1412d4af7d2bf97994ea4b2" id="r_add45b5e0f1412d4af7d2bf97994ea4b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#add45b5e0f1412d4af7d2bf97994ea4b2">trusted_certificate</a> (const std::string &amp;cert_pem)</td></tr>
<tr class="separator:add45b5e0f1412d4af7d2bf97994ea4b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acb7f399a90a34fcfde56d68549e0f3d2" id="r_acb7f399a90a34fcfde56d68549e0f3d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#acb7f399a90a34fcfde56d68549e0f3d2">num_reactors</a> (int num_reactors)</td></tr>
<tr class="memdesc:acb7f399a90a34fcfde56d68549e0f3d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the number of reactors for the RPC messenger. <br /></td></tr>
<tr class="separator:acb7f399a90a34fcfde56d68549e0f3d2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e16284fba536caac33f57449ba759a8" id="r_a0e16284fba536caac33f57449ba759a8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a0e16284fba536caac33f57449ba759a8">sasl_protocol_name</a> (const std::string &amp;sasl_protocol_name)</td></tr>
<tr class="separator:a0e16284fba536caac33f57449ba759a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a155bd666a678a20a2a87b2cc5ba55d68" id="r_a155bd666a678a20a2a87b2cc5ba55d68"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a155bd666a678a20a2a87b2cc5ba55d68">require_authentication</a> (bool require_authentication)</td></tr>
<tr class="separator:a155bd666a678a20a2a87b2cc5ba55d68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07141ddb7e8ce1fdd1144ffc9486c8f2" id="r_a07141ddb7e8ce1fdd1144ffc9486c8f2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a07141ddb7e8ce1fdd1144ffc9486c8f2">encryption_policy</a> (<a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbd">EncryptionPolicy</a> encryption_policy)</td></tr>
<tr class="separator:a07141ddb7e8ce1fdd1144ffc9486c8f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1585dd6eff82519fe81088d1cfd35b77" id="r_a1585dd6eff82519fe81088d1cfd35b77"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1Status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a1585dd6eff82519fe81088d1cfd35b77">Build</a> (sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> &gt; *client)</td></tr>
<tr class="separator:a1585dd6eff82519fe81088d1cfd35b77"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>A "factory" for <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> objects. </p>
<p>This class is used to create instances of the <a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a> class with pre-set options/parameters. </p>
</div><h2 class="groupheader">Member Enumeration Documentation</h2>
<a id="a599cb3ea46b08531eb37ad3586bc6fbd" name="a599cb3ea46b08531eb37ad3586bc6fbd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a599cb3ea46b08531eb37ad3586bc6fbd">&#9670;&#160;</a></span>EncryptionPolicy</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbd">kudu::client::KuduClientBuilder::EncryptionPolicy</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Policy for on-the-wire encryption. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="a599cb3ea46b08531eb37ad3586bc6fbdaee483fad5e8eddc9e32eafc1ce1f7b14" name="a599cb3ea46b08531eb37ad3586bc6fbdaee483fad5e8eddc9e32eafc1ce1f7b14"></a>OPTIONAL&#160;</td><td class="fielddoc"><p>Optional, it uses encrypted connection if the server supports it, but it can connect to insecure servers too. </p>
</td></tr>
<tr><td class="fieldname"><a id="a599cb3ea46b08531eb37ad3586bc6fbda6edcb83b00da5c333232ccb935db919b" name="a599cb3ea46b08531eb37ad3586bc6fbda6edcb83b00da5c333232ccb935db919b"></a>REQUIRED_REMOTE&#160;</td><td class="fielddoc"><p>Only connects to remote servers that support encryption, fails otherwise. It can connect to insecure servers only locally. </p>
</td></tr>
<tr><td class="fieldname"><a id="a599cb3ea46b08531eb37ad3586bc6fbda0a0f8f2d17a5d532959579e9a4bb6011" name="a599cb3ea46b08531eb37ad3586bc6fbda0a0f8f2d17a5d532959579e9a4bb6011"></a>REQUIRED&#160;</td><td class="fielddoc"><p>Only connects to any server, including on the loopback interface, that support encryption, fails otherwise. </p>
</td></tr>
</table>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="aef620c83e11ec5b4cdaa51b248029d1f" name="aef620c83e11ec5b4cdaa51b248029d1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef620c83e11ec5b4cdaa51b248029d1f">&#9670;&#160;</a></span>add_master_server_addr()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::add_master_server_addr </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>addr</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Add an RPC address of a master to work with.</p>
<p>At least one master is required.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">addr</td><td>RPC address of master server to add. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a1585dd6eff82519fe81088d1cfd35b77" name="a1585dd6eff82519fe81088d1cfd35b77"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1585dd6eff82519fe81088d1cfd35b77">&#9670;&#160;</a></span>Build()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1Status.html">Status</a> kudu::client::KuduClientBuilder::Build </td>
<td>(</td>
<td class="paramtype">sp::shared_ptr&lt; <a class="el" href="classkudu_1_1client_1_1KuduClient.html">KuduClient</a> &gt; *&#160;</td>
<td class="paramname"><em>client</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Create a client object.</p>
<dl class="section note"><dt>Note</dt><dd>KuduClients objects are shared amongst multiple threads and, as such, are stored in shared pointers.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[out]</td><td class="paramname">client</td><td>The newly created object wrapped in a shared pointer. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Operation status. The return value may indicate an error in the create operation, or a misuse of the builder; in the latter case, only the last error is returned. </dd></dl>
</div>
</div>
<a id="a341d5d14f5cd778fd6c2fe289b1e7e5a" name="a341d5d14f5cd778fd6c2fe289b1e7e5a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a341d5d14f5cd778fd6c2fe289b1e7e5a">&#9670;&#160;</a></span>clear_master_server_addrs()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::clear_master_server_addrs </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Clear the set of master addresses.</p>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="afc5c4bb721af6dbc553045096d5b75ef" name="afc5c4bb721af6dbc553045096d5b75ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc5c4bb721af6dbc553045096d5b75ef">&#9670;&#160;</a></span>connection_negotiation_timeout()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::connection_negotiation_timeout </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
<td class="paramname"><em>timeout</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the timeout for negotiating a connection to a remote server.</p>
<p>If not provided, the underlying messenger is created with reasonable default. The result value could be retrieved using <code><a class="el" href="classkudu_1_1client_1_1KuduClient.html#a68b569dd6749ec61805e3b0a691eacac">KuduClient.connection_negotiation_timeout()</a></code> after an instance of <code><a class="el" href="classkudu_1_1client_1_1KuduClient.html" title="A handle for a connection to a cluster.">KuduClient</a></code> is created. Sometimes it makes sense to customize the timeout for connection negotiation, e.g. when running on a cluster with heavily loaded tablet servers. For details on the connection negotiation, see ../../../docs/design-docs/rpc.md::negotiation.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="ac86f4279b0b5d4bf5daf02a2156254a9" name="ac86f4279b0b5d4bf5daf02a2156254a9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac86f4279b0b5d4bf5daf02a2156254a9">&#9670;&#160;</a></span>default_admin_operation_timeout()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::default_admin_operation_timeout </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
<td class="paramname"><em>timeout</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the default timeout for administrative operations.</p>
<p>Using this method it is possible to modify the default timeout for operations like CreateTable, AlterTable, etc. By default it is 30 seconds.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a1ce899016722e579349f7e03861f2118" name="a1ce899016722e579349f7e03861f2118"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ce899016722e579349f7e03861f2118">&#9670;&#160;</a></span>default_rpc_timeout()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::default_rpc_timeout </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classkudu_1_1MonoDelta.html">MonoDelta</a> &amp;&#160;</td>
<td class="paramname"><em>timeout</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the default timeout for individual RPCs.</p>
<p>If not provided, defaults to 10 seconds.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>Timeout value to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a07141ddb7e8ce1fdd1144ffc9486c8f2" name="a07141ddb7e8ce1fdd1144ffc9486c8f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a07141ddb7e8ce1fdd1144ffc9486c8f2">&#9670;&#160;</a></span>encryption_policy()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::encryption_policy </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html#a599cb3ea46b08531eb37ad3586bc6fbd">EncryptionPolicy</a>&#160;</td>
<td class="paramname"><em>encryption_policy</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Require encryption for the connection to a remote server.</p>
<p>If it's set to REQUIRED_REMOTE or REQUIRED, the client will require encrypting the traffic between the server and the client. If the server doesn't support encryption, or if it's disabled, the client will fail to connect.</p>
<p>Loopback connections are encrypted only if 'encryption_policy' is set to REQUIRED, or if it's required by the server.</p>
<p>The default value is OPTIONAL, which allows connecting to servers without encryption as well, but it will still attempt to use it if the server supports it.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">encryption_policy</td><td>Which encryption policy to use. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a9eeb69e29d525e7abd6e1ef89b54f3f8" name="a9eeb69e29d525e7abd6e1ef89b54f3f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9eeb69e29d525e7abd6e1ef89b54f3f8">&#9670;&#160;</a></span>import_authentication_credentials()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::import_authentication_credentials </td>
<td>(</td>
<td class="paramtype">std::string&#160;</td>
<td class="paramname"><em>authn_creds</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Import serialized authentication credentials from another client.</p>
<dl class="section note"><dt>Note</dt><dd>If both <code>import_authentication_credentials</code> and this method are called on the object, the JWT provided with this call overrides the corresponding JWT (if present) that comes as part of the imported authentication credentials.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">authn_creds</td><td>The serialized authentication credentials, provided by a call to <code><a class="el" href="classkudu_1_1client_1_1KuduClient.html#ae932971967e58a8a7b85f6a56ee44cd0">KuduClient.ExportAuthenticationCredentials</a></code> in the C++ client or <code>KuduClient::exportAuthenticationCredentials</code> in the Java client. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="ab2111cd52c1c29c30c68d2394357207d" name="ab2111cd52c1c29c30c68d2394357207d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab2111cd52c1c29c30c68d2394357207d">&#9670;&#160;</a></span>jwt()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::jwt </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>jwt</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set JWT (JSON Web Token) to authenticate the client to a server.</p>
<dl class="section note"><dt>Note</dt><dd>If both <code>import_authentication_credentials</code> and this method are called on the object, the JWT provided with this call overrides the corresponding JWT (if present) that comes as part of the imported authentication credentials.</dd></dl>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">jwt</td><td>The JSON web token to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a2644e98434b7099189482fc461e4a1f1" name="a2644e98434b7099189482fc461e4a1f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2644e98434b7099189482fc461e4a1f1">&#9670;&#160;</a></span>master_server_addrs()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::master_server_addrs </td>
<td>(</td>
<td class="paramtype">const std::vector&lt; std::string &gt; &amp;&#160;</td>
<td class="paramname"><em>addrs</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Add RPC addresses of multiple masters.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">addrs</td><td>RPC addresses of masters to add. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="acb7f399a90a34fcfde56d68549e0f3d2" name="acb7f399a90a34fcfde56d68549e0f3d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acb7f399a90a34fcfde56d68549e0f3d2">&#9670;&#160;</a></span>num_reactors()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::num_reactors </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>num_reactors</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the number of reactors for the RPC messenger. </p>
<p>The reactor threads are used for sending and receiving. If not provided, the underlying messenger is created with the default number of reactor threads.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">num_reactors</td><td>Number of reactors to set. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a155bd666a678a20a2a87b2cc5ba55d68" name="a155bd666a678a20a2a87b2cc5ba55d68"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a155bd666a678a20a2a87b2cc5ba55d68">&#9670;&#160;</a></span>require_authentication()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::require_authentication </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>require_authentication</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Require authentication for the connection to a remote server.</p>
<p>If it's set to true, the client will require mutual authentication between the server and the client. If the server doesn't support authentication, or it's disabled, the client will fail to connect.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">require_authentication</td><td>Whether to require authentication. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="a0e16284fba536caac33f57449ba759a8" name="a0e16284fba536caac33f57449ba759a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0e16284fba536caac33f57449ba759a8">&#9670;&#160;</a></span>sasl_protocol_name()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::sasl_protocol_name </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>sasl_protocol_name</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Set the SASL protocol name for the connection to a remote server.</p>
<p>If the servers use a non-default Kerberos service principal name (other than "kudu" or "kudu/&lt;hostname&gt;", this needs to be set for the client to be able to connect to the servers. If unset, the client will assume the server is using the default service principal.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">sasl_protocol_name</td><td>SASL protocol name. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<a id="add45b5e0f1412d4af7d2bf97994ea4b2" name="add45b5e0f1412d4af7d2bf97994ea4b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add45b5e0f1412d4af7d2bf97994ea4b2">&#9670;&#160;</a></span>trusted_certificate()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classkudu_1_1client_1_1KuduClientBuilder.html">KuduClientBuilder</a> &amp; kudu::client::KuduClientBuilder::trusted_certificate </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>cert_pem</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Add a trusted root CA certificate into the client's TLS certificate bundle.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramdir">[in]</td><td class="paramname">cert_pem</td><td>The trusted certificate to add, in PEM format. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Reference to the updated object. </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>include/kudu/client/<a class="el" href="client_8h_source.html">client.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/>
<address class="footer">
<small>Generated for Kudu version 1.17.0 on Mon Sep 4 2023 19:49:30 by Doxygen 1.9.8</small>
<br>
<small>Copyright © 2023 The Apache Software Foundation.</small>
</address>
</body>
</html>