<!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.1.0/javadoc/org/apache/ignite/IgniteCache.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (version 1.7.0_80) on Thu Jul 20 19:37:38 UTC 2017 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IgniteCache (Ignite 2.1.0)</title>
<meta name="date" content="2017-07-20">
<link rel="stylesheet" type="text/css" href="../../../javadoc.css" title="Style">

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-61232409-1', 'auto');
  ga('send', 'pageview');

</script></head>
<body>
<script type="text/javascript"><!--
    if (location.href.indexOf('is-external=true') == -1) {
        parent.document.title="IgniteCache (Ignite 2.1.0)";
    }
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!--   -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/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"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/ignite/IgniteBinary.html" title="interface in org.apache.ignite"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteCacheRestartingException.html" title="class in org.apache.ignite"><span class="strong">Next 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 Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>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="strong">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/7/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/7/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/7/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="strong">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,%20java.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,%20org.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,%20org.apache.ignite.cache.CacheEntryProcessor,%20java.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="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#clear()">clear</a></strong>()</code></td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#clear(K)">clear</a></strong>(<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 class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#clearAll(java.util.Set)">clearAll</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#clearAllAsync(java.util.Set)">clearAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#clearAsync()">clearAsync</a></strong>()</code>
<div class="block">Asynchronously clears the contents of the cache, without notifying listeners or
 <code>CacheWriter</code>s.</div>
</td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#clearAsync(K)">clearAsync</a></strong>(<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 class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#close()">close</a></strong>()</code>
<div class="block">Closes this cache instance.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#containsKey(K)">containsKey</a></strong>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#containsKeyAsync(K)">containsKeyAsync</a></strong>(<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 class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#containsKeys(java.util.Set)">containsKeys</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#containsKeysAsync(java.util.Set)">containsKeysAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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 class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#destroy()">destroy</a></strong>()</code>
<div class="block">Completely deletes the cache with all its data from the system on all cluster nodes.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#get(K)">get</a></strong>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAll(java.util.Set)">getAll</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAllAsync(java.util.Set)">getAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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/7/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 class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAllOutTx(java.util.Set)">getAllOutTx</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAllOutTxAsync(java.util.Set)">getAllOutTxAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndPut(K,%20V)">getAndPut</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndPutAsync(K,%20V)">getAndPutAsync</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndPutIfAbsent(K,%20V)">getAndPutIfAbsent</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndPutIfAbsentAsync(K,%20V)">getAndPutIfAbsentAsync</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndRemove(K)">getAndRemove</a></strong>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndRemoveAsync(K)">getAndRemoveAsync</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndReplace(K,%20V)">getAndReplace</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAndReplaceAsync(K,%20V)">getAndReplaceAsync</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getAsync(K)">getAsync</a></strong>(<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 class="altColor">
<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;&nbsp;<br>C</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#getConfiguration(java.lang.Class)">getConfiguration</a></strong>(<a href="http://docs.oracle.com/javase/7/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 class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="../../../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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getEntries(java.util.Set)">getEntries</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getEntriesAsync(java.util.Set)">getEntriesAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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 class="rowColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getEntry(K)">getEntry</a></strong>(<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 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/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#getEntryAsync(K)">getEntryAsync</a></strong>(<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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#indexReadyFuture()">indexReadyFuture</a></strong>()</code>
<div class="block">Returns future that will be completed when all indexes for this cache are ready to use.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#invoke(K,%20org.apache.ignite.cache.CacheEntryProcessor,%20java.lang.Object...)">invoke</a></strong>(<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/7/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 class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;T</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#invoke(K,%20javax.cache.processor.EntryProcessor,%20java.lang.Object...)">invoke</a></strong>(<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/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;arguments)</code></td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAll(java.util.Map,%20java.lang.Object...)">invokeAll</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAll(java.util.Set,%20org.apache.ignite.cache.CacheEntryProcessor,%20java.lang.Object...)">invokeAll</a></strong>(<a href="http://docs.oracle.com/javase/7/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/7/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 class="altColor">
<td class="colFirst"><code>&lt;T&gt;&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAll(java.util.Set,%20javax.cache.processor.EntryProcessor,%20java.lang.Object...)">invokeAll</a></strong>(<a href="http://docs.oracle.com/javase/7/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/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>...&nbsp;args)</code></td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAllAsync(java.util.Map,%20java.lang.Object...)">invokeAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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/7/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.Set,%20javax.cache.processor.EntryProcessor,%20java.lang.Object...)"><code>invokeAll(Set, EntryProcessor, Object...)</code></a> method.</div>
</td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAllAsync(java.util.Set,%20org.apache.ignite.cache.CacheEntryProcessor,%20java.lang.Object...)">invokeAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAllAsync(java.util.Set,%20javax.cache.processor.EntryProcessor,%20java.lang.Object...)">invokeAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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/7/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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAsync(K,%20org.apache.ignite.cache.CacheEntryProcessor,%20java.lang.Object...)">invokeAsync</a></strong>(<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/7/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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#invokeAsync(K,%20javax.cache.processor.EntryProcessor,%20java.lang.Object...)">invokeAsync</a></strong>(<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/7/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 class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#isLocalLocked(K,%20boolean)">isLocalLocked</a></strong>(<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 class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#loadCache(org.apache.ignite.lang.IgniteBiPredicate,%20java.lang.Object...)">loadCache</a></strong>(<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/7/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,%20java.lang.Object...)"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
</td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#loadCacheAsync(org.apache.ignite.lang.IgniteBiPredicate,%20java.lang.Object...)">loadCacheAsync</a></strong>(<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/7/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,%20java.lang.Object...)"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localClear(K)">localClear</a></strong>(<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 class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localClearAll(java.util.Set)">localClearAll</a></strong>(<a href="http://docs.oracle.com/javase/7/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 class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#localEntries(org.apache.ignite.cache.CachePeekMode...)">localEntries</a></strong>(<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 class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localEvict(java.util.Collection)">localEvict</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? 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 class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localLoadCache(org.apache.ignite.lang.IgniteBiPredicate,%20java.lang.Object...)">localLoadCache</a></strong>(<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/7/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,%20java.lang.Object...)"><code>CacheStore.loadCache(IgniteBiInClosure,Object...)</code></a> method
 to load state from the underlying persistent storage.</div>
</td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#localLoadCacheAsync(org.apache.ignite.lang.IgniteBiPredicate,%20java.lang.Object...)">localLoadCacheAsync</a></strong>(<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/7/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,%20java.lang.Object...)"><code>CacheStore.loadCache(IgniteBiInClosure,Object...)</code></a> method.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#localMetrics()">localMetrics</a></strong>()</code>
<div class="block">Gets local snapshot metrics (statistics) for this cache.</div>
</td>
</tr>
<tr class="altColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#localMxBean()">localMxBean</a></strong>()</code>
<div class="block">Gets local MxBean for this cache.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#localPeek(K,%20org.apache.ignite.cache.CachePeekMode...)">localPeek</a></strong>(<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 class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localSize(org.apache.ignite.cache.CachePeekMode...)">localSize</a></strong>(<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 class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localSizeLong(org.apache.ignite.cache.CachePeekMode...)">localSizeLong</a></strong>(<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 class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#localSizeLong(int,%20org.apache.ignite.cache.CachePeekMode...)">localSizeLong</a></strong>(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 class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#lock(K)">lock</a></strong>(<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/7/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 class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#lockAll(java.util.Collection)">lockAll</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? 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/7/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 class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#lostPartitions()">lostPartitions</a></strong>()</code>
<div class="block">Gets a collection of lost partition IDs.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#metrics()">metrics</a></strong>()</code>
<div class="block">Gets whole cluster snapshot metrics (statistics) for this cache.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#metrics(org.apache.ignite.cluster.ClusterGroup)">metrics</a></strong>(<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 class="altColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#mxBean()">mxBean</a></strong>()</code>
<div class="block">Gets whole cluster MxBean for this cache.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#put(K,%20V)">put</a></strong>(<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 class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#putAll(java.util.Map)">putAll</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#putAllAsync(java.util.Map)">putAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#putAsync(K,%20V)">putAsync</a></strong>(<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 class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#putIfAbsent(K,%20V)">putIfAbsent</a></strong>(<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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#putIfAbsentAsync(K,%20V)">putIfAbsentAsync</a></strong>(<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 class="rowColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#query(org.apache.ignite.cache.query.Query)">query</a></strong>(<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 class="altColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#query(org.apache.ignite.cache.query.Query,%20org.apache.ignite.lang.IgniteClosure)">query</a></strong>(<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 class="rowColor">
<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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#query(org.apache.ignite.cache.query.SqlFieldsQuery)">query</a></strong>(<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 class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;? 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#queryDetailMetrics()">queryDetailMetrics</a></strong>()</code>
<div class="block">Gets query detail metrics.</div>
</td>
</tr>
<tr class="rowColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#queryMetrics()">queryMetrics</a></strong>()</code>
<div class="block">Gets query metrics.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#rebalance()">rebalance</a></strong>()</code>
<div class="block">This cache node to re-balance its partitions.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#remove(K)">remove</a></strong>(<a href="../../../org/apache/ignite/IgniteCache.html" title="type parameter in IgniteCache">K</a>&nbsp;key)</code></td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#remove(K,%20V)">remove</a></strong>(<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></td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#removeAll()">removeAll</a></strong>()</code>
<div class="block">Removes all of the mappings from this cache.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#removeAll(java.util.Set)">removeAll</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#removeAllAsync()">removeAllAsync</a></strong>()</code>
<div class="block">Asynchronously removes all of the mappings from this cache.</div>
</td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#removeAllAsync(java.util.Set)">removeAllAsync</a></strong>(<a href="http://docs.oracle.com/javase/7/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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#removeAsync(K)">removeAsync</a></strong>(<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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#removeAsync(K,%20V)">removeAsync</a></strong>(<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 class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#replace(K,%20V)">replace</a></strong>(<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 class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#replace(K,%20V,%20V)">replace</a></strong>(<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></td>
</tr>
<tr 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#replaceAsync(K,%20V)">replaceAsync</a></strong>(<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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#replaceAsync(K,%20V,%20V)">replaceAsync</a></strong>(<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,%20V,%20V)"><code>replace(Object, Object, Object)</code></a>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#resetQueryDetailMetrics()">resetQueryDetailMetrics</a></strong>()</code>
<div class="block">Reset query detail metrics.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#resetQueryMetrics()">resetQueryMetrics</a></strong>()</code>
<div class="block">Reset query metrics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#size(org.apache.ignite.cache.CachePeekMode...)">size</a></strong>(<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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#sizeAsync(org.apache.ignite.cache.CachePeekMode...)">sizeAsync</a></strong>(<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 class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#sizeLong(org.apache.ignite.cache.CachePeekMode...)">sizeLong</a></strong>(<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 class="altColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteCache.html#sizeLong(int,%20org.apache.ignite.cache.CachePeekMode...)">sizeLong</a></strong>(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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#sizeLongAsync(org.apache.ignite.cache.CachePeekMode...)">sizeLongAsync</a></strong>(<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 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/7/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><strong><a href="../../../org/apache/ignite/IgniteCache.html#sizeLongAsync(int,%20org.apache.ignite.cache.CachePeekMode...)">sizeLongAsync</a></strong>(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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#withAsync()">withAsync</a></strong>()</code>
<div class="block"><strong>Deprecated.</strong>&nbsp;</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#withExpiryPolicy(javax.cache.expiry.ExpiryPolicy)">withExpiryPolicy</a></strong>(javax.cache.expiry.ExpiryPolicy&nbsp;plc)</code>
<div class="block">Returns cache with the specified expired policy set.</div>
</td>
</tr>
<tr class="rowColor">
<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><strong><a href="../../../org/apache/ignite/IgniteCache.html#withKeepBinary()">withKeepBinary</a></strong>()</code>
<div class="block">Returns cache that will operate with binary objects.</div>
</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#withNoRetries()">withNoRetries</a></strong>()</code>&nbsp;</td>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#withPartitionRecover()">withPartitionRecover</a></strong>()</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 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><strong><a href="../../../org/apache/ignite/IgniteCache.html#withSkipStore()">withSkipStore</a></strong>()</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_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/7/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="strong">Deprecated.</span>&nbsp;</div>
<div class="block">Gets instance of this component with asynchronous mode enabled.</div>
<dl>
<dt><strong>Specified by:</strong></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="strong">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/7/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><strong>Specified by:</strong></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="strong">Parameters:</span></dt><dd><code>plc</code> - Expire policy to use.</dd>
<dt><span class="strong">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="strong">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="strong">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="strong">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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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/7/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="strong">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/7/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,%20java.lang.Object...)"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
<dl><dt><span class="strong">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,%20java.lang.Object...)"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="strong">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/7/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/7/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,%20java.lang.Object...)"><code>localLoadCache(IgniteBiPredicate, Object...)</code></a> on all cache nodes.</div>
<dl><dt><span class="strong">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,%20java.lang.Object...)"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the cache loading.</dd>
<dt><span class="strong">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/7/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,%20java.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="strong">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,%20java.lang.Object...)"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="strong">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/7/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/7/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,%20java.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="strong">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,%20java.lang.Object...)"><code>CacheStore.loadCache(IgniteBiInClosure, Object...)</code></a> method.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the cache loading.</dd>
<dt><span class="strong">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,%20V)"><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="strong">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="strong">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="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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,%20V)"><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="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - Key for lock.</dd>
<dt><span class="strong">Returns:</span></dt><dd>New lock instance associated with passed key.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="http://docs.oracle.com/javase/7/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/7/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#tryLock(long,%20java.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/7/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/7/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/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Keys for lock.</dd>
<dt><span class="strong">Returns:</span></dt><dd>New lock instance associated with passed key.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="http://docs.oracle.com/javase/7/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/7/docs/api/java/util/concurrent/locks/Lock.html?is-external=true#tryLock(long,%20java.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="strong">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="strong">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="strong">Parameters:</span></dt><dd><code>qry</code> - Query.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Cursor.</dd><dt><span class="strong">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/7/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="strong">Parameters:</span></dt><dd><code>qry</code> - SqlFieldsQuery.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Cursor.</dd><dt><span class="strong">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/7/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="strong">Parameters:</span></dt><dd><code>qry</code> - Query.</dd><dd><code>transformer</code> - Transformer.</dd>
<dt><span class="strong">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/7/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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Peek modes.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Iterable over local cache entries.</dd>
<dt><span class="strong">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="strong">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/7/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="strong">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/7/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="strong">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 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="strong">Parameters:</span></dt><dd><code>key</code> - Entry key.</dd><dd><code>peekModes</code> - Peek modes.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Peeked value, or <code>null</code> if not found.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Cache size across all nodes.</dd>
<dt><span class="strong">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/7/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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Cache size across all nodes.</dd>
<dt><span class="strong">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/7/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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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="strong">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="strong">Returns:</span></dt><dd>Partition cache size across all nodes.</dd>
<dt><span class="strong">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/7/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="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="strong">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="strong">Parameters:</span></dt><dd><code>peekModes</code> - Optional peek modes. If not provided, then total cache size is returned.</dd>
<dt><span class="strong">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="strong">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="strong">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/7/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/7/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/7/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>
<dl><dt><span class="strong">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="strong">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="strong">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/7/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/7/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/7/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.Set,%20javax.cache.processor.EntryProcessor,%20java.lang.Object...)"><code>invokeAll(Set, EntryProcessor, Object...)</code></a> method.</div>
<dl><dt><span class="strong">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="strong">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,%20java.lang.Object...)"><code>invokeAll(Map, Object...)</code></a>.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd>
<dt><span class="strong">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="strong">Parameters:</span></dt><dd><code>key</code> - The key whose associated value is to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>The element, or null, if it does not exist.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - The key whose associated value is to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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/7/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><strong>Specified by:</strong></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="strong">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/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Keys set.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="strong">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="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="strong">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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - The keys whose associated values are to be returned.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Key whose presence in this cache is to be tested.</dd>
<dt><span class="strong">Returns:</span></dt><dd><code>True</code> if this cache contains a mapping for the specified keys.</dd>
<dt><span class="strong">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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Key whose presence in this cache is to be tested.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd><dd><code>val</code> - Value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd><dd><code>val</code> - Value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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/7/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><strong>Specified by:</strong></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="strong">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/7/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/7/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,%20V)"><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="strong">Parameters:</span></dt><dd><code>map</code> - Map containing keys and values to put into the cache.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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>
<dl>
<dt><strong>Specified by:</strong></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="strong">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/7/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.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd><dd><code>val</code> - Value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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>
<dl>
<dt><strong>Specified by:</strong></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="strong">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/7/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.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd><dd><code>oldVal</code> - Old value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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>
<dl>
<dt><strong>Specified by:</strong></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="strong">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/7/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,%20V,%20V)"><code>replace(Object, Object, Object)</code></a>.</div>
<dl><dt><span class="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd><dd><code>val</code> - Value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">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="strong">Parameters:</span></dt><dd><code>key</code> - Key.</dd><dd><code>val</code> - Value.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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/7/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><strong>Specified by:</strong></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="strong">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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Keys set.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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><strong>Specified by:</strong></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="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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="strong">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/7/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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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="strong">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><strong>Specified by:</strong></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/7/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="strong">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="strong">Parameters:</span></dt><dd><code>key</code> - Key to clear.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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="strong">Parameters:</span></dt><dd><code>key</code> - Key to clear.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Keys to clear.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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="strong">Parameters:</span></dt><dd><code>keys</code> - Keys to clear.</dd>
<dt><span class="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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="strong">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/7/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="strong">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 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/7/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>
<dl>
<dt><strong>Specified by:</strong></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="strong">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 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/7/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.</div>
<dl><dt><span class="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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 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/7/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.</div>
<dl><dt><span class="strong">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="strong">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="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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="strong">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 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/7/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="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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/7/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="strong">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/7/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/7/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/7/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>
<dl>
<dt><strong>Specified by:</strong></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="strong">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/7/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/7/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/7/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/7/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.</div>
<dl><dt><span class="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">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/7/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/7/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/7/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/7/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="strong">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="strong">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="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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="strong">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/7/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/7/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/7/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/7/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="strong">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="strong">Returns:</span></dt><dd>a Future representing pending completion of the operation.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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/7/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="strong">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><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a></code></dd>
<dt><strong>Specified by:</strong></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><strong>Specified by:</strong></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/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/7/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="strong">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="strong">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="strong">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="strong">Parameters:</span></dt><dd><code>grp</code> - Cluster group.</dd>
<dt><span class="strong">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="strong">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="strong">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="strong">Returns:</span></dt><dd>MxBean.</dd></dl>
</li>
</ul>
<a name="lostPartitions()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>lostPartitions</h4>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/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="strong">Returns:</span></dt><dd>Lost paritions.</dd></dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!--   -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/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"><em>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/ignite/IgniteBinary.html" title="interface in org.apache.ignite"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteCacheRestartingException.html" title="class in org.apache.ignite"><span class="strong">Next 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 Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>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>2017 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.1.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             July 20 2017                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
