blob: 5ba41169e9b17821653eaf7ffd278d3a6541393f [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.5.0.final/javadoc/org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html" />
<!-- Generated by javadoc (version 1.7.0_80) on Tue Dec 29 05:37:08 EST 2015 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>TcpDiscoveryZookeeperIpFinder (Ignite 1.5.0.final)</title>
<meta name="date" content="2015-12-29">
<link rel="stylesheet" type="text/css" href="../../../../../../../../javadoc.css" title="Style">
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-61232409-1', 'auto');
ga('send', 'pageview');
</script></head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="TcpDiscoveryZookeeperIpFinder (Ignite 1.5.0.final)";
}
//-->
</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 class="navBarCell1Rev">Class</li>
<li><a href="class-use/TcpDiscoveryZookeeperIpFinder.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li>Next Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../../index.html?org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html" target="_top">Frames</a></li>
<li><a href="TcpDiscoveryZookeeperIpFinder.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.ignite.spi.discovery.tcp.ipfinder.zk</div>
<h2 title="Class TcpDiscoveryZookeeperIpFinder" class="title">Class TcpDiscoveryZookeeperIpFinder</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html" title="class in org.apache.ignite.spi.discovery.tcp.ipfinder">org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinderAdapter</a></li>
<li>
<ul class="inheritance">
<li>org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinder.html" title="interface in org.apache.ignite.spi.discovery.tcp.ipfinder">TcpDiscoveryIpFinder</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">TcpDiscoveryZookeeperIpFinder</span>
extends <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html" title="class in org.apache.ignite.spi.discovery.tcp.ipfinder">TcpDiscoveryIpFinderAdapter</a></pre>
<div class="block">This TCP Discovery IP Finder uses Apache ZooKeeper (ZK) to locate peer nodes when bootstrapping in order to join
the cluster. It uses the Apache Curator library to interact with ZooKeeper in a simple manner. Specifically,
it uses the <code>ServiceDiscovery</code> recipe, which makes use of ephemeral nodes in ZK to register services.
<p>
There are several ways to instantiate the TcpDiscoveryZookeeperIpFinder:
<li>
<ul>By providing an instance of <code>CuratorFramework</code> directly, in which case no ZK Connection String
is required.</ul>
<ul>By providing a ZK Connection String through <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setZkConnectionString(java.lang.String)"><code>setZkConnectionString(String)</code></a>, and optionally
a <code>RetryPolicy</code> through the setter. If the latter is not provided, a default
<code>ExponentialBackoffRetry</code> policy is used, with a base sleep time of 1000ms and 10 retries.</ul>
<ul>By providing a ZK Connection String through system property <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#PROP_ZK_CONNECTION_STRING"><code>PROP_ZK_CONNECTION_STRING</code></a>. If this
property is set, it overrides the ZK Connection String passed in as a property, but it does not override
the <code>CuratorFramework</code> if provided.</ul>
</li>
You may customise the base path for services, as well as the service name. By default <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#BASE_PATH"><code>BASE_PATH</code></a> and
<a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#SERVICE_NAME"><code>SERVICE_NAME</code></a> are use respectively. You can also choose to enable or disable duplicate registrations. See
<a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setAllowDuplicateRegistrations(boolean)"><code>setAllowDuplicateRegistrations(boolean)</code></a> for more details.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="http://zookeeper.apache.org">Apache ZooKeeper</a>,
<a href="http://curator.apache.org">Apache Curator</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>static <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></code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#PROP_ZK_CONNECTION_STRING">PROP_ZK_CONNECTION_STRING</a></strong></code>
<div class="block">System property name to provide the ZK Connection String.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinderAdapter">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.ignite.spi.discovery.tcp.ipfinder.<a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html" title="class in org.apache.ignite.spi.discovery.tcp.ipfinder">TcpDiscoveryIpFinderAdapter</a></h3>
<code><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#ignite">ignite</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#TcpDiscoveryZookeeperIpFinder()">TcpDiscoveryZookeeperIpFinder</a></strong>()</code>
<div class="block">Constructor.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</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>
<tr class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#getBasePath()">getBasePath</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/net/InetSocketAddress.html?is-external=true" title="class or interface in java.net">InetSocketAddress</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#getRegisteredAddresses()">getRegisteredAddresses</a></strong>()</code>
<div class="block">Gets all addresses registered in this finder.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>org.apache.curator.RetryPolicy</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#getRetryPolicy()">getRetryPolicy</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#getServiceName()">getServiceName</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><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></code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#getZkConnectionString()">getZkConnectionString</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#isAllowDuplicateRegistrations()">isAllowDuplicateRegistrations</a></strong>()</code>
<div class="block">* @return The value of this flag.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#onSpiContextDestroyed()">onSpiContextDestroyed</a></strong>()</code>
<div class="block">Callback invoked prior to stopping grid before SPI context is destroyed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#registerAddresses(java.util.Collection)">registerAddresses</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/net/InetSocketAddress.html?is-external=true" title="class or interface in java.net">InetSocketAddress</a>&gt;&nbsp;addrs)</code>
<div class="block">Registers new addresses.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setAllowDuplicateRegistrations(boolean)">setAllowDuplicateRegistrations</a></strong>(boolean&nbsp;allowDuplicateRegistrations)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setBasePath(java.lang.String)">setBasePath</a></strong>(<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;basePath)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setCurator(org.apache.curator.framework.CuratorFramework)">setCurator</a></strong>(org.apache.curator.framework.CuratorFramework&nbsp;curator)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setRetryPolicy(org.apache.curator.RetryPolicy)">setRetryPolicy</a></strong>(org.apache.curator.RetryPolicy&nbsp;retryPolicy)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setServiceName(java.lang.String)">setServiceName</a></strong>(<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;serviceName)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setZkConnectionString(java.lang.String)">setZkConnectionString</a></strong>(<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;zkConnectionString)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#unregisterAddresses(java.util.Collection)">unregisterAddresses</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/net/InetSocketAddress.html?is-external=true" title="class or interface in java.net">InetSocketAddress</a>&gt;&nbsp;addrs)</code>
<div class="block">Unregisters provided addresses.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.ignite.spi.discovery.tcp.ipfinder.TcpDiscoveryIpFinderAdapter">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.ignite.spi.discovery.tcp.ipfinder.<a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html" title="class in org.apache.ignite.spi.discovery.tcp.ipfinder">TcpDiscoveryIpFinderAdapter</a></h3>
<code><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#close()">close</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#discoveryClientMode()">discoveryClientMode</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#initializeLocalAddresses(java.util.Collection)">initializeLocalAddresses</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#isShared()">isShared</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#onSpiContextInitialized(org.apache.ignite.spi.IgniteSpiContext)">onSpiContextInitialized</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#setShared(boolean)">setShared</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#spiContext()">spiContext</a>, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#toString()">toString</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="PROP_ZK_CONNECTION_STRING">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>PROP_ZK_CONNECTION_STRING</h4>
<pre>public static final&nbsp;<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> PROP_ZK_CONNECTION_STRING</pre>
<div class="block">System property name to provide the ZK Connection String.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../../../../constant-values.html#org.apache.ignite.spi.discovery.tcp.ipfinder.zk.TcpDiscoveryZookeeperIpFinder.PROP_ZK_CONNECTION_STRING">Constant Field Values</a></dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="TcpDiscoveryZookeeperIpFinder()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>TcpDiscoveryZookeeperIpFinder</h4>
<pre>public&nbsp;TcpDiscoveryZookeeperIpFinder()</pre>
<div class="block">Constructor.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="onSpiContextDestroyed()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>onSpiContextDestroyed</h4>
<pre>public&nbsp;void&nbsp;onSpiContextDestroyed()</pre>
<div class="block">Callback invoked prior to stopping grid before SPI context is destroyed.
Note that invoking SPI context after this callback is complete is considered
illegal and may produce unknown results.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinder.html#onSpiContextDestroyed()">onSpiContextDestroyed</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinder.html" title="interface in org.apache.ignite.spi.discovery.tcp.ipfinder">TcpDiscoveryIpFinder</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html#onSpiContextDestroyed()">onSpiContextDestroyed</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/TcpDiscoveryIpFinderAdapter.html" title="class in org.apache.ignite.spi.discovery.tcp.ipfinder">TcpDiscoveryIpFinderAdapter</a></code></dd>
</dl>
</li>
</ul>
<a name="getRegisteredAddresses()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRegisteredAddresses</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/net/InetSocketAddress.html?is-external=true" title="class or interface in java.net">InetSocketAddress</a>&gt;&nbsp;getRegisteredAddresses()
throws <a href="../../../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></pre>
<div class="block">Gets all addresses registered in this finder.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>All known addresses, potentially empty, but never <code>null</code>.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></code> - In case of error.</dd></dl>
</li>
</ul>
<a name="registerAddresses(java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>registerAddresses</h4>
<pre>public&nbsp;void&nbsp;registerAddresses(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/net/InetSocketAddress.html?is-external=true" title="class or interface in java.net">InetSocketAddress</a>&gt;&nbsp;addrs)
throws <a href="../../../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></pre>
<div class="block">Registers new addresses.
<p>
Implementation should accept duplicates quietly, but should not register address if it
is already registered.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>addrs</code> - Addresses to register. Not <code>null</code> and not empty.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></code> - In case of error.</dd></dl>
</li>
</ul>
<a name="unregisterAddresses(java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>unregisterAddresses</h4>
<pre>public&nbsp;void&nbsp;unregisterAddresses(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/net/InetSocketAddress.html?is-external=true" title="class or interface in java.net">InetSocketAddress</a>&gt;&nbsp;addrs)
throws <a href="../../../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></pre>
<div class="block">Unregisters provided addresses.
<p>
Implementation should accept addresses that are currently not
registered quietly (just no-op).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>addrs</code> - Addresses to unregister. Not <code>null</code> and not empty.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../../../../../../org/apache/ignite/spi/IgniteSpiException.html" title="class in org.apache.ignite.spi">IgniteSpiException</a></code> - In case of error.</dd></dl>
</li>
</ul>
<a name="setCurator(org.apache.curator.framework.CuratorFramework)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setCurator</h4>
<pre>public&nbsp;void&nbsp;setCurator(org.apache.curator.framework.CuratorFramework&nbsp;curator)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>curator</code> - A <code>CuratorFramework</code> instance to use. It can already be in <tt>STARTED</tt> state.</dd></dl>
</li>
</ul>
<a name="getZkConnectionString()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getZkConnectionString</h4>
<pre>public&nbsp;<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;getZkConnectionString()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>The ZooKeeper connection string, only if set explicitly. Else, it returns null.</dd></dl>
</li>
</ul>
<a name="setZkConnectionString(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setZkConnectionString</h4>
<pre>public&nbsp;void&nbsp;setZkConnectionString(<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;zkConnectionString)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>zkConnectionString</code> - ZooKeeper connection string in case a <code>CuratorFramework</code> is not being set explicitly.</dd></dl>
</li>
</ul>
<a name="getRetryPolicy()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRetryPolicy</h4>
<pre>public&nbsp;org.apache.curator.RetryPolicy&nbsp;getRetryPolicy()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>Retry policy in use if, and only if, it was set explicitly. Else, it returns null.</dd></dl>
</li>
</ul>
<a name="setRetryPolicy(org.apache.curator.RetryPolicy)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRetryPolicy</h4>
<pre>public&nbsp;void&nbsp;setRetryPolicy(org.apache.curator.RetryPolicy&nbsp;retryPolicy)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>retryPolicy</code> - <code>RetryPolicy</code> to use in case a ZK Connection String is being injected, or if
using a system property.</dd></dl>
</li>
</ul>
<a name="getBasePath()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBasePath</h4>
<pre>public&nbsp;<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;getBasePath()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>Base path for service registration in ZK. Default value: <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#BASE_PATH"><code>BASE_PATH</code></a>.</dd></dl>
</li>
</ul>
<a name="setBasePath(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBasePath</h4>
<pre>public&nbsp;void&nbsp;setBasePath(<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;basePath)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>basePath</code> - Base path for service registration in ZK. If not passed, <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#BASE_PATH"><code>BASE_PATH</code></a> will be used.</dd></dl>
</li>
</ul>
<a name="getServiceName()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getServiceName</h4>
<pre>public&nbsp;<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;getServiceName()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>Service name being used, in Curator terms. See <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setServiceName(java.lang.String)"><code>setServiceName(String)</code></a> for more information.</dd></dl>
</li>
</ul>
<a name="setServiceName(java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setServiceName</h4>
<pre>public&nbsp;void&nbsp;setServiceName(<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;serviceName)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>serviceName</code> - Service name to use, as defined by Curator's {#link ServiceDiscovery} recipe. In physical
ZK terms, it represents the node under <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#basePath"><code>basePath</code></a>, under which services will be
registered.</dd></dl>
</li>
</ul>
<a name="isAllowDuplicateRegistrations()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAllowDuplicateRegistrations</h4>
<pre>public&nbsp;boolean&nbsp;isAllowDuplicateRegistrations()</pre>
<div class="block">* @return The value of this flag. See <a href="../../../../../../../../org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html#setAllowDuplicateRegistrations(boolean)"><code>setAllowDuplicateRegistrations(boolean)</code></a> for more details.</div>
</li>
</ul>
<a name="setAllowDuplicateRegistrations(boolean)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>setAllowDuplicateRegistrations</h4>
<pre>public&nbsp;void&nbsp;setAllowDuplicateRegistrations(boolean&nbsp;allowDuplicateRegistrations)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>allowDuplicateRegistrations</code> - Whether to register each node only once, or if duplicate registrations
are allowed. Nodes will attempt to register themselves, plus those they
know about. By default, duplicate registrations are not allowed, but you
might want to set this property to <tt>true</tt> if you have multiple
network interfaces or if you are facing troubles.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><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 class="navBarCell1Rev">Class</li>
<li><a href="class-use/TcpDiscoveryZookeeperIpFinder.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li>Next Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../../../../index.html?org/apache/ignite/spi/discovery/tcp/ipfinder/zk/TcpDiscoveryZookeeperIpFinder.html" target="_top">Frames</a></li>
<li><a href="TcpDiscoveryZookeeperIpFinder.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>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px"> <tr> <td> <table style="padding-left: 0; margin: 0"> <tbody style="padding: 0; margin: 0"> <tr style="padding: 0; margin: 0"> <td> <a target=_blank href="https://ignite.apache.org"><nobr>2015 Copyright &#169; Apache Software Foundation</nobr></a> </td> </tr> </tbody> </table> </td> <td width="100%" align="right" valign="center"> <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script> </td> </tr> <tr> <td colspan="2" valign="top" align="left"> <table style="padding-left: 0; margin: 0"> <tbody style="padding: 0; margin: 0"> <tr style="padding: 0; margin: 0"> <td> <b>Ignite Fabric</b> </td> <td>:&nbsp;&nbsp; ver. <strong>1.5.0.final</strong> </td> </tr> <tr style="padding: 0; margin: 0"> <td> <b>Release Date</b> </td> <td>:&nbsp;&nbsp; December 29 2015 </td> </tr> </tbody> </table> </td> </tr> </table></small></p>
</body>
</html>