blob: c64a5187944e8593bc176832f8baf17a905a8671 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.6.0/dotnetdoc/interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html" />
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.9.1"/>
<title>Apache Ignite.NET: Apache.Ignite.Core.Cache.ICacheAffinity Interface Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
$(document).ready(initResizable);
$(window).load(resizeHeight);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<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>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="ignite_logo.png"/></td>
<td style="padding-left: 0.5em;">
<div id="projectname">Apache Ignite.NET
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.9.1 -->
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html','');});
</script>
<div id="doc-content">
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Apache.Ignite.Core.Cache.ICacheAffinity Interface Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Provides affinity information to detect which node is primary and which nodes are backups for a partitioned cache. You can get an instance of this interface by calling <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_i_ignite.html#ab4e3ec814805c7020466f3a23f3e998a" title="Gets affinity service to provide information about data partitioning and distribution. ">IIgnite.GetAffinity</a> method.
<a href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#details">More...</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a41886d803d22cd1d1a6dc9f92a1300f4"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a41886d803d22cd1d1a6dc9f92a1300f4">GetPartition&lt; TK &gt;</a> (TK key)</td></tr>
<tr class="memdesc:a41886d803d22cd1d1a6dc9f92a1300f4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets partition id for the given key. <a href="#a41886d803d22cd1d1a6dc9f92a1300f4">More...</a><br /></td></tr>
<tr class="separator:a41886d803d22cd1d1a6dc9f92a1300f4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b592d3928307c0ee5ac0166b0659d53"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a2b592d3928307c0ee5ac0166b0659d53">IsPrimary&lt; TK &gt;</a> (<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> n, TK key)</td></tr>
<tr class="memdesc:a2b592d3928307c0ee5ac0166b0659d53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 'true' if given node is the primary node for given key. <a href="#a2b592d3928307c0ee5ac0166b0659d53">More...</a><br /></td></tr>
<tr class="separator:a2b592d3928307c0ee5ac0166b0659d53"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a49b9468b66541ce06a9b8a778239c7c4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a49b9468b66541ce06a9b8a778239c7c4">IsBackup&lt; TK &gt;</a> (<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> n, TK key)</td></tr>
<tr class="memdesc:a49b9468b66541ce06a9b8a778239c7c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 'true' if given node is the backup node for given key. <a href="#a49b9468b66541ce06a9b8a778239c7c4">More...</a><br /></td></tr>
<tr class="separator:a49b9468b66541ce06a9b8a778239c7c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a132688b99d1a4b03b8d54b088a2d69b5"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a132688b99d1a4b03b8d54b088a2d69b5">IsPrimaryOrBackup&lt; TK &gt;</a> (<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> n, TK key)</td></tr>
<tr class="memdesc:a132688b99d1a4b03b8d54b088a2d69b5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Returns 'true' if given node is either primary or backup node for given key. <a href="#a132688b99d1a4b03b8d54b088a2d69b5">More...</a><br /></td></tr>
<tr class="separator:a132688b99d1a4b03b8d54b088a2d69b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2cec3774a57923194c035256e81530b"><td class="memItemLeft" align="right" valign="top">int[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#ad2cec3774a57923194c035256e81530b">GetPrimaryPartitions</a> (<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> n)</td></tr>
<tr class="memdesc:ad2cec3774a57923194c035256e81530b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets partition ids for which nodes of the given projection has primary ownership. <a href="#ad2cec3774a57923194c035256e81530b">More...</a><br /></td></tr>
<tr class="separator:ad2cec3774a57923194c035256e81530b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa454ed8e75f421131738eefc9c0df5fd"><td class="memItemLeft" align="right" valign="top">int[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#aa454ed8e75f421131738eefc9c0df5fd">GetBackupPartitions</a> (<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> n)</td></tr>
<tr class="memdesc:aa454ed8e75f421131738eefc9c0df5fd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets partition ids for which nodes of the given projection has backup ownership. <a href="#aa454ed8e75f421131738eefc9c0df5fd">More...</a><br /></td></tr>
<tr class="separator:aa454ed8e75f421131738eefc9c0df5fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaebae9d428f5e7ec756562dfc1ca3fef"><td class="memItemLeft" align="right" valign="top">int[]&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#aaebae9d428f5e7ec756562dfc1ca3fef">GetAllPartitions</a> (<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> n)</td></tr>
<tr class="memdesc:aaebae9d428f5e7ec756562dfc1ca3fef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets partition ids for which nodes of the given projection has ownership (either primary or backup). <a href="#aaebae9d428f5e7ec756562dfc1ca3fef">More...</a><br /></td></tr>
<tr class="separator:aaebae9d428f5e7ec756562dfc1ca3fef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e6ad17c08fb147206dbed49a7330fde"><td class="memItemLeft" align="right" valign="top">TR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a9e6ad17c08fb147206dbed49a7330fde">GetAffinityKey&lt; TK, TR &gt;</a> (TK key)</td></tr>
<tr class="memdesc:a9e6ad17c08fb147206dbed49a7330fde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Maps passed in key to a key which will be used for node affinity. <a href="#a9e6ad17c08fb147206dbed49a7330fde">More...</a><br /></td></tr>
<tr class="separator:a9e6ad17c08fb147206dbed49a7330fde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a964907a55a27323931665c353c87e627"><td class="memItemLeft" align="right" valign="top">IDictionary&lt; <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>, IList&lt; TK &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a964907a55a27323931665c353c87e627">MapKeysToNodes&lt; TK &gt;</a> (IEnumerable&lt; TK &gt; keys)</td></tr>
<tr class="memdesc:a964907a55a27323931665c353c87e627"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method provides ability to detect which keys are mapped to which nodes. Use it to determine which nodes are storing which keys prior to sending jobs that access these keys. <a href="#a964907a55a27323931665c353c87e627">More...</a><br /></td></tr>
<tr class="separator:a964907a55a27323931665c353c87e627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae18c9837d80142481dbfa8e62238952e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#ae18c9837d80142481dbfa8e62238952e">MapKeyToNode&lt; TK &gt;</a> (TK key)</td></tr>
<tr class="memdesc:ae18c9837d80142481dbfa8e62238952e"><td class="mdescLeft">&#160;</td><td class="mdescRight">This method provides ability to detect to which primary node the given key is mapped. Use it to determine which nodes are storing which keys prior to sending jobs that access these keys. <a href="#ae18c9837d80142481dbfa8e62238952e">More...</a><br /></td></tr>
<tr class="separator:ae18c9837d80142481dbfa8e62238952e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb1572786b237555c70cb0494e0b692d"><td class="memItemLeft" align="right" valign="top">IList&lt; <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#adb1572786b237555c70cb0494e0b692d">MapKeyToPrimaryAndBackups&lt; TK &gt;</a> (TK key)</td></tr>
<tr class="memdesc:adb1572786b237555c70cb0494e0b692d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets primary and backup nodes for the key. Note that primary node is always first in the returned collection. <a href="#adb1572786b237555c70cb0494e0b692d">More...</a><br /></td></tr>
<tr class="separator:adb1572786b237555c70cb0494e0b692d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f2459be4f2e6fe17cdcd7fd584e4263"><td class="memItemLeft" align="right" valign="top"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a1f2459be4f2e6fe17cdcd7fd584e4263">MapPartitionToNode</a> (int part)</td></tr>
<tr class="memdesc:a1f2459be4f2e6fe17cdcd7fd584e4263"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets primary node for the given partition. <a href="#a1f2459be4f2e6fe17cdcd7fd584e4263">More...</a><br /></td></tr>
<tr class="separator:a1f2459be4f2e6fe17cdcd7fd584e4263"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0556be996b1e03b164b8e284b3a9269"><td class="memItemLeft" align="right" valign="top">IDictionary&lt; int, <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#aa0556be996b1e03b164b8e284b3a9269">MapPartitionsToNodes</a> (IEnumerable&lt; int &gt; parts)</td></tr>
<tr class="memdesc:aa0556be996b1e03b164b8e284b3a9269"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets primary nodes for the given partitions. <a href="#aa0556be996b1e03b164b8e284b3a9269">More...</a><br /></td></tr>
<tr class="separator:aa0556be996b1e03b164b8e284b3a9269"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2adf72878823643216580da51604df5"><td class="memItemLeft" align="right" valign="top">IList&lt; <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#ae2adf72878823643216580da51604df5">MapPartitionToPrimaryAndBackups</a> (int part)</td></tr>
<tr class="memdesc:ae2adf72878823643216580da51604df5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets primary and backup nodes for partition. Note that primary node is always first in the returned collection. <a href="#ae2adf72878823643216580da51604df5">More...</a><br /></td></tr>
<tr class="separator:ae2adf72878823643216580da51604df5"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:a2252f83ac1d69e0f0603348912dc785f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html#a2252f83ac1d69e0f0603348912dc785f">Partitions</a><code> [get]</code></td></tr>
<tr class="memdesc:a2252f83ac1d69e0f0603348912dc785f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets number of partitions in cache according to configured affinity function. <a href="#a2252f83ac1d69e0f0603348912dc785f">More...</a><br /></td></tr>
<tr class="separator:a2252f83ac1d69e0f0603348912dc785f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Mapping of a key to a node is a three-step operation. First step will get an affinity key for given key using <code>CacheAffinityKeyMapper</code>. If mapper is not specified, the original key will be used. Second step will map affinity key to partition using <code>CacheAffinityFunction.partition(Object)</code> method. Third step will map obtained partition to nodes for current grid topology version. </p>
<p>Interface provides various <code>mapKeysToNodes(...)</code> methods which provide node affinity mapping for given keys. All <code>mapKeysToNodes(...)</code> methods are not transactional and will not enlist keys into ongoing transaction. </p>
<p>All members are thread-safe and may be used concurrently from multiple threads. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a9e6ad17c08fb147206dbed49a7330fde"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">TR Apache.Ignite.Core.Cache.ICacheAffinity.GetAffinityKey&lt; TK, TR &gt; </td>
<td>(</td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>Key to map.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Key to be used for node-to-affinity mapping (may be the same key as passed in).</dd></dl>
</div>
</div>
<a class="anchor" id="aaebae9d428f5e7ec756562dfc1ca3fef"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int [] Apache.Ignite.Core.Cache.ICacheAffinity.GetAllPartitions </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td>
<td class="paramname"><em>n</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Node.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Partition ids for which given projection has ownership.</dd></dl>
</div>
</div>
<a class="anchor" id="aa454ed8e75f421131738eefc9c0df5fd"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int [] Apache.Ignite.Core.Cache.ICacheAffinity.GetBackupPartitions </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td>
<td class="paramname"><em>n</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Node.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Partition ids for which given projection has backup ownership.</dd></dl>
</div>
</div>
<a class="anchor" id="a41886d803d22cd1d1a6dc9f92a1300f4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int Apache.Ignite.Core.Cache.ICacheAffinity.GetPartition&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>Key to get partition id for.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Partition id.</dd></dl>
</div>
</div>
<a class="anchor" id="ad2cec3774a57923194c035256e81530b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int [] Apache.Ignite.Core.Cache.ICacheAffinity.GetPrimaryPartitions </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td>
<td class="paramname"><em>n</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Node.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Partition ids for which given projection has primary ownership.</dd></dl>
</div>
</div>
<a class="anchor" id="a49b9468b66541ce06a9b8a778239c7c4"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool Apache.Ignite.Core.Cache.ICacheAffinity.IsBackup&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Node.</td></tr>
<tr><td class="paramname">key</td><td>Key.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>'True' if given node is the backup node for given key.</dd></dl>
</div>
</div>
<a class="anchor" id="a2b592d3928307c0ee5ac0166b0659d53"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool Apache.Ignite.Core.Cache.ICacheAffinity.IsPrimary&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Node.</td></tr>
<tr><td class="paramname">key</td><td>Key.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>'True' if given node is the primary node for given key.</dd></dl>
</div>
</div>
<a class="anchor" id="a132688b99d1a4b03b8d54b088a2d69b5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool Apache.Ignite.Core.Cache.ICacheAffinity.IsPrimaryOrBackup&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&#160;</td>
<td class="paramname"><em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">n</td><td>Node.</td></tr>
<tr><td class="paramname">key</td><td>Key.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>'True' if given node is either primary or backup node for given key.</dd></dl>
</div>
</div>
<a class="anchor" id="a964907a55a27323931665c353c87e627"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IDictionary&lt;<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>, IList&lt;TK&gt; &gt; Apache.Ignite.Core.Cache.ICacheAffinity.MapKeysToNodes&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype">IEnumerable&lt; TK &gt;&#160;</td>
<td class="paramname"><em>keys</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">keys</td><td>Keys to map to nodes.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Map of nodes to keys or empty map if there are no alive nodes for this cache.</dd></dl>
</div>
</div>
<a class="anchor" id="ae18c9837d80142481dbfa8e62238952e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> Apache.Ignite.Core.Cache.ICacheAffinity.MapKeyToNode&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td>Keys to map to a node.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Primary node for the key or null if there are no alive nodes for this cache.</dd></dl>
</div>
</div>
<a class="anchor" id="adb1572786b237555c70cb0494e0b692d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IList&lt;<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&gt; Apache.Ignite.Core.Cache.ICacheAffinity.MapKeyToPrimaryAndBackups&lt; TK &gt; </td>
<td>(</td>
<td class="paramtype">TK&#160;</td>
<td class="paramname"><em>key</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">key</td><td></td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd></dd></dl>
</div>
</div>
<a class="anchor" id="aa0556be996b1e03b164b8e284b3a9269"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IDictionary&lt;int, <a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&gt; Apache.Ignite.Core.Cache.ICacheAffinity.MapPartitionsToNodes </td>
<td>(</td>
<td class="paramtype">IEnumerable&lt; int &gt;&#160;</td>
<td class="paramname"><em>parts</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parts</td><td>Partition ids.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Mapping of given partitions to their primary nodes.</dd></dl>
</div>
</div>
<a class="anchor" id="a1f2459be4f2e6fe17cdcd7fd584e4263"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a> Apache.Ignite.Core.Cache.ICacheAffinity.MapPartitionToNode </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>part</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">part</td><td>Partition id.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Primary node for the given partition.</dd></dl>
</div>
</div>
<a class="anchor" id="ae2adf72878823643216580da51604df5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">IList&lt;<a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cluster_1_1_i_cluster_node.html">IClusterNode</a>&gt; Apache.Ignite.Core.Cache.ICacheAffinity.MapPartitionToPrimaryAndBackups </td>
<td>(</td>
<td class="paramtype">int&#160;</td>
<td class="paramname"><em>part</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">part</td><td>Partition to get affinity nodes for.</td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Collection of primary and backup nodes for partition with primary node always first</dd></dl>
</div>
</div>
<h2 class="groupheader">Property Documentation</h2>
<a class="anchor" id="a2252f83ac1d69e0f0603348912dc785f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int Apache.Ignite.Core.Cache.ICacheAffinity.Partitions</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">get</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<dl class="section return"><dt>Returns</dt><dd>Number of cache partitions.</dd></dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="namespace_apache.html">Apache</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite.html">Ignite</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core.html">Core</a></li><li class="navelem"><a class="el" href="namespace_apache_1_1_ignite_1_1_core_1_1_cache.html">Cache</a></li><li class="navelem"><a class="el" href="interface_apache_1_1_ignite_1_1_core_1_1_cache_1_1_i_cache_affinity.html">ICacheAffinity</a></li>
<li class="footer">Generated on Wed May 18 2016 16:44:12 for Apache Ignite.NET by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.9.1 </li>
</ul>
</div>
</body>
</html>