blob: 37f1ac5addf541ff9ef82747a2c21100df949443 [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.0.0-rc3/javadoc/org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html" />
<!-- Generated by javadoc (version 1.7.0_21) on Tue Mar 24 10:27:31 MSK 2015 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>CacheRendezvousAffinityFunction (Ignite 1.0.0-RC3)</title>
<meta name="date" content="2015-03-24">
<link rel="stylesheet" type="text/css" href="../../../../../../javadoc.css" title="Style">
<link rel='shortcut icon' href='http://gridgain.com/wp-content/uploads/2014/09/favicon.ico'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeDefault.css'/>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shLegacy.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJava.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushBash.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushScala.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGroovy.js'></script>
<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="CacheRendezvousAffinityFunction (Ignite 1.0.0-RC3)";
}
//-->
</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/CacheRendezvousAffinityFunction.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>Apache 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/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html" target="_top">Frames</a></li>
<li><a href="CacheRendezvousAffinityFunction.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.cache.affinity.rendezvous</div>
<h2 title="Class CacheRendezvousAffinityFunction" class="title">Class CacheRendezvousAffinityFunction</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>org.apache.ignite.cache.affinity.rendezvous.CacheRendezvousAffinityFunction</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Externalizable.html?is-external=true" title="class or interface in java.io">Externalizable</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">CacheRendezvousAffinityFunction</span>
extends <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>
implements <a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/io/Externalizable.html?is-external=true" title="class or interface in java.io">Externalizable</a></pre>
<div class="block">Affinity function for partitioned cache based on Highest Random Weight algorithm.
This function supports the following configuration:
<ul>
<li>
<code>partitions</code> - Number of partitions to spread across nodes.
</li>
<li>
<code>excludeNeighbors</code> - If set to <code>true</code>, will exclude same-host-neighbors
from being backups of each other. Note that <code>backupFilter</code> is ignored if
<code>excludeNeighbors</code> is set to <code>true</code>.
</li>
<li>
<code>backupFilter</code> - Optional filter for back up nodes. If provided, then only
nodes that pass this filter will be selected as backup nodes. If not provided, then
primary and backup nodes will be selected out of all nodes available for this cache.
</li>
</ul>
<p>
Cache affinity can be configured for individual caches via <a href="../../../../../../org/apache/ignite/configuration/CacheConfiguration.html#getAffinity()"><code>CacheConfiguration.getAffinity()</code></a> method.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../../serialized-form.html#org.apache.ignite.cache.affinity.rendezvous.CacheRendezvousAffinityFunction">Serialized Form</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 int</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#DFLT_PARTITION_COUNT">DFLT_PARTITION_COUNT</a></strong></code>
<div class="block">Default number of partitions.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="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/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#CacheRendezvousAffinityFunction()">CacheRendezvousAffinityFunction</a></strong>()</code>
<div class="block">Empty constructor with all defaults.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#CacheRendezvousAffinityFunction(boolean)">CacheRendezvousAffinityFunction</a></strong>(boolean&nbsp;exclNeighbors)</code>
<div class="block">Initializes affinity with flag to exclude same-host-neighbors from being backups of each other
and specified number of backups.</div>
</td>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#CacheRendezvousAffinityFunction(boolean, int)">CacheRendezvousAffinityFunction</a></strong>(boolean&nbsp;exclNeighbors,
int&nbsp;parts)</code>
<div class="block">Initializes affinity with flag to exclude same-host-neighbors from being backups of each other,
and specified number of backups and partitions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#CacheRendezvousAffinityFunction(int, org.apache.ignite.lang.IgniteBiPredicate)">CacheRendezvousAffinityFunction</a></strong>(int&nbsp;parts,
<a href="../../../../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>,<a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;backupFilter)</code>
<div class="block">Initializes optional counts for replicas and backups.</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/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#assignPartition(int, java.util.List, int, java.util.Map)">assignPartition</a></strong>(int&nbsp;part,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;nodes,
int&nbsp;backups,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,<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><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span>&nbsp;neighborhoodCache)</code>
<div class="block">Returns collection of nodes (primary first) for specified partition.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#assignPartitions(org.apache.ignite.cache.affinity.CacheAffinityFunctionContext)">assignPartitions</a></strong>(<a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunctionContext.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunctionContext</a>&nbsp;affCtx)</code>
<div class="block">Gets affinity nodes for a partition.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>,<a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#getBackupFilter()">getBackupFilter</a></strong>()</code>
<div class="block">Gets optional backup filter.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityNodeHashResolver.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityNodeHashResolver</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#getHashIdResolver()">getHashIdResolver</a></strong>()</code>
<div class="block">Gets hash ID resolver for nodes.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#getPartitions()">getPartitions</a></strong>()</code>
<div class="block">Gets total number of key partitions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#isExcludeNeighbors()">isExcludeNeighbors</a></strong>()</code>
<div class="block">Checks flag to exclude same-host-neighbors from being backups of each other (default is <code>false</code>).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#partition(java.lang.Object)">partition</a></strong>(<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>&nbsp;key)</code>
<div class="block">Gets partition number for a given key starting from <code>0</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#partitions()">partitions</a></strong>()</code>
<div class="block">Gets total number of partitions available.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#readExternal(java.io.ObjectInput)">readExternal</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/ObjectInput.html?is-external=true" title="class or interface in java.io">ObjectInput</a>&nbsp;in)</code></td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#removeNode(java.util.UUID)">removeNode</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;nodeId)</code>
<div class="block">Removes node from affinity.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#reset()">reset</a></strong>()</code>
<div class="block">Resets cache affinity to its initial state.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#setBackupFilter(org.apache.ignite.lang.IgniteBiPredicate)">setBackupFilter</a></strong>(<a href="../../../../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>,<a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;backupFilter)</code>
<div class="block">Sets optional backup filter.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#setExcludeNeighbors(boolean)">setExcludeNeighbors</a></strong>(boolean&nbsp;exclNeighbors)</code>
<div class="block">Sets flag to exclude same-host-neighbors from being backups of each other (default is <code>false</code>).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#setHashIdResolver(org.apache.ignite.cache.affinity.CacheAffinityNodeHashResolver)">setHashIdResolver</a></strong>(<a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityNodeHashResolver.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityNodeHashResolver</a>&nbsp;hashIdRslvr)</code>
<div class="block">Sets hash ID resolver for nodes.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#setPartitions(int)">setPartitions</a></strong>(int&nbsp;parts)</code>
<div class="block">Sets total number of partitions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../../org/apache/ignite/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html#writeExternal(java.io.ObjectOutput)">writeExternal</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/ObjectOutput.html?is-external=true" title="class or interface in java.io">ObjectOutput</a>&nbsp;out)</code></td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<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#toString()" title="class or interface in java.lang">toString</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, int)" 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="DFLT_PARTITION_COUNT">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DFLT_PARTITION_COUNT</h4>
<pre>public static final&nbsp;int DFLT_PARTITION_COUNT</pre>
<div class="block">Default number of partitions.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="../../../../../../constant-values.html#org.apache.ignite.cache.affinity.rendezvous.CacheRendezvousAffinityFunction.DFLT_PARTITION_COUNT">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="CacheRendezvousAffinityFunction()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CacheRendezvousAffinityFunction</h4>
<pre>public&nbsp;CacheRendezvousAffinityFunction()</pre>
<div class="block">Empty constructor with all defaults.</div>
</li>
</ul>
<a name="CacheRendezvousAffinityFunction(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CacheRendezvousAffinityFunction</h4>
<pre>public&nbsp;CacheRendezvousAffinityFunction(boolean&nbsp;exclNeighbors)</pre>
<div class="block">Initializes affinity with flag to exclude same-host-neighbors from being backups of each other
and specified number of backups.
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>#getBackupFilter()</code> is set.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>exclNeighbors</code> - <code>True</code> if nodes residing on the same host may not act as backups
of each other.</dd></dl>
</li>
</ul>
<a name="CacheRendezvousAffinityFunction(boolean, int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>CacheRendezvousAffinityFunction</h4>
<pre>public&nbsp;CacheRendezvousAffinityFunction(boolean&nbsp;exclNeighbors,
int&nbsp;parts)</pre>
<div class="block">Initializes affinity with flag to exclude same-host-neighbors from being backups of each other,
and specified number of backups and partitions.
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>#getBackupFilter()</code> is set.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>exclNeighbors</code> - <code>True</code> if nodes residing on the same host may not act as backups
of each other.</dd><dd><code>parts</code> - Total number of partitions.</dd></dl>
</li>
</ul>
<a name="CacheRendezvousAffinityFunction(int, org.apache.ignite.lang.IgniteBiPredicate)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>CacheRendezvousAffinityFunction</h4>
<pre>public&nbsp;CacheRendezvousAffinityFunction(int&nbsp;parts,
@Nullable
<a href="../../../../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>,<a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;backupFilter)</pre>
<div class="block">Initializes optional counts for replicas and backups.
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>backupFilter</code> is set.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>parts</code> - Total number of partitions.</dd><dd><code>backupFilter</code> - Optional back up filter for nodes. If provided, backups will be selected
from all nodes that pass this filter. First argument for this filter is primary node, and second
argument is node being tested.
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>backupFilter</code> is set.</dd></dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getPartitions()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPartitions</h4>
<pre>public&nbsp;int&nbsp;getPartitions()</pre>
<div class="block">Gets total number of key partitions. To ensure that all partitions are
equally distributed across all nodes, please make sure that this
number is significantly larger than a number of nodes. Also, partition
size should be relatively small. Try to avoid having partitions with more
than quarter million keys.
<p>
Note that for fully replicated caches this method should always
return <code>1</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Total partition count.</dd></dl>
</li>
</ul>
<a name="setPartitions(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPartitions</h4>
<pre>public&nbsp;void&nbsp;setPartitions(int&nbsp;parts)</pre>
<div class="block">Sets total number of partitions.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>parts</code> - Total number of partitions.</dd></dl>
</li>
</ul>
<a name="getHashIdResolver()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getHashIdResolver</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityNodeHashResolver.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityNodeHashResolver</a>&nbsp;getHashIdResolver()</pre>
<div class="block">Gets hash ID resolver for nodes. This resolver is used to provide
alternate hash ID, other than node ID.
<p>
Node IDs constantly change when nodes get restarted, which causes them to
be placed on different locations in the hash ring, and hence causing
repartitioning. Providing an alternate hash ID, which survives node restarts,
puts node on the same location on the hash ring, hence minimizing required
repartitioning.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Hash ID resolver.</dd></dl>
</li>
</ul>
<a name="setHashIdResolver(org.apache.ignite.cache.affinity.CacheAffinityNodeHashResolver)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHashIdResolver</h4>
<pre>public&nbsp;void&nbsp;setHashIdResolver(<a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityNodeHashResolver.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityNodeHashResolver</a>&nbsp;hashIdRslvr)</pre>
<div class="block">Sets hash ID resolver for nodes. This resolver is used to provide
alternate hash ID, other than node ID.
<p>
Node IDs constantly change when nodes get restarted, which causes them to
be placed on different locations in the hash ring, and hence causing
repartitioning. Providing an alternate hash ID, which survives node restarts,
puts node on the same location on the hash ring, hence minimizing required
repartitioning.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>hashIdRslvr</code> - Hash ID resolver.</dd></dl>
</li>
</ul>
<a name="getBackupFilter()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBackupFilter</h4>
<pre>@Nullable
public&nbsp;<a href="../../../../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>,<a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;getBackupFilter()</pre>
<div class="block">Gets optional backup filter. If not <code>null</code>, backups will be selected
from all nodes that pass this filter. First node passed to this filter is primary node,
and second node is a node being tested.
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>backupFilter</code> is set.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Optional backup filter.</dd></dl>
</li>
</ul>
<a name="setBackupFilter(org.apache.ignite.lang.IgniteBiPredicate)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBackupFilter</h4>
<pre>public&nbsp;void&nbsp;setBackupFilter(@Nullable
<a href="../../../../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a>,<a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;backupFilter)</pre>
<div class="block">Sets optional backup filter. If provided, then backups will be selected from all
nodes that pass this filter. First node being passed to this filter is primary node,
and second node is a node being tested.
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>backupFilter</code> is set.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>backupFilter</code> - Optional backup filter.</dd></dl>
</li>
</ul>
<a name="isExcludeNeighbors()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isExcludeNeighbors</h4>
<pre>public&nbsp;boolean&nbsp;isExcludeNeighbors()</pre>
<div class="block">Checks flag to exclude same-host-neighbors from being backups of each other (default is <code>false</code>).
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>#getBackupFilter()</code> is set.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>True</code> if nodes residing on the same host may not act as backups of each other.</dd></dl>
</li>
</ul>
<a name="setExcludeNeighbors(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setExcludeNeighbors</h4>
<pre>public&nbsp;void&nbsp;setExcludeNeighbors(boolean&nbsp;exclNeighbors)</pre>
<div class="block">Sets flag to exclude same-host-neighbors from being backups of each other (default is <code>false</code>).
<p>
Note that <code>excludeNeighbors</code> parameter is ignored if <code>#getBackupFilter()</code> is set.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>exclNeighbors</code> - <code>True</code> if nodes residing on the same host may not act as backups of each other.</dd></dl>
</li>
</ul>
<a name="assignPartition(int, java.util.List, int, java.util.Map)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>assignPartition</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;assignPartition(int&nbsp;part,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span>&nbsp;nodes,
int&nbsp;backups,
@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,<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><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span>&nbsp;neighborhoodCache)</pre>
<div class="block">Returns collection of nodes (primary first) for specified partition.</div>
</li>
</ul>
<a name="reset()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reset</h4>
<pre>public&nbsp;void&nbsp;reset()</pre>
<div class="block">Resets cache affinity to its initial state. This method will be called by
the system any time the affinity has been sent to remote node where
it has to be reinitialized. If your implementation of affinity function
has no initialization logic, leave this method empty.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html#reset()">reset</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a></code></dd>
</dl>
</li>
</ul>
<a name="partitions()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>partitions</h4>
<pre>public&nbsp;int&nbsp;partitions()</pre>
<div class="block">Gets total number of partitions available. All caches should always provide
correct partition count which should be the same on all participating nodes.
Note that partitions should always be numbered from <code>0</code> inclusively to
<code>N</code> exclusively without any gaps.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html#partitions()">partitions</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a></code></dd>
<dt><span class="strong">Returns:</span></dt><dd>Total partition count.</dd></dl>
</li>
</ul>
<a name="partition(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>partition</h4>
<pre>public&nbsp;int&nbsp;partition(<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>&nbsp;key)</pre>
<div class="block">Gets partition number for a given key starting from <code>0</code>. Partitioned caches
should make sure that keys are about evenly distributed across all partitions
from <code>0</code> to <a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html#partitions()"><code>partition count</code></a> for best performance.
<p>
Note that for fully replicated caches it is possible to segment key sets among different
grid node groups. In that case each node group should return a unique partition
number. However, unlike partitioned cache, mappings of keys to nodes in
replicated caches are constant and a node cannot migrate from one partition
to another.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html#partition(java.lang.Object)">partition</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - Key to get partition for.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Partition number for a given key.</dd></dl>
</li>
</ul>
<a name="assignPartitions(org.apache.ignite.cache.affinity.CacheAffinityFunctionContext)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>assignPartitions</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span><a href="../../../../../../org/apache/ignite/cluster/ClusterNode.html" title="interface in org.apache.ignite.cluster">ClusterNode</a><span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span>&nbsp;assignPartitions(<a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunctionContext.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunctionContext</a>&nbsp;affCtx)</pre>
<div class="block">Gets affinity nodes for a partition. In case of replicated cache, all returned
nodes are updated in the same manner. In case of partitioned cache, the returned
list should contain only the primary and back up nodes with primary node being
always first.
<p>
Note that partitioned affinity must obey the following contract: given that node
<code>N</code> is primary for some key <code>K</code>, if any other node(s) leave
grid and no node joins grid, node <code>N</code> will remain primary for key <code>K</code>.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html#assignPartitions(org.apache.ignite.cache.affinity.CacheAffinityFunctionContext)">assignPartitions</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>affCtx</code> - Affinity function context. Will provide all required information to calculate
new partition assignments.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Unmodifiable list indexed by partition number. Each element of array is a collection in which
first node is a primary node and other nodes are backup nodes.</dd></dl>
</li>
</ul>
<a name="removeNode(java.util.UUID)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeNode</h4>
<pre>public&nbsp;void&nbsp;removeNode(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;nodeId)</pre>
<div class="block">Removes node from affinity. This method is called when it is safe to remove left node from
affinity mapping.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html#removeNode(java.util.UUID)">removeNode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/ignite/cache/affinity/CacheAffinityFunction.html" title="interface in org.apache.ignite.cache.affinity">CacheAffinityFunction</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>nodeId</code> - ID of node to remove.</dd></dl>
</li>
</ul>
<a name="writeExternal(java.io.ObjectOutput)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>writeExternal</h4>
<pre>public&nbsp;void&nbsp;writeExternal(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/ObjectOutput.html?is-external=true" title="class or interface in java.io">ObjectOutput</a>&nbsp;out)
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Externalizable.html?is-external=true#writeExternal(java.io.ObjectOutput)" title="class or interface in java.io">writeExternal</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Externalizable.html?is-external=true" title="class or interface in java.io">Externalizable</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd></dl>
</li>
</ul>
<a name="readExternal(java.io.ObjectInput)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>readExternal</h4>
<pre>public&nbsp;void&nbsp;readExternal(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/ObjectInput.html?is-external=true" title="class or interface in java.io">ObjectInput</a>&nbsp;in)
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a>,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></pre>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Externalizable.html?is-external=true#readExternal(java.io.ObjectInput)" title="class or interface in java.io">readExternal</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/Externalizable.html?is-external=true" title="class or interface in java.io">Externalizable</a></code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/ClassNotFoundException.html?is-external=true" title="class or interface in java.lang">ClassNotFoundException</a></code></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/CacheRendezvousAffinityFunction.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>Apache 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/cache/affinity/rendezvous/CacheRendezvousAffinityFunction.html" target="_top">Frames</a></li>
<li><a href="CacheRendezvousAffinityFunction.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://incubator.apache.org/projects/ignite.html"><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>Apache Ignite Fabric</b> </td> <td>:&nbsp;&nbsp; ver. <strong>1.0.0-RC3</strong> </td> </tr> <tr style="padding: 0; margin: 0"> <td> <b>Release Date</b> </td> <td>:&nbsp;&nbsp; March 24 2015 </td> </tr> </tbody> </table> </td> </tr> </table></small></p>
<!--FOOTER--><script type='text/javascript'>SyntaxHighlighter.all();dp.SyntaxHighlighter.HighlightAll('code');</script>
</body>
</html>