<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<link rel="canonical" href="https://ignite.apache.org/releases/2.6.0/javadoc/org/apache/ignite/IgniteCache.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (1.8.0_77) on Tue Jul 10 11:04:39 UTC 2018 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IgniteCache (Ignite 2.6.0)</title>
<meta name="date" content="2018-07-10">
<link rel="stylesheet" type="text/css" href="../../../javadoc.css" title="Style">
<script type="text/javascript" src="../../../script.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"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="IgniteCache (Ignite 2.6.0)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":6,"i20":6,"i21":6,"i22":6,"i23":6,"i24":6,"i25":6,"i26":6,"i27":6,"i28":6,"i29":6,"i30":6,"i31":6,"i32":6,"i33":6,"i34":6,"i35":6,"i36":6,"i37":6,"i38":6,"i39":6,"i40":6,"i41":6,"i42":6,"i43":6,"i44":6,"i45":6,"i46":6,"i47":6,"i48":6,"i49":6,"i50":6,"i51":6,"i52":6,"i53":6,"i54":6,"i55":6,"i56":6,"i57":6,"i58":6,"i59":6,"i60":6,"i61":6,"i62":6,"i63":6,"i64":6,"i65":6,"i66":6,"i67":6,"i68":6,"i69":6,"i70":6,"i71":6,"i72":6,"i73":6,"i74":6,"i75":6,"i76":6,"i77":6,"i78":6,"i79":6,"i80":6,"i81":6,"i82":6,"i83":6,"i84":6,"i85":6,"i86":6,"i87":6,"i88":6,"i89":6,"i90":6,"i91":6,"i92":6,"i93":6,"i94":6,"i95":6,"i96":38,"i97":6,"i98":6,"i99":6,"i100":6,"i101":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<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/IgniteCache.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">Ignite - In-Memory Data Fabric</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/ignite/IgniteBinary.html" title="interface in org.apache.ignite"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteCacheRestartingException.html" title="class in org.apache.ignite"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/ignite/IgniteCache.html" target="_top">Frames</a></li>
<li><a href="IgniteCache.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;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>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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</div>
<h2 title="Interface IgniteCache" class="title">Interface IgniteCache&lt;K,V&gt;</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>K</code> - Cache key type.</dd>
<dd><code>V</code> - Cache value type.</dd>
</dl>
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, javax.cache.Cache&lt;K,V&gt;, <a href="http://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;javax.cache.Cache.Entry&lt;K,V&gt;&gt;</dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">IgniteCache&lt;K,V&gt;</span>
extends javax.cache.Cache&lt;K,V&gt;, <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></pre>
<div class="block">Main entry point for all <b>Data Grid APIs.</b> You can get a named cache by calling <a href="../../../org/apache/ignite/Ignite.html#cache-java.lang.String-"><code>Ignite.cache(String)</code></a>
 method.
 <h1 class="header">Functionality</h1>
 This API extends <code>Cache</code> API which contains <code>JCache (JSR107)</code> cache functionality
 and documentation. In addition to <code>Cache</code> functionality this API provides:
 <ul>
 <li>Ability to perform basic atomic Map-like operations available on <code>JCache</code> API.</li>
 <li>Ability to bulk load cache via <a href="../../../org/apache/ignite/IgniteCache.html#loadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-"><code>loadCache(IgniteBiPredicate, Object...)</code></a> method.
 <li>Distributed lock functionality via <a href="../../../org/apache/ignite/IgniteCache.html#lock-K-"><code>lock(Object)</code></a> methods.</li>
 <li>Ability to query cache using Predicate, SQL, and Text queries via <a href="../../../org/apache/ignite/IgniteCache.html#query-org.apache.ignite.cache.query.Query-"><code>query(Query)</code></a> method.</li>
 <li>Ability to collect cache and query metrics.</li>
 <li>Ability to force partition rebalancing via <a href="../../../org/apache/ignite/IgniteCache.html#rebalance--"><code>rebalance()</code></a> methopd
  (in case if delayed rebalancing was configured.)</li>
 <li>Ability to peek into memory without doing actual <code>get(...)</code> from cache
  via <a href="../../../org/apache/ignite/IgniteCache.html#localPeek-K-org.apache.ignite.cache.CachePeekMode...-"><code>localPeek(Object, CachePeekMode...)</code></a> methods</li>
 <li>Ability to evict and promote entries from on-heap to off-heap or swap and back.</li>
 <li>Ability to atomically collocate compute and data via <a href="../../../org/apache/ignite/IgniteCache.html#invoke-K-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-"><code>invoke(Object, CacheEntryProcessor, Object...)</code></a>
  methods.</li>
 </ul>
 <h1 class="header">Transactions</h1>
 Cache API supports transactions. You can group and set of cache methods within a transaction
 to provide ACID-compliant behavior. See <a href="../../../org/apache/ignite/IgniteTransactions.html" title="interface in org.apache.ignite"><code>IgniteTransactions</code></a> for more information.
 <br>
 Methods which can be used inside transaction (put, get...) throw TransactionException.
 See <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions"><code>TransactionException</code></a> for more information.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!--   -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.javax.cache.Cache">
<!--   -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;javax.cache.Cache</h3>
<code>javax.cache.Cache.Entry&lt;K,V&gt;</code></li>
</ul>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#clear--">clear</a></span>()</code></td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#clear-K-">clear</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Clears entry from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#clearAll-java.util.Set-">clearAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Clears entries from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#clearAllAsync-java.util.Set-">clearAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Asynchronously clears entries from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#clearAsync--">clearAsync</a></span>()</code>
<div class="block">Asynchronously clears the contents of the cache, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#clearAsync-K-">clearAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Asynchronously clears entry from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#close--">close</a></span>()</code>
<div class="block">Closes this cache instance.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#containsKey-K-">containsKey</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#containsKeyAsync-K-">containsKeyAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Asynchronously determines if the <code>Cache</code> contains an entry for the specified key.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#containsKeys-java.util.Set-">containsKeys</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Determines if the <code>Cache</code> contains entries for the specified keys.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#containsKeysAsync-java.util.Set-">containsKeysAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Asynchronously determines if the <code>Cache</code> contains entries for the specified keys.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#destroy--">destroy</a></span>()</code>
<div class="block">Completely deletes the cache with all its data from the system on all cluster nodes.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#enableStatistics-boolean-">enableStatistics</a></span>(boolean&nbsp;enabled)</code>
<div class="block">Sets statistics enabled flag cluster wide for this cache.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#get-K-">get</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAll-java.util.Set-">getAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code></td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAllAsync-java.util.Set-">getAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Asynchronously gets a collection of entries from the <code>Cache</code>, returning them as
 <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of the values associated with the set of keys requested.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAllOutTx-java.util.Set-">getAllOutTx</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Gets values from cache.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAllOutTxAsync-java.util.Set-">getAllOutTxAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Asynchronously gets values from cache.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndPut-K-V-">getAndPut</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
         <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code></td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndPutAsync-K-V-">getAndPutAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
              <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Asynchronously associates the specified value with the specified key in this cache,
 returning an existing value if one existed as the future result.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndPutIfAbsent-K-V-">getAndPutIfAbsent</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                 <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Stores given key-value pair in cache only if cache had no previous mapping for it.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndPutIfAbsentAsync-K-V-">getAndPutIfAbsentAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                      <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Asynchronously stores given key-value pair in cache only if cache had no previous mapping for it.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndRemove-K-">getAndRemove</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndRemoveAsync-K-">getAndRemoveAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Asynchronously removes the entry for a key only if currently mapped to some
 value.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndReplace-K-V-">getAndReplace</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
             <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code></td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAndReplaceAsync-K-V-">getAndReplaceAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                  <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Asynchronously replaces the value for a given key if and only if there is a
 value currently mapped by the key.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getAsync-K-">getAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Asynchronously gets an entry from the cache.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>&lt;C extends javax.cache.configuration.Configuration&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;<br>C</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getConfiguration-java.lang.Class-">getConfiguration</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;C&gt;&nbsp;clazz)</code></td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getEntries-java.util.Set-">getEntries</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Gets a collection of entries from the <code>Cache</code>.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getEntriesAsync-java.util.Set-">getEntriesAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Asynchronously gets a collection of entries from the <code>Cache</code>.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getEntry-K-">getEntry</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Gets an entry from the cache.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#getEntryAsync-K-">getEntryAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Asynchronously gets an entry from the cache.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#indexReadyFuture--">indexReadyFuture</a></span>()</code>
<div class="block">Returns future that will be completed when all indexes for this cache are ready to use.</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invoke-K-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">invoke</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
      <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
      <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)</code>
<div class="block">Invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the <code>Cache.Entry</code> specified by
 the provided key.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invoke-K-javax.cache.processor.EntryProcessor-java.lang.Object...-">invoke</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
      javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
      <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)</code>
<div class="block">
 
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAll-java.util.Map-java.lang.Object...-">invokeAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&gt;&nbsp;map,
         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Asynchronously invokes each <code>EntryProcessor</code> from map's values against the correspondent
 <code>Cache.Entry</code> specified by map's key set.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAll-java.util.Set-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">invokeAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
         <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the set of <code>Cache.Entry</code>s
 specified by the set of keys.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAll-java.util.Set-javax.cache.processor.EntryProcessor-java.lang.Object...-">invokeAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
         javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">
 
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAllAsync-java.util.Map-java.lang.Object...-">invokeAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&gt;&nbsp;map,
              <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Asynchronously version of the <a href="../../../org/apache/ignite/IgniteCache.html#invokeAll-java.util.Map-java.lang.Object...-"><code>invokeAll(Map, Object...)</code></a> method.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAllAsync-java.util.Set-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">invokeAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
              <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
              <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Asynchronously invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the set of <code>Cache.Entry</code>s
 specified by the set of keys.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAllAsync-java.util.Set-javax.cache.processor.EntryProcessor-java.lang.Object...-">invokeAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
              javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
              <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Asynchronously invokes an <code>EntryProcessor</code> against the set of <code>Cache.Entry</code>s
 specified by the set of keys.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAsync-K-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">invokeAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
           <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
           <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)</code>
<div class="block">Asynchronously invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the <code>Cache.Entry</code> specified by
 the provided key.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;T&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#invokeAsync-K-javax.cache.processor.EntryProcessor-java.lang.Object...-">invokeAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
           javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
           <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)</code>
<div class="block">Asynchronously invokes an <code>EntryProcessor</code> against the <code>Cache.Entry</code> specified by
 the provided key.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#isLocalLocked-K-boolean-">isLocalLocked</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
             boolean&nbsp;byCurrThread)</code>
<div class="block">Checks if specified key is locked.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#loadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">loadCache</a></span>(<a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Executes <a href="../../../org/apache/ignite/IgniteCache.html#localLoadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#loadCacheAsync-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">loadCacheAsync</a></span>(<a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
              <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Asynchronously executes <a href="../../../org/apache/ignite/IgniteCache.html#localLoadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localClear-K-">localClear</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Clears entry from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localClearAll-java.util.Set-">localClearAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Clears entries from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;javax.cache.Cache.Entry&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localEntries-org.apache.ignite.cache.CachePeekMode...-">localEntries</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Allows for iteration over local cache entries.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localEvict-java.util.Collection-">localEvict</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Attempts to evict all entries associated with keys.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localLoadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">localLoadCache</a></span>(<a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
              <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Delegates to <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure,Object...)</code></a> method
 to load state from the underlying persistent storage.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localLoadCacheAsync-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">localLoadCacheAsync</a></span>(<a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>
<div class="block">Asynchronously loads state from the underlying persistent storage by delegating
 to <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure,Object...)</code></a> method.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/cache/CacheMetrics.html" title="interface in org.apache.ignite.cache">CacheMetrics</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localMetrics--">localMetrics</a></span>()</code>
<div class="block">Gets local snapshot metrics (statistics) for this cache.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/mxbean/CacheMetricsMXBean.html" title="interface in org.apache.ignite.mxbean">CacheMetricsMXBean</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localMxBean--">localMxBean</a></span>()</code>
<div class="block">Gets local MxBean for this cache.</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localPeek-K-org.apache.ignite.cache.CachePeekMode...-">localPeek</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
         <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Peeks at in-memory cached value using default optional peek mode.</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localSize-org.apache.ignite.cache.CachePeekMode...-">localSize</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Gets the number of all entries cached on this node.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localSizeLong-org.apache.ignite.cache.CachePeekMode...-">localSizeLong</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Gets the number of all entries cached on this node as a long value.</div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#localSizeLong-int-org.apache.ignite.cache.CachePeekMode...-">localSizeLong</a></span>(int&nbsp;partition,
             <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Gets the number of all entries cached on this node for the partition as a long value.</div>
</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks">Lock</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#lock-K-">lock</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Creates a <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks"><code>Lock</code></a> instance associated with passed key.</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks">Lock</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#lockAll-java.util.Collection-">lockAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Creates a <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks"><code>Lock</code></a> instance associated with passed keys.</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/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/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#lostPartitions--">lostPartitions</a></span>()</code>
<div class="block">Gets a collection of lost partition IDs.</div>
</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/cache/CacheMetrics.html" title="interface in org.apache.ignite.cache">CacheMetrics</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#metrics--">metrics</a></span>()</code>
<div class="block">Gets whole cluster snapshot metrics (statistics) for this cache.</div>
</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/cache/CacheMetrics.html" title="interface in org.apache.ignite.cache">CacheMetrics</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#metrics-org.apache.ignite.cluster.ClusterGroup-">metrics</a></span>(<a href="../../../org/apache/ignite/cluster/ClusterGroup.html" title="interface in org.apache.ignite.cluster">ClusterGroup</a>&nbsp;grp)</code>
<div class="block">Gets cluster group snapshot metrics for caches in cluster group.</div>
</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/mxbean/CacheMetricsMXBean.html" title="interface in org.apache.ignite.mxbean">CacheMetricsMXBean</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#mxBean--">mxBean</a></span>()</code>
<div class="block">Gets whole cluster MxBean for this cache.</div>
</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#put-K-V-">put</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
   <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code></td>
</tr>
<tr id="i65" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#putAll-java.util.Map-">putAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;map)</code></td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#putAllAsync-java.util.Map-">putAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;map)</code>
<div class="block">Asynchronously copies all of the entries from the specified map to the <code>Cache</code>.</div>
</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#putAsync-K-V-">putAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
        <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Asynchronously associates the specified value with the specified key in the cache.</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#putIfAbsent-K-V-">putIfAbsent</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
           <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">
 
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#putIfAbsentAsync-K-V-">putIfAbsentAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Asynchronously associates the specified key with the given value if it is
 not already associated with a value.</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code>&lt;R&gt;&nbsp;<a href="../../../org/apache/ignite/cache/query/QueryCursor.html" title="interface in org.apache.ignite.cache.query">QueryCursor</a>&lt;R&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#query-org.apache.ignite.cache.query.Query-">query</a></span>(<a href="../../../org/apache/ignite/cache/query/Query.html" title="class in org.apache.ignite.cache.query">Query</a>&lt;R&gt;&nbsp;qry)</code>
<div class="block">Queries cache.</div>
</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code>&lt;T,R&gt;&nbsp;<a href="../../../org/apache/ignite/cache/query/QueryCursor.html" title="interface in org.apache.ignite.cache.query">QueryCursor</a>&lt;R&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#query-org.apache.ignite.cache.query.Query-org.apache.ignite.lang.IgniteClosure-">query</a></span>(<a href="../../../org/apache/ignite/cache/query/Query.html" title="class in org.apache.ignite.cache.query">Query</a>&lt;T&gt;&nbsp;qry,
     <a href="../../../org/apache/ignite/lang/IgniteClosure.html" title="interface in org.apache.ignite.lang">IgniteClosure</a>&lt;T,R&gt;&nbsp;transformer)</code>
<div class="block">Queries the cache transforming the entries on the server nodes.</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/cache/query/FieldsQueryCursor.html" title="interface in org.apache.ignite.cache.query">FieldsQueryCursor</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;?&gt;&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#query-org.apache.ignite.cache.query.SqlFieldsQuery-">query</a></span>(<a href="../../../org/apache/ignite/cache/query/SqlFieldsQuery.html" title="class in org.apache.ignite.cache.query">SqlFieldsQuery</a>&nbsp;qry)</code>
<div class="block">Queries cache.</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../org/apache/ignite/cache/query/QueryDetailMetrics.html" title="interface in org.apache.ignite.cache.query">QueryDetailMetrics</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#queryDetailMetrics--">queryDetailMetrics</a></span>()</code>
<div class="block">Gets query detail metrics.</div>
</td>
</tr>
<tr id="i74" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/cache/query/QueryMetrics.html" title="interface in org.apache.ignite.cache.query">QueryMetrics</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#queryMetrics--">queryMetrics</a></span>()</code>
<div class="block">Gets query metrics.</div>
</td>
</tr>
<tr id="i75" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;?&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#rebalance--">rebalance</a></span>()</code>
<div class="block">This cache node to re-balance its partitions.</div>
</td>
</tr>
<tr id="i76" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#remove-K-">remove</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr id="i77" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#remove-K-V-">remove</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
      <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal)</code>
<div class="block">
 
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries.</div>
</td>
</tr>
<tr id="i78" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#removeAll--">removeAll</a></span>()</code>
<div class="block">Removes all of the mappings from this cache.</div>
</td>
</tr>
<tr id="i79" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#removeAll-java.util.Set-">removeAll</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code></td>
</tr>
<tr id="i80" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#removeAllAsync--">removeAllAsync</a></span>()</code>
<div class="block">Asynchronously removes all of the mappings from this cache.</div>
</td>
</tr>
<tr id="i81" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#removeAllAsync-java.util.Set-">removeAllAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</code>
<div class="block">Asynchronously removes entries for the specified keys.</div>
</td>
</tr>
<tr id="i82" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#removeAsync-K-">removeAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code>
<div class="block">Asynchronously removes the mapping for a key from this cache if it is present.</div>
</td>
</tr>
<tr id="i83" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#removeAsync-K-V-">removeAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
           <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal)</code>
<div class="block">Asynchronously removes the mapping for a key only if currently mapped to the
 given value.</div>
</td>
</tr>
<tr id="i84" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#replace-K-V-">replace</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
       <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code></td>
</tr>
<tr id="i85" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#replace-K-V-V-">replace</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
       <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal,
       <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;newVal)</code>
<div class="block">
 
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries.</div>
</td>
</tr>
<tr id="i86" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#replaceAsync-K-V-">replaceAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
            <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</code>
<div class="block">Asynchronously replaces the entry for a key only if currently mapped to a
 given value.</div>
</td>
</tr>
<tr id="i87" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#replaceAsync-K-V-V-">replaceAsync</a></span>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
            <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal,
            <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;newVal)</code>
<div class="block">Asynchronous version of the <a href="../../../org/apache/ignite/IgniteCache.html#replace-K-V-V-"><code>replace(Object, Object, Object)</code></a>.</div>
</td>
</tr>
<tr id="i88" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#resetQueryDetailMetrics--">resetQueryDetailMetrics</a></span>()</code>
<div class="block">Reset query detail metrics.</div>
</td>
</tr>
<tr id="i89" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#resetQueryMetrics--">resetQueryMetrics</a></span>()</code>
<div class="block">Reset query metrics.</div>
</td>
</tr>
<tr id="i90" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#size-org.apache.ignite.cache.CachePeekMode...-">size</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Gets the number of all entries cached across all nodes.</div>
</td>
</tr>
<tr id="i91" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#sizeAsync-org.apache.ignite.cache.CachePeekMode...-">sizeAsync</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Asynchronously gets the number of all entries cached across all nodes.</div>
</td>
</tr>
<tr id="i92" class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#sizeLong-org.apache.ignite.cache.CachePeekMode...-">sizeLong</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Gets the number of all entries cached across all nodes as a long value.</div>
</td>
</tr>
<tr id="i93" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#sizeLong-int-org.apache.ignite.cache.CachePeekMode...-">sizeLong</a></span>(int&nbsp;partition,
        <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Gets the number of all entries cached in a partition as a long value.</div>
</td>
</tr>
<tr id="i94" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#sizeLongAsync-org.apache.ignite.cache.CachePeekMode...-">sizeLongAsync</a></span>(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Asynchronously gets the number of all entries cached across all nodes as a long value.</div>
</td>
</tr>
<tr id="i95" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#sizeLongAsync-int-org.apache.ignite.cache.CachePeekMode...-">sizeLongAsync</a></span>(int&nbsp;partition,
             <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</code>
<div class="block">Asynchronously gets the number of all entries cached in a partition as a long value.</div>
</td>
</tr>
<tr id="i96" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#withAsync--">withAsync</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
</td>
</tr>
<tr id="i97" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#withExpiryPolicy-javax.cache.expiry.ExpiryPolicy-">withExpiryPolicy</a></span>(javax.cache.expiry.ExpiryPolicy&nbsp;plc)</code>
<div class="block">Returns cache with the specified expired policy set.</div>
</td>
</tr>
<tr id="i98" class="altColor">
<td class="colFirst"><code>&lt;K1,V1&gt;&nbsp;<a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;K1,V1&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#withKeepBinary--">withKeepBinary</a></span>()</code>
<div class="block">Returns cache that will operate with binary objects.</div>
</td>
</tr>
<tr id="i99" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--">withNoRetries</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i100" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#withPartitionRecover--">withPartitionRecover</a></span>()</code>
<div class="block">Gets an instance of <code>IgniteCache</code> that will be allowed to execute cache operations (read, write)
 regardless of partition loss policy.</div>
</td>
</tr>
<tr id="i101" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteCache.html#withSkipStore--">withSkipStore</a></span>()</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.javax.cache.Cache">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;javax.cache.Cache</h3>
<code>deregisterCacheEntryListener, getCacheManager, getName, isClosed, iterator, loadAll, registerCacheEntryListener, unwrap</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Iterable">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;java.lang.<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a></h3>
<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true#forEach-java.util.function.Consumer-" title="class or interface in java.lang">forEach</a>, <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true#spliterator--" title="class or interface in java.lang">spliterator</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.ignite.lang.IgniteAsyncSupport">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.ignite.lang.<a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></h3>
<code><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html#future--">future</a>, <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html#isAsync--">isAsync</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="withAsync--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withAsync</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
<a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;withAsync()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Gets instance of this component with asynchronous mode enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html#withAsync--">withAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Instance of this component with asynchronous mode enabled.</dd>
</dl>
</li>
</ul>
<a name="getConfiguration-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConfiguration</h4>
<pre>&lt;C extends javax.cache.configuration.Configuration&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&nbsp;C&nbsp;getConfiguration(<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;C&gt;&nbsp;clazz)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getConfiguration</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="withExpiryPolicy-javax.cache.expiry.ExpiryPolicy-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withExpiryPolicy</h4>
<pre><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;withExpiryPolicy(javax.cache.expiry.ExpiryPolicy&nbsp;plc)</pre>
<div class="block">Returns cache with the specified expired policy set. This policy will be used for each operation
 invoked on the returned cache.
 <p>
 This method does not modify existing cache instance.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>plc</code> - Expire policy to use.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache instance with the specified expiry policy set.</dd>
</dl>
</li>
</ul>
<a name="withSkipStore--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withSkipStore</h4>
<pre><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;withSkipStore()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache with read-through write-through behavior disabled.</dd>
</dl>
</li>
</ul>
<a name="withNoRetries--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withNoRetries</h4>
<pre><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;withNoRetries()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache with no-retries behavior enabled.</dd>
</dl>
</li>
</ul>
<a name="withPartitionRecover--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withPartitionRecover</h4>
<pre><a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;withPartitionRecover()</pre>
<div class="block">Gets an instance of <code>IgniteCache</code> that will be allowed to execute cache operations (read, write)
 regardless of partition loss policy.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache without partition loss protection.</dd>
</dl>
</li>
</ul>
<a name="withKeepBinary--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>withKeepBinary</h4>
<pre>&lt;K1,V1&gt;&nbsp;<a href="../../../org/apache/ignite/IgniteCache.html" title="interface in org.apache.ignite">IgniteCache</a>&lt;K1,V1&gt;&nbsp;withKeepBinary()</pre>
<div class="block">Returns cache that will operate with binary objects.
 <p>
 Cache returned by this method will not be forced to deserialize binary objects,
 so keys and values will be returned from cache API methods without changes. Therefore,
 signature of the cache can contain only following types:
 <ul>
     <li><code>org.apache.ignite.binary.BinaryObject</code> for binary classes</li>
     <li>All primitives (byte, int, ...) and there boxed versions (Byte, Integer, ...)</li>
     <li>Arrays of primitives (byte[], int[], ...)</li>
     <li><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><code>String</code></a> and array of <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang"><code>String</code></a>s</li>
     <li><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util"><code>UUID</code></a> and array of <a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util"><code>UUID</code></a>s</li>
     <li><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util"><code>Date</code></a> and array of <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Date.html?is-external=true" title="class or interface in java.util"><code>Date</code></a>s</li>
     <li><a href="http://docs.oracle.com/javase/8/docs/api/java/sql/Timestamp.html?is-external=true" title="class or interface in java.sql"><code>Timestamp</code></a> and array of <a href="http://docs.oracle.com/javase/8/docs/api/java/sql/Timestamp.html?is-external=true" title="class or interface in java.sql"><code>Timestamp</code></a>s</li>
     <li>Enums and array of enums</li>
     <li>
         Maps, collections and array of objects (but objects inside
         them will still be converted if they are binary)
     </li>
 </ul>
 <p>
 For example, if you use <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang"><code>Integer</code></a> as a key and <code>Value</code> class as a value
 (which will be stored in binary format), you should acquire following projection
 to avoid deserialization:
 <pre>
 IgniteCache<Integer, BinaryObject> prj = cache.withKeepBinary();

 // Value is not deserialized and returned in binary format.
 BinaryObject po = prj.get(1);
 </pre>
 <p>
 Note that this method makes sense only if cache is working in binary mode
 if default marshaller is used.
 If not, this method is no-op and will return current cache.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New cache instance for binary objects.</dd>
</dl>
</li>
</ul>
<a name="loadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadCache</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;loadCache(@Nullable
                                     <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
                                     @Nullable
                                     <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                              throws javax.cache.CacheException</pre>
<div class="block">Executes <a href="../../../org/apache/ignite/IgniteCache.html#localLoadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Optional predicate (may be <code>null</code>). If provided, will be used to
      filter values loaded from storage before they are put into cache.</dd>
<dd><code>args</code> - Optional user arguments to be passed into
      <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - If loading failed.</dd>
</dl>
</li>
</ul>
<a name="loadCacheAsync-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>loadCacheAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;loadCacheAsync(@Nullable
                                  <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
                                  @Nullable
                                  <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                           throws javax.cache.CacheException</pre>
<div class="block">Asynchronously executes <a href="../../../org/apache/ignite/IgniteCache.html#localLoadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Optional predicate (may be <code>null</code>). If provided, will be used to
      filter values loaded from storage before they are put into cache.</dd>
<dd><code>args</code> - Optional user arguments to be passed into
      <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the cache loading.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - If loading failed.</dd>
</dl>
</li>
</ul>
<a name="localLoadCache-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localLoadCache</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;localLoadCache(@Nullable
                                          <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
                                          @Nullable
                                          <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                   throws javax.cache.CacheException</pre>
<div class="block">Delegates to <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure,Object...)</code></a> method
 to load state from the underlying persistent storage. The loaded values
 will then be given to the optionally passed in predicate, and, if the predicate returns
 <code>true</code>, will be stored in cache. If predicate is <code>null</code>, then
 all loaded values will be stored in cache.
 <p>
 Note that this method does not receive keys as a parameter, so it is up to
 <a href="../../../org/apache/ignite/cache/store/CacheStore.html" title="interface in org.apache.ignite.cache.store"><code>CacheStore</code></a> implementation to provide all the data to be loaded.
 <p>
 This method is not transactional and may end up loading a stale value into
 cache if another thread has updated the value immediately after it has been
 loaded. It is mostly useful when pre-loading the cache from underlying
 data store before start, or for read-only caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Optional predicate (may be <code>null</code>). If provided, will be used to
      filter values to be put into cache.</dd>
<dd><code>args</code> - Optional user arguments to be passed into
      <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - If loading failed.</dd>
</dl>
</li>
</ul>
<a name="localLoadCacheAsync-org.apache.ignite.lang.IgniteBiPredicate-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localLoadCacheAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;localLoadCacheAsync(@Nullable
                                       <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;p,
                                       @Nullable
                                       <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                throws javax.cache.CacheException</pre>
<div class="block">Asynchronously loads state from the underlying persistent storage by delegating
 to <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure,Object...)</code></a> method. The loaded values
 will then be given to the optionally passed in predicate, and, if the predicate returns
 <code>true</code>, will be stored in cache. If predicate is <code>null</code>, then
 all loaded values will be stored in cache.
 <p>
 Note that this method does not receive keys as a parameter, so it is up to
 <a href="../../../org/apache/ignite/cache/store/CacheStore.html" title="interface in org.apache.ignite.cache.store"><code>CacheStore</code></a> implementation to provide all the data to be loaded.
 <p>
 This method is not transactional and may end up loading a stale value into
 cache if another thread has updated the value immediately after it has been
 loaded. It is mostly useful when pre-loading the cache from underlying
 data store before start, or for read-only caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Optional predicate (may be <code>null</code>). If provided, will be used to
      filter values to be put into cache.</dd>
<dd><code>args</code> - Optional user arguments to be passed into
      <a href="../../../org/apache/ignite/cache/store/CacheStore.html#loadCache-org.apache.ignite.lang.IgniteBiInClosure-java.lang.Object...-"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the cache loading.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - If loading failed.</dd>
</dl>
</li>
</ul>
<a name="getAndPutIfAbsent-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="getAndPutIfAbsent-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndPutIfAbsent</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;getAndPutIfAbsent(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                          <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                                   throws javax.cache.CacheException,
                                          <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Stores given key-value pair in cache only if cache had no previous mapping for it. If cache
 previously contained value for the given key, then this value is returned.
 In case of <a href="../../../org/apache/ignite/cache/CacheMode.html#PARTITIONED"><code>CacheMode.PARTITIONED</code></a> or <a href="../../../org/apache/ignite/cache/CacheMode.html#REPLICATED"><code>CacheMode.REPLICATED</code></a> caches,
 the value will be loaded from the primary node, which in its turn may load the value
 from the swap storage, and consecutively, if it's not in swap,
 from the underlying persistent storage. If value has to be loaded from persistent
 storage, <code>CacheLoader.load(Object)</code> method will be used.
 <p>
 If the returned value is not needed, method <a href="../../../org/apache/ignite/IgniteCache.html#putIfAbsent-K-V-"><code>putIfAbsent(Object, Object)</code></a> should
 always be used instead of this one to avoid the overhead associated with returning of the
 previous value.
 <p>
 If write-through is enabled, the stored value will be persisted to <a href="../../../org/apache/ignite/cache/store/CacheStore.html" title="interface in org.apache.ignite.cache.store"><code>CacheStore</code></a>
 via <code>CacheWriter.write(javax.cache.Cache.Entry)</code> method.
 <h2 class="header">Transactions</h2>
 This method is transactional and will enlist the entry into ongoing transaction
 if there is one.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key to store in cache.</dd>
<dd><code>val</code> - Value to be associated with the given key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Previously contained value regardless of whether put happened or not (<code>null</code> if there was no
      previous value).</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If either key or value are <code>null</code>.</dd>
<dd><code>javax.cache.CacheException</code> - If put operation failed.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndPutIfAbsentAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="getAndPutIfAbsentAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndPutIfAbsentAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAndPutIfAbsentAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                       <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                                throws javax.cache.CacheException,
                                       <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously stores given key-value pair in cache only if cache had no previous mapping for it. If cache
 previously contained value for the given key, then this value is returned.
 In case of <a href="../../../org/apache/ignite/cache/CacheMode.html#PARTITIONED"><code>CacheMode.PARTITIONED</code></a> or <a href="../../../org/apache/ignite/cache/CacheMode.html#REPLICATED"><code>CacheMode.REPLICATED</code></a> caches,
 the value will be loaded from the primary node, which in its turn may load the value
 from the swap storage, and consecutively, if it's not in swap,
 from the underlying persistent storage. If value has to be loaded from persistent
 storage, <code>CacheLoader.load(Object)</code> method will be used.
 <p>
 If the returned value is not needed, method <a href="../../../org/apache/ignite/IgniteCache.html#putIfAbsentAsync-K-V-"><code>putIfAbsentAsync(Object, Object)</code></a> should
 always be used instead of this one to avoid the overhead associated with returning of the
 previous value.
 <p>
 If write-through is enabled, the stored value will be persisted to <a href="../../../org/apache/ignite/cache/store/CacheStore.html" title="interface in org.apache.ignite.cache.store"><code>CacheStore</code></a>
 via <code>CacheWriter.write(javax.cache.Cache.Entry)</code> method.
 <h2 class="header">Transactions</h2>
 This method is transactional and will enlist the entry into ongoing transaction
 if there is one.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key to store in cache.</dd>
<dd><code>val</code> - Value to be associated with the given key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If either key or value are <code>null</code>.</dd>
<dd><code>javax.cache.CacheException</code> - If put operation failed.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="lock-java.lang.Object-">
<!--   -->
</a><a name="lock-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lock</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks">Lock</a>&nbsp;lock(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</pre>
<div class="block">Creates a <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks"><code>Lock</code></a> instance associated with passed key.
 This method does not acquire lock immediately, you have to call appropriate method on returned instance.
 Returned lock does not support <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#newCondition--" title="class or interface in java.util.concurrent.locks"><code>Lock.newCondition()</code></a> method,
 other methods defined in <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks"><code>Lock</code></a> are supported.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key for lock.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New lock instance associated with passed key.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#lock--" title="class or interface in java.util.concurrent.locks"><code>Lock.lock()</code></a>, 
<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#tryLock-long-java.util.concurrent.TimeUnit-" title="class or interface in java.util.concurrent.locks"><code>Lock.tryLock(long, TimeUnit)</code></a></dd>
</dl>
</li>
</ul>
<a name="lockAll-java.util.Collection-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lockAll</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks">Lock</a>&nbsp;lockAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Creates a <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks"><code>Lock</code></a> instance associated with passed keys.
 This method does not acquire lock immediately, you have to call appropriate method on returned instance.
 Returned lock does not support <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#newCondition--" title="class or interface in java.util.concurrent.locks"><code>Lock.newCondition()</code></a> method,
 other methods defined in <a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true" title="class or interface in java.util.concurrent.locks"><code>Lock</code></a> are supported.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys for lock.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>New lock instance associated with passed key.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#lock--" title="class or interface in java.util.concurrent.locks"><code>Lock.lock()</code></a>, 
<a href="http://docs.oracle.com/javase/8/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#tryLock-long-java.util.concurrent.TimeUnit-" title="class or interface in java.util.concurrent.locks"><code>Lock.tryLock(long, TimeUnit)</code></a></dd>
</dl>
</li>
</ul>
<a name="isLocalLocked-java.lang.Object-boolean-">
<!--   -->
</a><a name="isLocalLocked-K-boolean-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLocalLocked</h4>
<pre>boolean&nbsp;isLocalLocked(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                      boolean&nbsp;byCurrThread)</pre>
<div class="block">Checks if specified key is locked.
 <p>
 This is a local in-VM operation and does not involve any network trips
 or access to persistent storage in any way.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key to check.</dd>
<dd><code>byCurrThread</code> - If <code>true</code> method will check that current thread owns a lock on this key, other vise
     will check that any thread on any node owns a lock on this key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if lock is owned by some node.</dd>
</dl>
</li>
</ul>
<a name="query-org.apache.ignite.cache.query.Query-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>query</h4>
<pre>&lt;R&gt;&nbsp;<a href="../../../org/apache/ignite/cache/query/QueryCursor.html" title="interface in org.apache.ignite.cache.query">QueryCursor</a>&lt;R&gt;&nbsp;query(<a href="../../../org/apache/ignite/cache/query/Query.html" title="class in org.apache.ignite.cache.query">Query</a>&lt;R&gt;&nbsp;qry)</pre>
<div class="block">Queries cache. Accepts any subclass of <a href="../../../org/apache/ignite/cache/query/Query.html" title="class in org.apache.ignite.cache.query"><code>Query</code></a> interface.
 See also <a href="../../../org/apache/ignite/IgniteCache.html#query-org.apache.ignite.cache.query.SqlFieldsQuery-"><code>query(SqlFieldsQuery)</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>qry</code> - Query.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cursor.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/cache/query/ScanQuery.html" title="class in org.apache.ignite.cache.query"><code>ScanQuery</code></a>, 
<a href="../../../org/apache/ignite/cache/query/SqlQuery.html" title="class in org.apache.ignite.cache.query"><code>SqlQuery</code></a>, 
<a href="../../../org/apache/ignite/cache/query/SqlFieldsQuery.html" title="class in org.apache.ignite.cache.query"><code>SqlFieldsQuery</code></a>, 
<a href="../../../org/apache/ignite/cache/query/TextQuery.html" title="class in org.apache.ignite.cache.query"><code>TextQuery</code></a>, 
<a href="../../../org/apache/ignite/cache/query/SpiQuery.html" title="class in org.apache.ignite.cache.query"><code>SpiQuery</code></a></dd>
</dl>
</li>
</ul>
<a name="query-org.apache.ignite.cache.query.SqlFieldsQuery-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>query</h4>
<pre><a href="../../../org/apache/ignite/cache/query/FieldsQueryCursor.html" title="interface in org.apache.ignite.cache.query">FieldsQueryCursor</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;?&gt;&gt;&nbsp;query(<a href="../../../org/apache/ignite/cache/query/SqlFieldsQuery.html" title="class in org.apache.ignite.cache.query">SqlFieldsQuery</a>&nbsp;qry)</pre>
<div class="block">Queries cache. Accepts <a href="../../../org/apache/ignite/cache/query/SqlFieldsQuery.html" title="class in org.apache.ignite.cache.query"><code>SqlFieldsQuery</code></a> class.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>qry</code> - SqlFieldsQuery.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cursor.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/cache/query/SqlFieldsQuery.html" title="class in org.apache.ignite.cache.query"><code>SqlFieldsQuery</code></a></dd>
</dl>
</li>
</ul>
<a name="query-org.apache.ignite.cache.query.Query-org.apache.ignite.lang.IgniteClosure-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>query</h4>
<pre>&lt;T,R&gt;&nbsp;<a href="../../../org/apache/ignite/cache/query/QueryCursor.html" title="interface in org.apache.ignite.cache.query">QueryCursor</a>&lt;R&gt;&nbsp;query(<a href="../../../org/apache/ignite/cache/query/Query.html" title="class in org.apache.ignite.cache.query">Query</a>&lt;T&gt;&nbsp;qry,
                           <a href="../../../org/apache/ignite/lang/IgniteClosure.html" title="interface in org.apache.ignite.lang">IgniteClosure</a>&lt;T,R&gt;&nbsp;transformer)</pre>
<div class="block">Queries the cache transforming the entries on the server nodes. Can be used, for example,
 to avoid network overhead in case only one field out of the large is required by client.
 <p>
 Currently transformers are supported ONLY for <a href="../../../org/apache/ignite/cache/query/ScanQuery.html" title="class in org.apache.ignite.cache.query"><code>ScanQuery</code></a>. Passing any other
 subclass of <a href="../../../org/apache/ignite/cache/query/Query.html" title="class in org.apache.ignite.cache.query"><code>Query</code></a> interface to this method will end up with
 <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/UnsupportedOperationException.html?is-external=true" title="class or interface in java.lang"><code>UnsupportedOperationException</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>qry</code> - Query.</dd>
<dd><code>transformer</code> - Transformer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cursor.</dd>
</dl>
</li>
</ul>
<a name="localEntries-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localEntries</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a>&lt;javax.cache.Cache.Entry&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&nbsp;localEntries(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                                             throws javax.cache.CacheException</pre>
<div class="block">Allows for iteration over local cache entries.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Peek modes.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Iterable over local cache entries.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - If failed.</dd>
</dl>
</li>
</ul>
<a name="queryMetrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryMetrics</h4>
<pre><a href="../../../org/apache/ignite/cache/query/QueryMetrics.html" title="interface in org.apache.ignite.cache.query">QueryMetrics</a>&nbsp;queryMetrics()</pre>
<div class="block">Gets query metrics.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Metrics.</dd>
</dl>
</li>
</ul>
<a name="resetQueryMetrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetQueryMetrics</h4>
<pre>void&nbsp;resetQueryMetrics()</pre>
<div class="block">Reset query metrics.</div>
</li>
</ul>
<a name="queryDetailMetrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>queryDetailMetrics</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../org/apache/ignite/cache/query/QueryDetailMetrics.html" title="interface in org.apache.ignite.cache.query">QueryDetailMetrics</a>&gt;&nbsp;queryDetailMetrics()</pre>
<div class="block">Gets query detail metrics.
 Query detail metrics could be enabled via <a href="../../../org/apache/ignite/configuration/CacheConfiguration.html#setQueryDetailMetricsSize-int-"><code>CacheConfiguration.setQueryDetailMetricsSize(int)</code></a> method.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Metrics.</dd>
</dl>
</li>
</ul>
<a name="resetQueryDetailMetrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetQueryDetailMetrics</h4>
<pre>void&nbsp;resetQueryDetailMetrics()</pre>
<div class="block">Reset query detail metrics.</div>
</li>
</ul>
<a name="localEvict-java.util.Collection-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localEvict</h4>
<pre>void&nbsp;localEvict(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Attempts to evict all entries associated with keys. Note,
 that entry will be evicted only if it's not used (not
 participating in any locks or transactions).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys to evict.</dd>
</dl>
</li>
</ul>
<a name="localPeek-java.lang.Object-org.apache.ignite.cache.CachePeekMode:A-">
<!--   -->
</a><a name="localPeek-K-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localPeek</h4>
<pre><a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;localPeek(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
            <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</pre>
<div class="block">Peeks at in-memory cached value using default optional peek mode.
 <p>
 This method will not load value from any persistent store or from a remote node.
 <h2 class="header">Transactions</h2>
 This method does not participate in any transactions.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Entry key.</dd>
<dd><code>peekModes</code> - Peek modes.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Peeked value, or <code>null</code> if not found.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If key is <code>null</code>.</dd>
</dl>
</li>
</ul>
<a name="size-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>size</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
int&nbsp;size(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                        throws javax.cache.CacheException</pre>
<div class="block">Gets the number of all entries cached across all nodes. By default, if <code>peekModes</code> value isn't defined,
 only size of primary copies across all nodes will be returned. This behavior is identical to calling
 this method with <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.
 <p>
 NOTE: this operation is distributed and will query all participating nodes for their cache sizes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache size across all nodes.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - On error.</dd>
</dl>
</li>
</ul>
<a name="sizeAsync-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sizeAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;sizeAsync(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                         throws javax.cache.CacheException</pre>
<div class="block">Asynchronously gets the number of all entries cached across all nodes. By default,
 if <code>peekModes</code> value isn't defined, only size of primary copies across all nodes will be returned.
 This behavior is identical to calling this method with <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.
 <p>
 NOTE: this operation is distributed and will query all participating nodes for their cache sizes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - On error.</dd>
</dl>
</li>
</ul>
<a name="sizeLong-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sizeLong</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
long&nbsp;sizeLong(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                             throws javax.cache.CacheException</pre>
<div class="block">Gets the number of all entries cached across all nodes as a long value. By default, if <code>peekModes</code> value
 isn't defined, only size of primary copies across all nodes will be returned. This behavior is identical to
 calling this method with <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.
 <p>
 NOTE: this operation is distributed and will query all participating nodes for their cache sizes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache size across all nodes.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - On error.</dd>
</dl>
</li>
</ul>
<a name="sizeLongAsync-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sizeLongAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;sizeLongAsync(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                          throws javax.cache.CacheException</pre>
<div class="block">Asynchronously gets the number of all entries cached across all nodes as a long value. By default,
 if <code>peekModes</code> value isn't defined, only size of primary copies across all nodes will be returned.
 This behavior is identical to calling this method with <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.
 <p>
 NOTE: this operation is distributed and will query all participating nodes for their cache sizes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - On error.</dd>
</dl>
</li>
</ul>
<a name="sizeLong-int-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sizeLong</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
long&nbsp;sizeLong(int&nbsp;partition,
                                    <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                             throws javax.cache.CacheException</pre>
<div class="block">Gets the number of all entries cached in a partition as a long value. By default, if <code>peekModes</code> value
 isn't defined, only size of primary copies across all nodes will be returned. This behavior is identical to
 calling this method with <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.
 <p>
 NOTE: this operation is distributed and will query all participating nodes for their partition cache sizes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>partition</code> - partition.</dd>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total partition cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Partition cache size across all nodes.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - On error.</dd>
</dl>
</li>
</ul>
<a name="sizeLongAsync-int-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sizeLongAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Long.html?is-external=true" title="class or interface in java.lang">Long</a>&gt;&nbsp;sizeLongAsync(int&nbsp;partition,
                                 <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)
                          throws javax.cache.CacheException</pre>
<div class="block">Asynchronously gets the number of all entries cached in a partition as a long value. By default, if <code>peekModes</code> value
 isn't defined, only size of primary copies across all nodes will be returned. This behavior is identical to
 calling this method with <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.
 <p>
 NOTE: this operation is distributed and will query all participating nodes for their partition cache sizes.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>partition</code> - partition.</dd>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total partition cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>javax.cache.CacheException</code> - On error.</dd>
</dl>
</li>
</ul>
<a name="localSize-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localSize</h4>
<pre>int&nbsp;localSize(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</pre>
<div class="block">Gets the number of all entries cached on this node. By default, if <code>peekModes</code> value isn't defined,
 only size of primary copies will be returned. This behavior is identical to calling this method with
 <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache size on this node.</dd>
</dl>
</li>
</ul>
<a name="localSizeLong-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localSizeLong</h4>
<pre>long&nbsp;localSizeLong(<a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</pre>
<div class="block">Gets the number of all entries cached on this node as a long value. By default, if <code>peekModes</code> value isn't
 defined, only size of primary copies will be returned. This behavior is identical to calling this method with
 <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache size on this node.</dd>
</dl>
</li>
</ul>
<a name="localSizeLong-int-org.apache.ignite.cache.CachePeekMode...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localSizeLong</h4>
<pre>long&nbsp;localSizeLong(int&nbsp;partition,
                   <a href="../../../org/apache/ignite/cache/CachePeekMode.html" title="enum in org.apache.ignite.cache">CachePeekMode</a>...&nbsp;peekModes)</pre>
<div class="block">Gets the number of all entries cached on this node for the partition as a long value. By default, if <code>peekModes</code> value isn't
 defined, only size of primary copies will be returned. This behavior is identical to calling this method with
 <a href="../../../org/apache/ignite/cache/CachePeekMode.html#PRIMARY"><code>CachePeekMode.PRIMARY</code></a> peek mode.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>partition</code> - partition.</dd>
<dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache size on this node.</dd>
</dl>
</li>
</ul>
<a name="invokeAll-java.util.Map-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&nbsp;invokeAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&gt;&nbsp;map,
                                                                                         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                                                                  throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously invokes each <code>EntryProcessor</code> from map's values against the correspondent
 <code>Cache.Entry</code> specified by map's key set.
 <p>
 If an <code>Cache.Entry</code> does not exist for the specified key, an attempt is made
 to load it (if a loader is configured) or a surrogate <code>Cache.Entry</code>,
 consisting of the key and a value of null is provided.
 <p>
 The order that the entries for the keys are processed is undefined.
 Implementations may choose to process the entries in any order, including
 concurrently.  Furthermore there is no guarantee implementations will
 use the same <code>EntryProcessor</code> instance to process each entry, as
 the case may be in a non-local cache topology.
 <p>
 The result of executing the <code>EntryProcessor</code> is returned in the future as a
 <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of <code>EntryProcessorResult</code>s, one result per key. Should the
 <code>EntryProcessor</code> or Caching implementation throw an exception, the
 exception is wrapped and re-thrown when a call to
 <code>EntryProcessorResult.get()</code> is made.
 <p>
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>map</code> - Map containing keys and entry processors to be applied to values.</dd>
<dd><code>args</code> - Additional arguments to pass to the <code>EntryProcessor</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The map of <code>EntryProcessorResult</code>s of the processing per key,
      if any, defined by the <code>EntryProcessor</code> implementation.  No mappings
      will be returned for <code>EntryProcessor</code>s that return a
      <code>null</code> value for a key.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="invokeAllAsync-java.util.Map-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAllAsync</h4>
<pre>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&gt;&nbsp;invokeAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&gt;&nbsp;map,
                                                                                      <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                                                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously version of the <a href="../../../org/apache/ignite/IgniteCache.html#invokeAll-java.util.Map-java.lang.Object...-"><code>invokeAll(Map, Object...)</code></a> method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>map</code> - Map containing keys and entry processors to be applied to values.</dd>
<dd><code>args</code> - Additional arguments to pass to the <code>EntryProcessor</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation. See more about future result
 at the <a href="../../../org/apache/ignite/IgniteCache.html#invokeAll-java.util.Map-java.lang.Object...-"><code>invokeAll(Map, Object...)</code></a>.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="get-java.lang.Object-">
<!--   -->
</a><a name="get-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>get</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;get(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                     throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>get</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAsync-java.lang.Object-">
<!--   -->
</a><a name="getAsync-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</pre>
<div class="block">Asynchronously gets an entry from the cache.
 <p>
 If the cache is configured to use read-through, and a future result would be null
 because the entry is missing from the cache, the Cache's <code>CacheLoader</code>
 is called in an attempt to load the entry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
</dl>
</li>
</ul>
<a name="getEntry-java.lang.Object-">
<!--   -->
</a><a name="getEntry-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntry</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getEntry(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                                        throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Gets an entry from the cache.
 <p>
 If the cache is configured to use read-through, and get would return null
 because the entry is missing from the cache, the Cache's <code>CacheLoader</code>
 is called in an attempt to load the entry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - The key whose associated value is to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The element, or null, if it does not exist.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code>.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If the key is <code>null</code>.</dd>
<dd><code>javax.cache.CacheException</code> - If there is a problem fetching the value.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
 runtime-type-checking, and the key or value types are incompatible with those that have been
 configured for the <code>Cache</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getEntryAsync-java.lang.Object-">
<!--   -->
</a><a name="getEntryAsync-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntryAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&nbsp;getEntryAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                                     throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously gets an entry from the cache.
 <p>
 If the cache is configured to use read-through, and a future result would be null
 because the entry is missing from the cache, the Cache's <code>CacheLoader</code>
 is called in an attempt to load the entry.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - The key whose associated value is to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code>.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If the key is <code>null</code>.</dd>
<dd><code>javax.cache.CacheException</code> - If there is a problem fetching the value.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
 runtime-type-checking, and the key or value types are incompatible with those that have been
 configured for the <code>Cache</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAll-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getAll</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAllAsync-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&nbsp;getAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                            throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously gets a collection of entries from the <code>Cache</code>, returning them as
 <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of the values associated with the set of keys requested.
 <p>
 If the cache is configured read-through, and a future result for a key would
 be null because an entry is missing from the cache, the Cache's
 <code>CacheLoader</code> is called in an attempt to load the entry. If an
 entry cannot be loaded for a given key, the key will not be present in
 the returned Map.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys set.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getEntries-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntries</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&nbsp;getEntries(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                                                      throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Gets a collection of entries from the <code>Cache</code>.
 <p>
 If the cache is configured read-through, and a get for a key would
 return null because an entry is missing from the cache, the Cache's
 <code>CacheLoader</code> is called in an attempt to load the entry. If an
 entry cannot be loaded for a given key, the key will not be present in
 the returned Collection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A collection of entries that were found for the given keys. Entries not found
         in the cache are not in the returned collection.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If keys is null or if keys contains a <code>null</code>.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code>.</dd>
<dd><code>javax.cache.CacheException</code> - If there is a problem fetching the values.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
 runtime-type-checking, and the key or value types are incompatible with those that have been
 configured for the <code>Cache</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getEntriesAsync-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getEntriesAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../org/apache/ignite/cache/CacheEntry.html" title="interface in org.apache.ignite.cache">CacheEntry</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&gt;&nbsp;getEntriesAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                                                   throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously gets a collection of entries from the <code>Cache</code>.
 <p>
 If the cache is configured read-through, and a future result for a key would
 be null because an entry is missing from the cache, the Cache's
 <code>CacheLoader</code> is called in an attempt to load the entry. If an
 entry cannot be loaded for a given key, the key will not be present in
 the returned Collection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If keys is null or if keys contains a <code>null</code>.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code>.</dd>
<dd><code>javax.cache.CacheException</code> - If there is a problem fetching the values.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
 runtime-type-checking, and the key or value types are incompatible with those that have been
 configured for the <code>Cache</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAllOutTx-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllOutTx</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAllOutTx(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Gets values from cache. Will bypass started transaction, if any, i.e. will not enlist entries
 and will not lock any keys if pessimistic transaction is started by thread.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A map of entries that were found for the given keys.</dd>
</dl>
</li>
</ul>
<a name="getAllOutTxAsync-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAllOutTxAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&gt;&nbsp;getAllOutTxAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Asynchronously gets values from cache. Will bypass started transaction, if any, i.e. will not enlist entries
 and will not lock any keys if pessimistic transaction is started by thread.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
</dl>
</li>
</ul>
<a name="containsKey-java.lang.Object-">
<!--   -->
</a><a name="containsKey-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsKey</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;containsKey(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                                   throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>containsKey</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="containsKeyAsync-java.lang.Object-">
<!--   -->
</a><a name="containsKeyAsync-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsKeyAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;containsKeyAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                                throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously determines if the <code>Cache</code> contains an entry for the specified key.
 <p>
 More formally, future result is <tt>true</tt> if and only if this cache contains a
 mapping for a key <tt>k</tt> such that <tt>key.equals(k)</tt>.
 (There can be at most one such mapping.)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="containsKeys-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsKeys</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;containsKeys(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                                    throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Determines if the <code>Cache</code> contains entries for the specified keys.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Key whose presence in this cache is to be tested.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if this cache contains a mapping for the specified keys.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="containsKeysAsync-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>containsKeysAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;containsKeysAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                                 throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously determines if the <code>Cache</code> contains entries for the specified keys.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Key whose presence in this cache is to be tested.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="put-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="put-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>put</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;put(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                               <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                        throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>put</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="putAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="putAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;putAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                            <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                     throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously associates the specified value with the specified key in the cache.
 <p>
 If the <code>Cache</code> previously contained a mapping for the key, the old
 value is replaced by the specified value.  (A cache <tt>c</tt> is said to
 contain a mapping for a key <tt>k</tt> if and only if <a href="../../../org/apache/ignite/IgniteCache.html#containsKey-K-"><code>c.containsKey(k)</code></a> would return <tt>true</tt>.)</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>val</code> - Value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndPut-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="getAndPut-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndPut</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;getAndPut(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                  <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                           throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getAndPut</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndPutAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="getAndPutAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndPutAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAndPutAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                               <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                        throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously associates the specified value with the specified key in this cache,
 returning an existing value if one existed as the future result.
 <p>
 If the cache previously contained a mapping for
 the key, the old value is replaced by the specified value.  (A cache
 <tt>c</tt> is said to contain a mapping for a key <tt>k</tt> if and only
 if <a href="../../../org/apache/ignite/IgniteCache.html#containsKey-K-"><code>c.containsKey(k)</code></a> would return
 <tt>true</tt>.)
 <p>
 The previous value is returned as the future result, or future result is null if there was no value associated
 with the key previously.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>val</code> - Value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="putAll-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;putAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;map)
                           throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>putAll</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="putAllAsync-java.util.Map-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putAllAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;putAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;map)
                        throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously copies all of the entries from the specified map to the <code>Cache</code>.
 <p>
 The effect of this call is equivalent to that of calling
 <a href="../../../org/apache/ignite/IgniteCache.html#putAsync-K-V-"><code>putAsync(Object, Object)</code></a>  putAsync(k, v)} on this cache once for each mapping
 from key <tt>k</tt> to value <tt>v</tt> in the specified map.
 <p>
 The order in which the individual puts occur is undefined.
 <p>
 The behavior of this operation is undefined if entries in the cache
 corresponding to entries in the map are modified or removed while this
 operation is in progress. or if map is modified while the operation is in
 progress.
 <p>
 In Default Consistency mode, individual puts occur atomically but not
 the entire putAll.  Listeners may observe individual updates.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>map</code> - Map containing keys and values to put into the cache.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="putIfAbsent-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="putIfAbsent-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putIfAbsent</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;putIfAbsent(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                          <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                                   throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">
 <p>
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries. It is recommended
 to disable retries with <a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--"><code>withNoRetries()</code></a> and manually restore primary-backup
 consistency in case of update failure.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>putIfAbsent</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="putIfAbsentAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="putIfAbsentAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putIfAbsentAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;putIfAbsentAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                       <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</pre>
<div class="block">Asynchronously associates the specified key with the given value if it is
 not already associated with a value.
 <p>
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries. It is recommended
 to disable retries with <a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--"><code>withNoRetries()</code></a> and manually restore primary-backup
 consistency in case of update failure.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>val</code> - Value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionTimeoutException.html" title="class in org.apache.ignite.transactions">TransactionTimeoutException</a></code> - If operation performs within transaction and timeout occurred.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionRollbackException.html" title="class in org.apache.ignite.transactions">TransactionRollbackException</a></code> - If operation performs within transaction that automatically rolled back.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionHeuristicException.html" title="class in org.apache.ignite.transactions">TransactionHeuristicException</a></code> - If operation performs within transaction that entered an unknown state.</dd>
</dl>
</li>
</ul>
<a name="remove-java.lang.Object-">
<!--   -->
</a><a name="remove-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;remove(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                              throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>remove</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="removeAsync-java.lang.Object-">
<!--   -->
</a><a name="removeAsync-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;removeAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                           throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously removes the mapping for a key from this cache if it is present.
 <p>
 More formally, if this cache contains a mapping from key <tt>k</tt> to
 value <tt>v</tt> such that
 <code>(key==null ?  k==null : key.equals(k))</code>, that mapping is removed.
 (The cache can contain at most one such mapping.)

 <p>A future result is <tt>true</tt> if this cache previously associated the key,
 or <tt>false</tt> if the cache contained no mapping for the key.
 <p>
 The cache will not contain a mapping for the specified key once the
 returned future is completed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="remove-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="remove-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remove</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;remove(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                     <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal)
                              throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">
 <p>
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries. It is recommended
 to disable retries with <a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--"><code>withNoRetries()</code></a> and manually restore primary-backup
 consistency in case of update failure.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>remove</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="removeAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="removeAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;removeAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                  <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal)
                           throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously removes the mapping for a key only if currently mapped to the
 given value.
 <p>
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries. It is recommended
 to disable retries with <a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--"><code>withNoRetries()</code></a> and manually restore primary-backup
 consistency in case of update failure.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>oldVal</code> - Old value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndRemove-java.lang.Object-">
<!--   -->
</a><a name="getAndRemove-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndRemove</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;getAndRemove(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                              throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getAndRemove</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndRemoveAsync-java.lang.Object-">
<!--   -->
</a><a name="getAndRemoveAsync-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndRemoveAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAndRemoveAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)
                           throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously removes the entry for a key only if currently mapped to some
 value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="replace-java.lang.Object-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="replace-K-V-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>replace</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;replace(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                      <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal,
                                      <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;newVal)
                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">
 <p>
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries. It is recommended
 to disable retries with <a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--"><code>withNoRetries()</code></a> and manually restore primary-backup
 consistency in case of update failure.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>replace</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="replaceAsync-java.lang.Object-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="replaceAsync-K-V-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>replaceAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;replaceAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                   <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;oldVal,
                                   <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;newVal)
                            throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronous version of the <a href="../../../org/apache/ignite/IgniteCache.html#replace-K-V-V-"><code>replace(Object, Object, Object)</code></a>.
 <p>
 For <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> return
 value on primary node crash may be incorrect because of the automatic retries. It is recommended
 to disable retries with <a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries--"><code>withNoRetries()</code></a> and manually restore primary-backup
 consistency in case of update failure.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>oldVal</code> - Old value.</dd>
<dd><code>newVal</code> - New value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="replace-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="replace-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>replace</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
boolean&nbsp;replace(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                      <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>replace</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="replaceAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="replaceAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>replaceAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Boolean.html?is-external=true" title="class or interface in java.lang">Boolean</a>&gt;&nbsp;replaceAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                   <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                            throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously replaces the entry for a key only if currently mapped to a
 given value.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>val</code> - Value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndReplace-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="getAndReplace-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndReplace</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;getAndReplace(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                      <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)
                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>getAndReplace</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="getAndReplaceAsync-java.lang.Object-java.lang.Object-">
<!--   -->
</a><a name="getAndReplaceAsync-K-V-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAndReplaceAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;&nbsp;getAndReplaceAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                   <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&nbsp;val)</pre>
<div class="block">Asynchronously replaces the value for a given key if and only if there is a
 value currently mapped by the key.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key.</dd>
<dd><code>val</code> - Value.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionTimeoutException.html" title="class in org.apache.ignite.transactions">TransactionTimeoutException</a></code> - If operation performs within transaction and timeout occurred.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionRollbackException.html" title="class in org.apache.ignite.transactions">TransactionRollbackException</a></code> - If operation performs within transaction that automatically rolled back.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionHeuristicException.html" title="class in org.apache.ignite.transactions">TransactionHeuristicException</a></code> - If operation performs within transaction that entered an unknown state.</dd>
</dl>
</li>
</ul>
<a name="removeAll-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;removeAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                              throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>removeAll</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="removeAllAsync-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAllAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;removeAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)
                           throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously removes entries for the specified keys.
 <p>
 The order in which the individual entries are removed is undefined.
 <p>
 For every entry in the key set, the following are called:
 <ul>
   <li>any registered <code>CacheEntryRemovedListener</code>s</li>
   <li>if the cache is a write-through cache, the <code>CacheWriter</code></li>
 </ul>
 If the key set is empty, the <code>CacheWriter</code> is not called.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys set.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="removeAll--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;removeAll()</pre>
<div class="block">Removes all of the mappings from this cache.
 <p>
 The order that the individual entries are removed is undefined.
 <p>
 For every mapping that exists the following are called:
 <ul>
   <li>any registered <code>CacheEntryRemovedListener</code>s</li>
   <li>if the cache is a write-through cache, the <code>CacheWriter</code></li>
 </ul>
 If the cache is empty, the <code>CacheWriter</code> is not called.
 <p>
 This operation is not transactional. It calls broadcast closure that
 deletes all primary keys from remote nodes.
 <p>
 This is potentially an expensive operation as listeners are invoked.
 Use <a href="../../../org/apache/ignite/IgniteCache.html#clear--"><code>clear()</code></a> to avoid this.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>removeAll</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <code>Cache.isClosed()</code></dd>
<dd><code>javax.cache.CacheException</code> - if there is a problem during the remove</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/IgniteCache.html#clear--"><code>clear()</code></a>, 
<code>CacheWriter.deleteAll(java.util.Collection&lt;?&gt;)</code></dd>
</dl>
</li>
</ul>
<a name="removeAllAsync--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeAllAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;removeAllAsync()</pre>
<div class="block">Asynchronously removes all of the mappings from this cache.
 <p>
 The order that the individual entries are removed is undefined.
 <p>
 For every mapping that exists the following are called:
 <ul>
   <li>any registered <code>CacheEntryRemovedListener</code>s</li>
   <li>if the cache is a write-through cache, the <code>CacheWriter</code></li>
 </ul>
 If the cache is empty, the <code>CacheWriter</code> is not called.
 <p>
 This is potentially an expensive operation as listeners are invoked.
 Use <a href="../../../org/apache/ignite/IgniteCache.html#clearAsync--"><code>clearAsync()</code></a> to avoid this.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <code>Cache.isClosed()</code></dd>
<dd><code>javax.cache.CacheException</code> - if there is a problem during the remove</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/IgniteCache.html#clearAsync--"><code>clearAsync()</code></a>, 
<code>CacheWriter.deleteAll(java.util.Collection&lt;?&gt;)</code></dd>
</dl>
</li>
</ul>
<a name="clear--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;clear()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>clear</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a name="clearAsync--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;clearAsync()</pre>
<div class="block">Asynchronously clears the contents of the cache, without notifying listeners or
 <code>CacheWriter</code>s.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
</dl>
</li>
</ul>
<a name="clear-java.lang.Object-">
<!--   -->
</a><a name="clear-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clear</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;clear(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</pre>
<div class="block">Clears entry from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s. Entry is cleared only if it is not currently locked,
 and is not participating in a transaction.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key to clear.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <code>Cache.isClosed()</code></dd>
<dd><code>javax.cache.CacheException</code> - if there is a problem during the clear</dd>
</dl>
</li>
</ul>
<a name="clearAsync-java.lang.Object-">
<!--   -->
</a><a name="clearAsync-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;clearAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</pre>
<div class="block">Asynchronously clears entry from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s. Entry is cleared only if it is not currently locked,
 and is not participating in a transaction.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key to clear.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <code>Cache.isClosed()</code></dd>
<dd><code>javax.cache.CacheException</code> - if there is a problem during the clear</dd>
</dl>
</li>
</ul>
<a name="clearAll-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;clearAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Clears entries from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s. Entry is cleared only if it is not currently locked,
 and is not participating in a transaction.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys to clear.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <code>Cache.isClosed()</code></dd>
<dd><code>javax.cache.CacheException</code> - if there is a problem during the clear</dd>
</dl>
</li>
</ul>
<a name="clearAllAsync-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearAllAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a>&gt;&nbsp;clearAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Asynchronously clears entries from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s. Entry is cleared only if it is not currently locked,
 and is not participating in a transaction.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys to clear.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <code>Cache.isClosed()</code></dd>
<dd><code>javax.cache.CacheException</code> - if there is a problem during the clear</dd>
</dl>
</li>
</ul>
<a name="localClear-java.lang.Object-">
<!--   -->
</a><a name="localClear-K-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localClear</h4>
<pre>void&nbsp;localClear(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</pre>
<div class="block">Clears entry from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s. Entry is cleared only if it is not currently locked,
 and is not participating in a transaction.
 <p/>
 Note that this operation is local as it merely clears
 an entry from local cache, it does not remove entries from
 remote caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - Key to clear.</dd>
</dl>
</li>
</ul>
<a name="localClearAll-java.util.Set-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localClearAll</h4>
<pre>void&nbsp;localClearAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys)</pre>
<div class="block">Clears entries from the cache and swap storage, without notifying listeners or
 <code>CacheWriter</code>s. Entry is cleared only if it is not currently locked,
 and is not participating in a transaction.
 <p/>
 Note that this operation is local as it merely clears
 an entry from local cache, it does not remove entries from
 remote caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - Keys to clear.</dd>
</dl>
</li>
</ul>
<a name="invoke-java.lang.Object-javax.cache.processor.EntryProcessor-java.lang.Object:A-">
<!--   -->
</a><a name="invoke-K-javax.cache.processor.EntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invoke</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
&lt;T&gt;&nbsp;T&nbsp;invoke(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                   javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)
                            throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">
 <p>
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>invoke</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="invokeAsync-java.lang.Object-javax.cache.processor.EntryProcessor-java.lang.Object:A-">
<!--   -->
</a><a name="invokeAsync-K-javax.cache.processor.EntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAsync</h4>
<pre>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;T&gt;&nbsp;invokeAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)
                         throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously invokes an <code>EntryProcessor</code> against the <code>Cache.Entry</code> specified by
 the provided key. If an <code>Cache.Entry</code> does not exist for the specified key,
 an attempt is made to load it (if a loader is configured) or a surrogate
 <code>Cache.Entry</code>, consisting of the key with a null value is used instead.
 <p>
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - The key to the entry.</dd>
<dd><code>entryProcessor</code> - The <code>EntryProcessor</code> to invoke.</dd>
<dd><code>arguments</code> - Additional arguments to pass to the <code>EntryProcessor</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="invoke-java.lang.Object-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object:A-">
<!--   -->
</a><a name="invoke-K-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invoke</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
&lt;T&gt;&nbsp;T&nbsp;invoke(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                   <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                   <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)
                            throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the <code>Cache.Entry</code> specified by
 the provided key. If an <code>Cache.Entry</code> does not exist for the specified key,
 an attempt is made to load it (if a loader is configured) or a surrogate
 <code>Cache.Entry</code>, consisting of the key with a null value is used instead.
 <p>
 An instance of entry processor must be stateless as it may be invoked multiple times on primary and
 backup nodes in the cache. It is guaranteed that the value passed to the entry processor will be always
 the same.
 <p>
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - The key to the entry.</dd>
<dd><code>entryProcessor</code> - The <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> to invoke.</dd>
<dd><code>arguments</code> - Additional arguments to pass to the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The result of the processing, if any, defined by the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> implementation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If key or <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> is null</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code></dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
                               runtime-type-checking, and the key or value
                               types are incompatible with those that have been
                               configured for the <code>Cache</code>.</dd>
<dd><code>javax.cache.processor.EntryProcessorException</code> - If an exception is thrown by the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>, a Caching Implementation
                                 must wrap any <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang"><code>Exception</code></a> thrown
                                 wrapped in an <code>EntryProcessorException</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a></dd>
</dl>
</li>
</ul>
<a name="invokeAsync-java.lang.Object-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object:A-">
<!--   -->
</a><a name="invokeAsync-K-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAsync</h4>
<pre>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;T&gt;&nbsp;invokeAsync(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key,
                                <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)
                         throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the <code>Cache.Entry</code> specified by
 the provided key. If an <code>Cache.Entry</code> does not exist for the specified key,
 an attempt is made to load it (if a loader is configured) or a surrogate
 <code>Cache.Entry</code>, consisting of the key with a null value is used instead.
 <p>
 An instance of entry processor must be stateless as it may be invoked multiple times on primary and
 backup nodes in the cache. It is guaranteed that the value passed to the entry processor will be always
 the same.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>key</code> - The key to the entry.</dd>
<dd><code>entryProcessor</code> - The <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> to invoke.</dd>
<dd><code>arguments</code> - Additional arguments to pass to the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If key or <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> is null</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code></dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
                               runtime-type-checking, and the key or value
                               types are incompatible with those that have been
                               configured for the <code>Cache</code>.</dd>
<dd><code>javax.cache.processor.EntryProcessorException</code> - If an exception is thrown by the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>, a Caching Implementation
                                 must wrap any <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang"><code>Exception</code></a> thrown
                                 wrapped in an <code>EntryProcessorException</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a></dd>
</dl>
</li>
</ul>
<a name="invokeAll-java.util.Set-javax.cache.processor.EntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&nbsp;invokeAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
                                                                                         javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                                                                         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                                                                  throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">
 <p>
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>invokeAll</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="invokeAllAsync-java.util.Set-javax.cache.processor.EntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAllAsync</h4>
<pre>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&gt;&nbsp;invokeAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
                                                                                      javax.cache.processor.EntryProcessor&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                                                                      <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                                                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously invokes an <code>EntryProcessor</code> against the set of <code>Cache.Entry</code>s
 specified by the set of keys.
 <p>
 If an <code>Cache.Entry</code> does not exist for the specified key, an attempt is made
 to load it (if a loader is configured) or a surrogate <code>Cache.Entry</code>,
 consisting of the key and a value of null is provided.
 <p>
 The order that the entries for the keys are processed is undefined.
 Implementations may choose to process the entries in any order, including
 concurrently.  Furthermore there is no guarantee implementations will
 use the same <code>EntryProcessor</code> instance to process each entry, as
 the case may be in a non-local cache topology.
 <p>
 The result of executing the <code>EntryProcessor</code> is returned in the future as a
 <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of <code>EntryProcessorResult</code>s, one result per key.  Should the
 <code>EntryProcessor</code> or Caching implementation throw an exception, the
 exception is wrapped and re-thrown when a call to
 <code>EntryProcessorResult.get()</code> is made.
 <p>
 Please refer to documentation for <a href="../../../org/apache/ignite/cache/CacheAtomicityMode.html#ATOMIC"><code>CacheAtomicityMode.ATOMIC</code></a> for information on
 system behavior in crash scenarios for atomic caches.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The set of keys.</dd>
<dd><code>entryProcessor</code> - The <code>EntryProcessor</code> to invoke.</dd>
<dd><code>args</code> - Additional arguments to pass to the <code>EntryProcessor</code>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
</dl>
</li>
</ul>
<a name="invokeAll-java.util.Set-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAll</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&nbsp;invokeAll(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
                                                                                         <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                                                                         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                                                                  throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the set of <code>Cache.Entry</code>s
 specified by the set of keys.
 <p>
 If an <code>Cache.Entry</code> does not exist for the specified key, an attempt is made
 to load it (if a loader is configured) or a surrogate <code>Cache.Entry</code>,
 consisting of the key and a value of null is provided.
 <p>
 The order that the entries for the keys are processed is undefined.
 Implementations may choose to process the entries in any order, including
 concurrently.  Furthermore there is no guarantee implementations will
 use the same <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> instance to process each entry, as
 the case may be in a non-local cache topology.
 <p>
 The result of executing the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> is returned as a
 <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of <code>EntryProcessorResult</code>s, one result per key.  Should the
 <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> or Caching implementation throw an exception, the
 exception is wrapped and re-thrown when a call to
 <code>EntryProcessorResult.get()</code> is made.
 <p>
 An instance of entry processor must be stateless as it may be invoked multiple times on primary and
 backup nodes in the cache. It is guaranteed that the value passed to the entry processor will be always
 the same.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The set of keys for entries to process.</dd>
<dd><code>entryProcessor</code> - The <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> to invoke.</dd>
<dd><code>args</code> - Additional arguments to pass to the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The map of <code>EntryProcessorResult</code>s of the processing per key,
 if any, defined by the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> implementation.  No mappings
 will be returned for <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>s that return a
 <code>null</code> value for a key.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If keys or <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> are {#code null}.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code>.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
                               runtime-type-checking, and the key or value
                               types are incompatible with those that have been
                               configured for the <code>Cache</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a></dd>
</dl>
</li>
</ul>
<a name="invokeAllAsync-java.util.Set-org.apache.ignite.cache.CacheEntryProcessor-java.lang.Object...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invokeAllAsync</h4>
<pre>&lt;T&gt;&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,javax.cache.processor.EntryProcessorResult&lt;T&gt;&gt;&gt;&nbsp;invokeAllAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;? extends <a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&gt;&nbsp;keys,
                                                                                      <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache">CacheEntryProcessor</a>&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>,T&gt;&nbsp;entryProcessor,
                                                                                      <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)
                                                                               throws <a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></pre>
<div class="block">Asynchronously invokes an <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> against the set of <code>Cache.Entry</code>s
 specified by the set of keys.
 <p>
 If an <code>Cache.Entry</code> does not exist for the specified key, an attempt is made
 to load it (if a loader is configured) or a surrogate <code>Cache.Entry</code>,
 consisting of the key and a value of null is provided.
 <p>
 The order that the entries for the keys are processed is undefined.
 Implementations may choose to process the entries in any order, including
 concurrently.  Furthermore there is no guarantee implementations will
 use the same <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> instance to process each entry, as
 the case may be in a non-local cache topology.
 <p>
 The result of executing the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> is returned in the future as a
 <a href="http://docs.oracle.com/javase/8/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of <code>EntryProcessorResult</code>s, one result per key.  Should the
 <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> or Caching implementation throw an exception, the
 exception is wrapped and re-thrown when a call to
 <code>EntryProcessorResult.get()</code> is made.
 <p>
 An instance of entry processor must be stateless as it may be invoked multiple times on primary and
 backup nodes in the cache. It is guaranteed that the value passed to the entry processor will be always
 the same.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>keys</code> - The set of keys for entries to process.</dd>
<dd><code>entryProcessor</code> - The <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> to invoke.</dd>
<dd><code>args</code> - Additional arguments to pass to the <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - If keys or <a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a> are {#code null}.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - If the cache is <code>Cache.isClosed()</code>.</dd>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/ClassCastException.html?is-external=true" title="class or interface in java.lang">ClassCastException</a></code> - If the implementation is configured to perform
                               runtime-type-checking, and the key or value
                               types are incompatible with those that have been
                               configured for the <code>Cache</code>.</dd>
<dd><code><a href="../../../org/apache/ignite/transactions/TransactionException.html" title="class in org.apache.ignite.transactions">TransactionException</a></code> - If operation within transaction is failed.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/cache/CacheEntryProcessor.html" title="interface in org.apache.ignite.cache"><code>CacheEntryProcessor</code></a></dd>
</dl>
</li>
</ul>
<a name="close--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>close</h4>
<pre>void&nbsp;close()</pre>
<div class="block">Closes this cache instance.
 <p>
 For local cache equivalent to <a href="../../../org/apache/ignite/IgniteCache.html#destroy--"><code>destroy()</code></a>.
 For distributed caches, if called on clients, stops client cache, if called on a server node,
 just closes this cache instance and does not destroy cache data.
 <p>
 After cache instance is closed another <code>IgniteCache</code> instance for the same
 cache can be created using <a href="../../../org/apache/ignite/Ignite.html#cache-java.lang.String-"><code>Ignite.cache(String)</code></a> method.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true#close--" title="class or interface in java.lang">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>close</code>&nbsp;in interface&nbsp;<code>javax.cache.Cache&lt;<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>,<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">V</a>&gt;</code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true#close--" title="class or interface in java.io">close</a></code>&nbsp;in interface&nbsp;<code><a href="http://docs.oracle.com/javase/8/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></code></dd>
</dl>
</li>
</ul>
<a name="destroy--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>destroy</h4>
<pre>void&nbsp;destroy()</pre>
<div class="block">Completely deletes the cache with all its data from the system on all cluster nodes.</div>
</li>
</ul>
<a name="rebalance--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rebalance</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;?&gt;&nbsp;rebalance()</pre>
<div class="block">This cache node to re-balance its partitions. This method is usually used when
 <a href="../../../org/apache/ignite/configuration/CacheConfiguration.html#getRebalanceDelay--"><code>CacheConfiguration.getRebalanceDelay()</code></a> configuration parameter has non-zero value.
 When many nodes are started or stopped almost concurrently, it is more efficient to delay
 rebalancing until the node topology is stable to make sure that no redundant re-partitioning
 happens.
 <p>
 In case of<a href="../../../org/apache/ignite/cache/CacheMode.html#PARTITIONED"><code>CacheMode.PARTITIONED</code></a> caches, for better efficiency user should
 usually make sure that new nodes get placed on the same place of consistent hash ring as
 the left nodes, and that nodes are restarted before
 <a href="../../../org/apache/ignite/configuration/CacheConfiguration.html#getRebalanceDelay--"><code>rebalanceDelay</code></a> expires. To place nodes
 on the same place in consistent hash ring, use
 <a href="../../../org/apache/ignite/configuration/IgniteConfiguration.html#setConsistentId-java.io.Serializable-"><code>IgniteConfiguration.setConsistentId(Serializable)</code></a> to make sure that
 a node maps to the same hash ID if re-started.
 <p>
 See <a href="../../../org/apache/ignite/configuration/CacheConfiguration.html#getRebalanceDelay--"><code>CacheConfiguration.getRebalanceDelay()</code></a> for more information on how to configure
 rebalance re-partition delay.
 <p></div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Future that will be completed when rebalancing is finished. Future.get() returns true
      when rebalance was successfully finished.</dd>
</dl>
</li>
</ul>
<a name="indexReadyFuture--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>indexReadyFuture</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a>&lt;?&gt;&nbsp;indexReadyFuture()</pre>
<div class="block">Returns future that will be completed when all indexes for this cache are ready to use.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Future.</dd>
</dl>
</li>
</ul>
<a name="metrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>metrics</h4>
<pre><a href="../../../org/apache/ignite/cache/CacheMetrics.html" title="interface in org.apache.ignite.cache">CacheMetrics</a>&nbsp;metrics()</pre>
<div class="block">Gets whole cluster snapshot metrics (statistics) for this cache.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache metrics.</dd>
</dl>
</li>
</ul>
<a name="metrics-org.apache.ignite.cluster.ClusterGroup-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>metrics</h4>
<pre><a href="../../../org/apache/ignite/cache/CacheMetrics.html" title="interface in org.apache.ignite.cache">CacheMetrics</a>&nbsp;metrics(<a href="../../../org/apache/ignite/cluster/ClusterGroup.html" title="interface in org.apache.ignite.cluster">ClusterGroup</a>&nbsp;grp)</pre>
<div class="block">Gets cluster group snapshot metrics for caches in cluster group.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>grp</code> - Cluster group.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache metrics.</dd>
</dl>
</li>
</ul>
<a name="localMetrics--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localMetrics</h4>
<pre><a href="../../../org/apache/ignite/cache/CacheMetrics.html" title="interface in org.apache.ignite.cache">CacheMetrics</a>&nbsp;localMetrics()</pre>
<div class="block">Gets local snapshot metrics (statistics) for this cache.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cache metrics.</dd>
</dl>
</li>
</ul>
<a name="mxBean--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mxBean</h4>
<pre><a href="../../../org/apache/ignite/mxbean/CacheMetricsMXBean.html" title="interface in org.apache.ignite.mxbean">CacheMetricsMXBean</a>&nbsp;mxBean()</pre>
<div class="block">Gets whole cluster MxBean for this cache.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>MxBean.</dd>
</dl>
</li>
</ul>
<a name="localMxBean--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localMxBean</h4>
<pre><a href="../../../org/apache/ignite/mxbean/CacheMetricsMXBean.html" title="interface in org.apache.ignite.mxbean">CacheMetricsMXBean</a>&nbsp;localMxBean()</pre>
<div class="block">Gets local MxBean for this cache.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>MxBean.</dd>
</dl>
</li>
</ul>
<a name="lostPartitions--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>lostPartitions</h4>
<pre><a href="http://docs.oracle.com/javase/8/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/8/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;lostPartitions()</pre>
<div class="block">Gets a collection of lost partition IDs.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Lost paritions.</dd>
</dl>
</li>
</ul>
<a name="enableStatistics-boolean-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>enableStatistics</h4>
<pre>void&nbsp;enableStatistics(boolean&nbsp;enabled)</pre>
<div class="block">Sets statistics enabled flag cluster wide for this cache.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>enabled</code> - Statistics enabled flag.</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>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<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/IgniteCache.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">Ignite - In-Memory Data Fabric</div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/ignite/IgniteBinary.html" title="interface in org.apache.ignite"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteCacheRestartingException.html" title="class in org.apache.ignite"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/ignite/IgniteCache.html" target="_top">Frames</a></li>
<li><a href="IgniteCache.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All&nbsp;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>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&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>2018 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>                                         </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>2.6.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             July 10 2018                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
