You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kudu.apache.org by mp...@apache.org on 2018/03/22 21:31:30 UTC

[17/51] [partial] kudu-site git commit: Publish commit(s) from site source repo: 33b9334 Fix 1.7.0 apidocs and cpp-client-api

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.html
new file mode 100644
index 0000000..723ca2f
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.html
@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: kudu::client::KuduInsert 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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_insert.html">KuduInsert</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1_kudu_insert-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduInsert Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>A single row insert to be sent to the cluster.  
+ <a href="classkudu_1_1client_1_1_kudu_insert.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="write__op_8h_source.html">write_op.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduInsert:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classkudu_1_1client_1_1_kudu_insert.png" usemap="#kudu::client::KuduInsert_map" alt=""/>
+  <map id="kudu::client::KuduInsert_map" name="kudu::client::KuduInsert_map">
+<area href="classkudu_1_1client_1_1_kudu_write_operation.html" title="A single-row write operation to be sent to a Kudu table. " alt="kudu::client::KuduWriteOperation" shape="rect" coords="0,0,195,24"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a7c0fb45a5bfa96574b6328be392ba240"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_insert.html#a7c0fb45a5bfa96574b6328be392ba240">ToString</a> () const OVERRIDE</td></tr>
+<tr class="separator:a7c0fb45a5bfa96574b6328be392ba240"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="inherit_header pub_methods_classkudu_1_1client_1_1_kudu_write_operation"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classkudu_1_1client_1_1_kudu_write_operation')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classkudu_1_1client_1_1_kudu_write_operation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:ab73a467a979bc76bb4738ba038d7f0bd inherit pub_methods_classkudu_1_1client_1_1_kudu_write_operation"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_kudu_partial_row.html">KuduPartialRow</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_write_operation.html#ab73a467a979bc76bb4738ba038d7f0bd">row</a> () const</td></tr>
+<tr class="separator:ab73a467a979bc76bb4738ba038d7f0bd inherit pub_methods_classkudu_1_1client_1_1_kudu_write_operation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1_kudu_write_operation"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_kudu_partial_row.html">KuduPartialRow</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_write_operation.html#a8889770ce62e2ca0ce5d55c9c90af6bc">mutable_row</a> ()</td></tr>
+<tr class="separator:a8889770ce62e2ca0ce5d55c9c90af6bc inherit pub_methods_classkudu_1_1client_1_1_kudu_write_operation"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a770744f0111b5919212173a7efaf85cd"><td class="memItemLeft" align="right" valign="top"><a id="a770744f0111b5919212173a7efaf85cd"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduTable</b></td></tr>
+<tr class="separator:a770744f0111b5919212173a7efaf85cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
+Additional Inherited Members</h2></td></tr>
+<tr class="inherit_header pub_types_classkudu_1_1client_1_1_kudu_write_operation"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classkudu_1_1client_1_1_kudu_write_operation')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classkudu_1_1client_1_1_kudu_write_operation.html">kudu::client::KuduWriteOperation</a></td></tr>
+<tr class="memitem:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1_kudu_write_operation"><td class="memItemLeft" align="right" valign="top"><a id="a87d94ee5801a6b16fc6d1f44ee2e4357"></a>enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_write_operation.html#a87d94ee5801a6b16fc6d1f44ee2e4357">Type</a> { <b>INSERT</b> = 1, 
+<b>UPDATE</b> = 2, 
+<b>DELETE</b> = 3, 
+<b>UPSERT</b> = 4
+ }</td></tr>
+<tr class="memdesc:a87d94ee5801a6b16fc6d1f44ee2e4357"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write operation types. <br /></td></tr>
+<tr class="separator:a87d94ee5801a6b16fc6d1f44ee2e4357 inherit pub_types_classkudu_1_1client_1_1_kudu_write_operation"><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 single row insert to be sent to the cluster. </p>
+<dl class="section pre"><dt>Precondition</dt><dd>An insert requires all key columns to be set, as well as all columns which do not have default values. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a id="a7c0fb45a5bfa96574b6328be392ba240"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a7c0fb45a5bfa96574b6328be392ba240">&#9670;&nbsp;</a></span>ToString()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual std::string kudu::client::KuduInsert::ToString </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<dl class="section return"><dt>Returns</dt><dd>String representation of the operation. </dd></dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1_kudu_write_operation.html#a50b5405c4dfc7af038daa4780aea6e19">kudu::client::KuduWriteOperation</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="write__op_8h_source.html">write_op.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.png
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.png b/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.png
new file mode 100644
index 0000000..4862b06
Binary files /dev/null and b/cpp-client-api/classkudu_1_1client_1_1_kudu_insert.png differ

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback-members.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback-members.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback-members.html
new file mode 100644
index 0000000..8d49c00
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback-members.html
@@ -0,0 +1,87 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: Member List</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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_logging_callback.html">KuduLoggingCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingCallback Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html#a59db98413fb312d260fcb08299bae89c">Run</a>(KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len)=0</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">pure virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.html
new file mode 100644
index 0000000..15c5977
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.html
@@ -0,0 +1,186 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: kudu::client::KuduLoggingCallback 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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_logging_callback.html">KuduLoggingCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="classkudu_1_1client_1_1_kudu_logging_callback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingCallback Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The interface for all logging callbacks.  
+ <a href="classkudu_1_1client_1_1_kudu_logging_callback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduLoggingCallback:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classkudu_1_1client_1_1_kudu_logging_callback.png" usemap="#kudu::client::KuduLoggingCallback_map" alt=""/>
+  <map id="kudu::client::KuduLoggingCallback_map" name="kudu::client::KuduLoggingCallback_map">
+<area href="classkudu_1_1client_1_1_kudu_logging_function_callback.html" title="The logging callback that invokes a function by pointer with a single argument. " alt="kudu::client::KuduLoggingFunctionCallback&lt; T &gt;" shape="rect" coords="0,56,284,80"/>
+<area href="classkudu_1_1client_1_1_kudu_logging_member_callback.html" title="The logging callback that invokes a member function of an object. " alt="kudu::client::KuduLoggingMemberCallback&lt; T &gt;" shape="rect" coords="294,56,578,80"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a59db98413fb312d260fcb08299bae89c"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html#a59db98413fb312d260fcb08299bae89c">Run</a> (KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len)=0</td></tr>
+<tr class="separator:a59db98413fb312d260fcb08299bae89c"><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>The interface for all logging callbacks. </p>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a id="a59db98413fb312d260fcb08299bae89c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a59db98413fb312d260fcb08299bae89c">&#9670;&nbsp;</a></span>Run()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void kudu::client::KuduLoggingCallback::Run </td>
+          <td>(</td>
+          <td class="paramtype">KuduLogSeverity&#160;</td>
+          <td class="paramname"><em>severity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>filename</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line_number</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const struct ::tm *&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>message_len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Log the message.</p>
+<dl class="section note"><dt>Note</dt><dd>The <code>message</code> is NOT terminated with an endline.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>Severity of the log message. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>The name of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line_number</td><td>The line of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>The absolute time when the log event was generated. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>The message to log. It's not terminated with an endline. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message_len</td><td>Number of characters in the <code>message</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implemented in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#ae22e9139102f60d049c29e888c6a528d">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>, and <a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#aafb1373a805d6e05c0fc5715927677c9">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.png
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.png b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.png
new file mode 100644
index 0000000..78fe0e8
Binary files /dev/null and b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_callback.png differ

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback-members.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback-members.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback-members.html
new file mode 100644
index 0000000..a4a419f
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback-members.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: Member List</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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_logging_function_callback.html">KuduLoggingFunctionCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingFunctionCallback&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#a309185776b93bf5e532440b4638a649d">FunctionType</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#a4263c504b21e0e5827f47a902e908a2c">KuduLoggingFunctionCallback</a>(FunctionType function, T arg)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#ae22e9139102f60d049c29e888c6a528d">Run</a>(KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len) OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.html
new file mode 100644
index 0000000..0be2e9c
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.html
@@ -0,0 +1,249 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: kudu::client::KuduLoggingFunctionCallback&lt; T &gt; Class Template 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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_logging_function_callback.html">KuduLoggingFunctionCallback</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_1_kudu_logging_function_callback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingFunctionCallback&lt; T &gt; Class Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The logging callback that invokes a function by pointer with a single argument.  
+ <a href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduLoggingFunctionCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classkudu_1_1client_1_1_kudu_logging_function_callback.png" usemap="#kudu::client::KuduLoggingFunctionCallback_3C_20T_20_3E_map" alt=""/>
+  <map id="kudu::client::KuduLoggingFunctionCallback_3C_20T_20_3E_map" name="kudu::client::KuduLoggingFunctionCallback_3C_20T_20_3E_map">
+<area href="classkudu_1_1client_1_1_kudu_logging_callback.html" title="The interface for all logging callbacks. " alt="kudu::client::KuduLoggingCallback" shape="rect" coords="0,0,284,24"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a309185776b93bf5e532440b4638a649d"><td class="memItemLeft" align="right" valign="top"><a id="a309185776b93bf5e532440b4638a649d"></a>
+typedef void(*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#a309185776b93bf5e532440b4638a649d">FunctionType</a>) (T arg, KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len)</td></tr>
+<tr class="memdesc:a309185776b93bf5e532440b4638a649d"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the function with appropriate signature. <br /></td></tr>
+<tr class="separator:a309185776b93bf5e532440b4638a649d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a4263c504b21e0e5827f47a902e908a2c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#a4263c504b21e0e5827f47a902e908a2c">KuduLoggingFunctionCallback</a> (<a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#a309185776b93bf5e532440b4638a649d">FunctionType</a> function, T arg)</td></tr>
+<tr class="separator:a4263c504b21e0e5827f47a902e908a2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ae22e9139102f60d049c29e888c6a528d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#ae22e9139102f60d049c29e888c6a528d">Run</a> (KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len) OVERRIDE</td></tr>
+<tr class="separator:ae22e9139102f60d049c29e888c6a528d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+class kudu::client::KuduLoggingFunctionCallback&lt; T &gt;</h3>
+
+<p>The logging callback that invokes a function by pointer with a single argument. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="a4263c504b21e0e5827f47a902e908a2c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a4263c504b21e0e5827f47a902e908a2c">&#9670;&nbsp;</a></span>KuduLoggingFunctionCallback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">kudu::client::KuduLoggingFunctionCallback</a>&lt; T &gt;::<a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">KuduLoggingFunctionCallback</a> </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html#a309185776b93bf5e532440b4638a649d">FunctionType</a>&#160;</td>
+          <td class="paramname"><em>function</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">T&#160;</td>
+          <td class="paramname"><em>arg</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Build an instance of <a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html" title="The logging callback that invokes a function by pointer with a single argument. ">KuduLoggingFunctionCallback</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">function</td><td>A pointer to the logging function to invoke with the <code>arg</code> argument. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">arg</td><td>An argument for the function invocation. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="ae22e9139102f60d049c29e888c6a528d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ae22e9139102f60d049c29e888c6a528d">&#9670;&nbsp;</a></span>Run()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="classkudu_1_1client_1_1_kudu_logging_function_callback.html">kudu::client::KuduLoggingFunctionCallback</a>&lt; T &gt;::Run </td>
+          <td>(</td>
+          <td class="paramtype">KuduLogSeverity&#160;</td>
+          <td class="paramname"><em>severity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>filename</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line_number</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const struct ::tm *&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>message_len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Log the message.</p>
+<dl class="section note"><dt>Note</dt><dd>The <code>message</code> is NOT terminated with an endline.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>Severity of the log message. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>The name of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line_number</td><td>The line of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>The absolute time when the log event was generated. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>The message to log. It's not terminated with an endline. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message_len</td><td>Number of characters in the <code>message</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html#a59db98413fb312d260fcb08299bae89c">kudu::client::KuduLoggingCallback</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.png
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.png b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.png
new file mode 100644
index 0000000..c1a75b9
Binary files /dev/null and b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_function_callback.png differ

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback-members.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback-members.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback-members.html
new file mode 100644
index 0000000..3489fba
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback-members.html
@@ -0,0 +1,89 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: Member List</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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_logging_member_callback.html">KuduLoggingMemberCallback</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingMemberCallback&lt; T &gt; Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#aeda4119b1288db0d055c9800e3485fd8">KuduLoggingMemberCallback</a>(T *object, MemberType member)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#a55d1578018eb025dd6ae8d07cfbda59d">MemberType</a> typedef</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#aafb1373a805d6e05c0fc5715927677c9">Run</a>(KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len) OVERRIDE</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">kudu::client::KuduLoggingMemberCallback&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>~KuduLoggingCallback</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html">kudu::client::KuduLoggingCallback</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.html
new file mode 100644
index 0000000..5a1698d
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.html
@@ -0,0 +1,249 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: kudu::client::KuduLoggingMemberCallback&lt; T &gt; Class Template 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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_logging_member_callback.html">KuduLoggingMemberCallback</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_1_kudu_logging_member_callback-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduLoggingMemberCallback&lt; T &gt; Class Template Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>The logging callback that invokes a member function of an object.  
+ <a href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#details">More...</a></p>
+
+<p><code>#include &lt;<a class="el" href="callbacks_8h_source.html">callbacks.h</a>&gt;</code></p>
+<div class="dynheader">
+Inheritance diagram for kudu::client::KuduLoggingMemberCallback&lt; T &gt;:</div>
+<div class="dyncontent">
+ <div class="center">
+  <img src="classkudu_1_1client_1_1_kudu_logging_member_callback.png" usemap="#kudu::client::KuduLoggingMemberCallback_3C_20T_20_3E_map" alt=""/>
+  <map id="kudu::client::KuduLoggingMemberCallback_3C_20T_20_3E_map" name="kudu::client::KuduLoggingMemberCallback_3C_20T_20_3E_map">
+<area href="classkudu_1_1client_1_1_kudu_logging_callback.html" title="The interface for all logging callbacks. " alt="kudu::client::KuduLoggingCallback" shape="rect" coords="0,0,281,24"/>
+</map>
+ </div></div>
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
+Public Types</h2></td></tr>
+<tr class="memitem:a55d1578018eb025dd6ae8d07cfbda59d"><td class="memItemLeft" align="right" valign="top"><a id="a55d1578018eb025dd6ae8d07cfbda59d"></a>
+typedef void(T::*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#a55d1578018eb025dd6ae8d07cfbda59d">MemberType</a>) (KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len)</td></tr>
+<tr class="memdesc:a55d1578018eb025dd6ae8d07cfbda59d"><td class="mdescLeft">&#160;</td><td class="mdescRight">A handy typedef for the member function with appropriate signature. <br /></td></tr>
+<tr class="separator:a55d1578018eb025dd6ae8d07cfbda59d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:aeda4119b1288db0d055c9800e3485fd8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#aeda4119b1288db0d055c9800e3485fd8">KuduLoggingMemberCallback</a> (T *object, <a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#a55d1578018eb025dd6ae8d07cfbda59d">MemberType</a> member)</td></tr>
+<tr class="separator:aeda4119b1288db0d055c9800e3485fd8"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aafb1373a805d6e05c0fc5715927677c9"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#aafb1373a805d6e05c0fc5715927677c9">Run</a> (KuduLogSeverity severity, const char *filename, int line_number, const struct ::tm *time, const char *message, size_t message_len) OVERRIDE</td></tr>
+<tr class="separator:aafb1373a805d6e05c0fc5715927677c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
+<div class="textblock"><h3>template&lt;typename T&gt;<br />
+class kudu::client::KuduLoggingMemberCallback&lt; T &gt;</h3>
+
+<p>The logging callback that invokes a member function of an object. </p>
+</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
+<a id="aeda4119b1288db0d055c9800e3485fd8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aeda4119b1288db0d055c9800e3485fd8">&#9670;&nbsp;</a></span>KuduLoggingMemberCallback()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">kudu::client::KuduLoggingMemberCallback</a>&lt; T &gt;::<a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">KuduLoggingMemberCallback</a> </td>
+          <td>(</td>
+          <td class="paramtype">T *&#160;</td>
+          <td class="paramname"><em>object</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html#a55d1578018eb025dd6ae8d07cfbda59d">MemberType</a>&#160;</td>
+          <td class="paramname"><em>member</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+<p>Build an instance of <a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html" title="The logging callback that invokes a member function of an object. ">KuduLoggingMemberCallback</a>.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">object</td><td>A pointer to the object. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">member</td><td>A pointer to the member function of the <code>object</code> to invoke. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+</div>
+</div>
+<h2 class="groupheader">Member Function Documentation</h2>
+<a id="aafb1373a805d6e05c0fc5715927677c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#aafb1373a805d6e05c0fc5715927677c9">&#9670;&nbsp;</a></span>Run()</h2>
+
+<div class="memitem">
+<div class="memproto">
+<div class="memtemplate">
+template&lt;typename T &gt; </div>
+<table class="mlabels">
+  <tr>
+  <td class="mlabels-left">
+      <table class="memname">
+        <tr>
+          <td class="memname">virtual void <a class="el" href="classkudu_1_1client_1_1_kudu_logging_member_callback.html">kudu::client::KuduLoggingMemberCallback</a>&lt; T &gt;::Run </td>
+          <td>(</td>
+          <td class="paramtype">KuduLogSeverity&#160;</td>
+          <td class="paramname"><em>severity</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>filename</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int&#160;</td>
+          <td class="paramname"><em>line_number</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const struct ::tm *&#160;</td>
+          <td class="paramname"><em>time</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const char *&#160;</td>
+          <td class="paramname"><em>message</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>message_len</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+  </td>
+  <td class="mlabels-right">
+<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span>  </td>
+  </tr>
+</table>
+</div><div class="memdoc">
+
+<p></p>
+<p>Log the message.</p>
+<dl class="section note"><dt>Note</dt><dd>The <code>message</code> is NOT terminated with an endline.</dd></dl>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">severity</td><td>Severity of the log message. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">filename</td><td>The name of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">line_number</td><td>The line of the source file the message is originated from. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">time</td><td>The absolute time when the log event was generated. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message</td><td>The message to log. It's not terminated with an endline. </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">message_len</td><td>Number of characters in the <code>message</code>. </td></tr>
+  </table>
+  </dd>
+</dl>
+
+<p>Implements <a class="el" href="classkudu_1_1client_1_1_kudu_logging_callback.html#a59db98413fb312d260fcb08299bae89c">kudu::client::KuduLoggingCallback</a>.</p>
+
+</div>
+</div>
+<hr/>The documentation for this class was generated from the following file:<ul>
+<li>include/kudu/client/<a class="el" href="callbacks_8h_source.html">callbacks.h</a></li>
+</ul>
+</div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.png
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.png b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.png
new file mode 100644
index 0000000..b92bab8
Binary files /dev/null and b/cpp-client-api/classkudu_1_1client_1_1_kudu_logging_member_callback.png differ

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner-members.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner-members.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner-members.html
new file mode 100644
index 0000000..7db84a1
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner-members.html
@@ -0,0 +1,88 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: Member List</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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_partitioner.html">KuduPartitioner</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitioner Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a>, including all inherited members.</p>
+<table class="directory">
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>KuduPartitionerBuilder</b> (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"><span class="mlabel">friend</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html#a73fa744430a09ba8c75410f07882714a">NumPartitions</a>() const</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html#a05d816ba08d85d5c0c95025e12d2e369">PartitionRow</a>(const KuduPartialRow &amp;row, int *partition)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduPartitioner</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">kudu::client::KuduPartitioner</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner.html
new file mode 100644
index 0000000..33de378
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner.html
@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: kudu::client::KuduPartitioner 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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_partitioner.html">KuduPartitioner</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="summary">
+<a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#friends">Friends</a> &#124;
+<a href="classkudu_1_1client_1_1_kudu_partitioner-members.html">List of all members</a>  </div>
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitioner Class Reference</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<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 name="pub-methods"></a>
+Public Member Functions</h2></td></tr>
+<tr class="memitem:a73fa744430a09ba8c75410f07882714a"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html#a73fa744430a09ba8c75410f07882714a">NumPartitions</a> () const</td></tr>
+<tr class="separator:a73fa744430a09ba8c75410f07882714a"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a05d816ba08d85d5c0c95025e12d2e369"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classkudu_1_1_status.html">Status</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html#a05d816ba08d85d5c0c95025e12d2e369">PartitionRow</a> (const <a class="el" href="class_kudu_partial_row.html">KuduPartialRow</a> &amp;row, int *partition)</td></tr>
+<tr class="separator:a05d816ba08d85d5c0c95025e12d2e369"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
+Friends</h2></td></tr>
+<tr class="memitem:a4a88b01a7cf6a8b126e310af8a973077"><td class="memItemLeft" align="right" valign="top"><a id="a4a88b01a7cf6a8b126e310af8a973077"></a>
+class&#160;</td><td class="memItemRight" valign="bottom"><b>KuduPartitionerBuilder</b></td></tr>
+<tr class="separator:a4a88b01a7cf6a8b126e310af8a973077"><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 <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">KuduPartitioner</a> allows clients to determine the target partition of a row without actually performing a write. The set of partitions is eagerly fetched when the <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner.html">KuduPartitioner</a> is constructed so that the actual partitioning step can be performed synchronously without any network trips.</p>
+<dl class="section note"><dt>Note</dt><dd>Because this operates on a metadata snapshot retrieved at construction time, it will not reflect any metadata changes to the table that have occurred since its creation.</dd></dl>
+<dl class="section warning"><dt>Warning</dt><dd>This class is not thread-safe. </dd></dl>
+</div><h2 class="groupheader">Member Function Documentation</h2>
+<a id="a73fa744430a09ba8c75410f07882714a"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a73fa744430a09ba8c75410f07882714a">&#9670;&nbsp;</a></span>NumPartitions()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">int kudu::client::KuduPartitioner::NumPartitions </td>
+          <td>(</td>
+          <td class="paramname"></td><td>)</td>
+          <td> const</td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return the number of partitions known by this partitioner. The partition indices returned by <code>PartitionRow</code> are guaranteed to be less than this value. </p>
+
+</div>
+</div>
+<a id="a05d816ba08d85d5c0c95025e12d2e369"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#a05d816ba08d85d5c0c95025e12d2e369">&#9670;&nbsp;</a></span>PartitionRow()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname"><a class="el" href="classkudu_1_1_status.html">Status</a> kudu::client::KuduPartitioner::PartitionRow </td>
+          <td>(</td>
+          <td class="paramtype">const <a class="el" href="class_kudu_partial_row.html">KuduPartialRow</a> &amp;&#160;</td>
+          <td class="paramname"><em>row</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">int *&#160;</td>
+          <td class="paramname"><em>partition</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Determine the partition index that the given row falls into.</p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">row</td><td>The row to be partitioned. </td></tr>
+    <tr><td class="paramdir">[out]</td><td class="paramname">partition</td><td>The resulting partition index, or -1 if the row falls into a non-covered range. The result will be less than <code>NumPartitioons()</code>.</td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classkudu_1_1_status.html" title="A representation of an operation&#39;s outcome. ">Status</a> OK if successful. May return a bad <a class="el" href="classkudu_1_1_status.html" title="A representation of an operation&#39;s outcome. ">Status</a> if the provided row does not have all columns of the partition key set. </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.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/kudu-site/blob/09800f53/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner_builder-members.html
----------------------------------------------------------------------
diff --git a/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner_builder-members.html b/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner_builder-members.html
new file mode 100644
index 0000000..8dea357
--- /dev/null
+++ b/cpp-client-api/classkudu_1_1client_1_1_kudu_partitioner_builder-members.html
@@ -0,0 +1,88 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
+<meta http-equiv="X-UA-Compatible" content="IE=9"/>
+<meta name="generator" content="Doxygen 1.8.14"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
+<title>Kudu C++ client API: Member List</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 style="height: 56px;">
+  <td id="projectalign" style="padding-left: 0.5em;">
+   <div id="projectname">Kudu C++ client API
+   </div>
+  </td>
+ </tr>
+ </tbody>
+</table>
+</div>
+<!-- end header part -->
+<!-- Generated by Doxygen 1.8.14 -->
+<script type="text/javascript">
+/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+var searchBox = new SearchBox("searchBox", "search",false,'Search');
+/* @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:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
+$(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">
+<iframe src="javascript:void(0)" frameborder="0" 
+        name="MSearchResults" id="MSearchResults">
+</iframe>
+</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_1_kudu_partitioner_builder.html">KuduPartitionerBuilder</a></li>  </ul>
+</div>
+</div><!-- top -->
+<div class="header">
+  <div class="headertitle">
+<div class="title">kudu::client::KuduPartitionerBuilder Member List</div>  </div>
+</div><!--header-->
+<div class="contents">
+
+<p>This is the complete list of members for <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html">kudu::client::KuduPartitionerBuilder</a>, including all inherited members.</p>
+<table class="directory">
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html#aa8859050484de2d367781ce6ec41d0ba">Build</a>(KuduPartitioner **partitioner)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"></td></tr>
+  <tr><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html#a27d130235be1c2691779e1d97732a4ba">KuduPartitionerBuilder</a>(sp::shared_ptr&lt; KuduTable &gt; table)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"><span class="mlabel">explicit</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html#a11e28b7ad87a53a92d2ad5494f2c5f14">SetBuildTimeout</a>(MonoDelta timeout)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>~KuduPartitionerBuilder</b>() (defined in <a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html">kudu::client::KuduPartitionerBuilder</a>)</td><td class="entry"><a class="el" href="classkudu_1_1client_1_1_kudu_partitioner_builder.html">kudu::client::KuduPartitionerBuilder</a></td><td class="entry"></td></tr>
+</table></div><!-- contents -->
+<!-- start footer part -->
+<hr class="footer"/>
+<address class="footer">
+  <small>Generated for Kudu version 1.7.0 on Thu Mar 22 2018 13:30:02 by Doxygen 1.8.14</small>
+  <br>
+  <small>Copyright © 2018 The Apache Software Foundation.</small>
+</address>
+</body>
+</html>