<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.7.0_251) on Sat May 02 18:30:03 PDT 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Uses of Class org.trafodion.dcs.zookeeper.ZkClient (Trafodion Database Connectivity Services 2.4.0 API)</title>
<meta name="date" content="2020-05-02">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="Uses of Class org.trafodion.dcs.zookeeper.ZkClient (Trafodion Database Connectivity Services 2.4.0 API)";
        }
    }
    catch(err) {
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">Class</a></li>
<li class="navBarCell1Rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/trafodion/dcs/zookeeper/class-use/ZkClient.html" target="_top">Frames</a></li>
<li><a href="ZkClient.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip-navbar_top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<div class="header">
<h2 title="Uses of Class org.trafodion.dcs.zookeeper.ZkClient" class="title">Uses of Class<br>org.trafodion.dcs.zookeeper.ZkClient</h2>
</div>
<div class="classUseContainer">
<ul class="blockList">
<li class="blockList">
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing packages, and an explanation">
<caption><span>Packages that use <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Package</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><a href="#org.trafodion.dcs.master">org.trafodion.dcs.master</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.trafodion.dcs.master.listener">org.trafodion.dcs.master.listener</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.trafodion.dcs.server">org.trafodion.dcs.server</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><a href="#org.trafodion.dcs.servermt">org.trafodion.dcs.servermt</a></td>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><a href="#org.trafodion.dcs.servermt.serverHandler">org.trafodion.dcs.servermt.serverHandler</a></td>
<td class="colLast">&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList">
<ul class="blockList">
<li class="blockList"><a name="org.trafodion.dcs.master">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a> in <a href="../../../../../org/trafodion/dcs/master/package-summary.html">org.trafodion.dcs.master</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing methods, and an explanation">
<caption><span>Methods in <a href="../../../../../org/trafodion/dcs/master/package-summary.html">org.trafodion.dcs.master</a> that return <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></code></td>
<td class="colLast"><span class="strong">ServerManager.</span><code><strong><a href="../../../../../org/trafodion/dcs/master/ServerManager.html#getZkClient()">getZkClient</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></code></td>
<td class="colLast"><span class="strong">DcsMaster.</span><code><strong><a href="../../../../../org/trafodion/dcs/master/DcsMaster.html#getZkClient()">getZkClient</a></strong>()</code>&nbsp;</td>
</tr>
</tbody>
</table>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../../org/trafodion/dcs/master/package-summary.html">org.trafodion.dcs.master</a> with parameters of type <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colLast"><code><strong><a href="../../../../../org/trafodion/dcs/master/ServerManager.html#ServerManager(org.trafodion.dcs.master.DcsMaster,%20org.apache.hadoop.conf.Configuration,%20org.trafodion.dcs.zookeeper.ZkClient,%20org.trafodion.dcs.util.DcsNetworkConfiguration,%20long,%20org.trafodion.dcs.master.Metrics)">ServerManager</a></strong>(<a href="../../../../../org/trafodion/dcs/master/DcsMaster.html" title="class in org.trafodion.dcs.master">DcsMaster</a>&nbsp;master,
             org.apache.hadoop.conf.Configuration&nbsp;conf,
             <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a>&nbsp;zkc,
             <a href="../../../../../org/trafodion/dcs/util/DcsNetworkConfiguration.html" title="class in org.trafodion.dcs.util">DcsNetworkConfiguration</a>&nbsp;netConf,
             long&nbsp;startupTimestamp,
             <a href="../../../../../org/trafodion/dcs/master/Metrics.html" title="class in org.trafodion.dcs.master">Metrics</a>&nbsp;metrics)</code>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.trafodion.dcs.master.listener">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a> in <a href="../../../../../org/trafodion/dcs/master/listener/package-summary.html">org.trafodion.dcs.master.listener</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../../org/trafodion/dcs/master/listener/package-summary.html">org.trafodion.dcs.master.listener</a> with parameters of type <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colLast"><code><strong><a href="../../../../../org/trafodion/dcs/master/listener/ListenerService.html#ListenerService(org.trafodion.dcs.zookeeper.ZkClient,%20org.trafodion.dcs.util.DcsNetworkConfiguration,%20int,%20int,%20int,%20int,%20org.trafodion.dcs.master.Metrics,%20java.lang.String)">ListenerService</a></strong>(<a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a>&nbsp;zkc,
               <a href="../../../../../org/trafodion/dcs/util/DcsNetworkConfiguration.html" title="class in org.trafodion.dcs.util">DcsNetworkConfiguration</a>&nbsp;netConf,
               int&nbsp;port,
               int&nbsp;portRange,
               int&nbsp;requestTimeout,
               int&nbsp;selectorTimeout,
               <a href="../../../../../org/trafodion/dcs/master/Metrics.html" title="class in org.trafodion.dcs.master">Metrics</a>&nbsp;metrics,
               <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;parentZnode)</code>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.trafodion.dcs.server">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a> in <a href="../../../../../org/trafodion/dcs/server/package-summary.html">org.trafodion.dcs.server</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../../org/trafodion/dcs/server/package-summary.html">org.trafodion.dcs.server</a> with parameters of type <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colLast"><code><strong><a href="../../../../../org/trafodion/dcs/server/ServerManager.html#ServerManager(org.apache.hadoop.conf.Configuration,%20org.trafodion.dcs.zookeeper.ZkClient,%20org.trafodion.dcs.util.DcsNetworkConfiguration,%20java.lang.String,%20int,%20int)">ServerManager</a></strong>(org.apache.hadoop.conf.Configuration&nbsp;conf,
             <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a>&nbsp;zkc,
             <a href="../../../../../org/trafodion/dcs/util/DcsNetworkConfiguration.html" title="class in org.trafodion.dcs.util">DcsNetworkConfiguration</a>&nbsp;netConf,
             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
             int&nbsp;infoPort,
             int&nbsp;childServers)</code>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.trafodion.dcs.servermt">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a> in <a href="../../../../../org/trafodion/dcs/servermt/package-summary.html">org.trafodion.dcs.servermt</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../../org/trafodion/dcs/servermt/package-summary.html">org.trafodion.dcs.servermt</a> with parameters of type <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colLast"><code><strong><a href="../../../../../org/trafodion/dcs/servermt/ServerManager.html#ServerManager(org.apache.hadoop.conf.Configuration,%20org.trafodion.dcs.zookeeper.ZkClient,%20org.trafodion.dcs.util.DcsNetworkConfiguration,%20java.lang.String,%20int,%20int)">ServerManager</a></strong>(org.apache.hadoop.conf.Configuration&nbsp;conf,
             <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a>&nbsp;zkc,
             <a href="../../../../../org/trafodion/dcs/util/DcsNetworkConfiguration.html" title="class in org.trafodion.dcs.util">DcsNetworkConfiguration</a>&nbsp;netConf,
             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;instance,
             int&nbsp;infoPort,
             int&nbsp;serverThreads)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colLast"><code><strong><a href="../../../../../org/trafodion/dcs/servermt/ServerUtils.html#ServerUtils(org.trafodion.dcs.servermt.serverHandler.ServerHandler,%20org.trafodion.dcs.zookeeper.ZkClient)">ServerUtils</a></strong>(<a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ServerHandler.html" title="class in org.trafodion.dcs.servermt.serverHandler">ServerHandler</a>&nbsp;server,
           <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a>&nbsp;zkc)</code>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
<li class="blockList"><a name="org.trafodion.dcs.servermt.serverHandler">
<!--   -->
</a>
<h3>Uses of <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a> in <a href="../../../../../org/trafodion/dcs/servermt/serverHandler/package-summary.html">org.trafodion.dcs.servermt.serverHandler</a></h3>
<table border="0" cellpadding="3" cellspacing="0" summary="Use table, listing constructors, and an explanation">
<caption><span>Constructors in <a href="../../../../../org/trafodion/dcs/servermt/serverHandler/package-summary.html">org.trafodion.dcs.servermt.serverHandler</a> with parameters of type <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a></span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tbody>
<tr class="altColor">
<td class="colLast"><code><strong><a href="../../../../../org/trafodion/dcs/servermt/serverHandler/ServerHandler.html#ServerHandler(org.apache.hadoop.conf.Configuration,%20org.trafodion.dcs.zookeeper.ZkClient,%20org.trafodion.dcs.util.DcsNetworkConfiguration,%20int,%20int,%20java.lang.String,%20org.trafodion.dcs.util.RetryCounterFactory,%20int,%20byte[],%20int)">ServerHandler</a></strong>(org.apache.hadoop.conf.Configuration&nbsp;conf,
             <a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">ZkClient</a>&nbsp;zkc,
             <a href="../../../../../org/trafodion/dcs/util/DcsNetworkConfiguration.html" title="class in org.trafodion.dcs.util">DcsNetworkConfiguration</a>&nbsp;netConf,
             int&nbsp;instance,
             int&nbsp;infoPort,
             <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;masterHostName,
             <a href="../../../../../org/trafodion/dcs/util/RetryCounterFactory.html" title="class in org.trafodion.dcs.util">RetryCounterFactory</a>&nbsp;retryCounterFactory,
             int&nbsp;assignedPort,
             byte[]&nbsp;cert,
             int&nbsp;serverThread)</code>&nbsp;</td>
</tr>
</tbody>
</table>
</li>
</ul>
</li>
</ul>
</div>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="../package-summary.html">Package</a></li>
<li><a href="../../../../../org/trafodion/dcs/zookeeper/ZkClient.html" title="class in org.trafodion.dcs.zookeeper">Class</a></li>
<li class="navBarCell1Rev">Use</li>
<li><a href="../package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev</li>
<li>Next</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/trafodion/dcs/zookeeper/class-use/ZkClient.html" target="_top">Frames</a></li>
<li><a href="ZkClient.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2020. All rights reserved.</small></p>
</body>
</html>
