Added: incubator/ignite/site/trunk/jcache/1.0.0/javaodc/javax/cache/Cache.html URL: http://svn.apache.org/viewvc/incubator/ignite/site/trunk/jcache/1.0.0/javaodc/javax/cache/Cache.html?rev=1662900&view=auto ============================================================================== --- incubator/ignite/site/trunk/jcache/1.0.0/javaodc/javax/cache/Cache.html (added) +++ incubator/ignite/site/trunk/jcache/1.0.0/javaodc/javax/cache/Cache.html Sat Feb 28 04:53:18 2015 @@ -0,0 +1,1257 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- NewPage --> +<html lang="en"> +<head> +<!-- Generated by javadoc (version 1.7.0_25) on Fri Mar 28 13:34:25 EST 2014 --> +<meta http-equiv="Content-Type" content="text/html" charset="UTF-8"> +<title>Cache (JSR107 API and SPI 1.0.0 API)</title> +<meta name="date" content="2014-03-28"> +<link rel="stylesheet" type="text/css" href="../../stylesheet.css" title="Style"> +</head> +<body> +<script type="text/javascript"><!-- + if (location.href.indexOf('is-external=true') == -1) { + parent.document.title="Cache (JSR107 API and SPI 1.0.0 API)"; + } +//--> +</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/Cache.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> +<div class="subNav"> +<ul class="navList"> +<li>Prev Class</li> +<li><a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><span class="strong">Next Class</span></a></li> +</ul> +<ul class="navList"> +<li><a href="../../index.html?javax/cache/Cache.html" target="_top">Frames</a></li> +<li><a href="Cache.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: </li> +<li><a href="#nested_class_summary">Nested</a> | </li> +<li>Field | </li> +<li>Constr | </li> +<li><a href="#method_summary">Method</a></li> +</ul> +<ul class="subNavList"> +<li>Detail: </li> +<li>Field | </li> +<li>Constr | </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">javax.cache</div> +<h2 title="Interface Cache" class="title">Interface Cache<K,V></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> - the type of key</dd><dd><code>V</code> - the type of value</dd></dl> +<dl> +<dt>All Superinterfaces:</dt> +<dd><a href="http://download.oracle.com/javase/6/docs/api/java/lang/AutoCloseable.html?is-external=true" title="class or interface in java.lang">AutoCloseable</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a>, <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a><<a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache">Cache.Entry</a><K,V>></dd> +</dl> +<hr> +<br> +<pre>public interface <span class="strong">Cache<K,V></span> +extends <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang">Iterable</a><<a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache">Cache.Entry</a><K,V>>, <a href="http://download.oracle.com/javase/6/docs/api/java/io/Closeable.html?is-external=true" title="class or interface in java.io">Closeable</a></pre> +<div class="block">A <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> is a Map-like data structure that provides temporary storage + of application data. + <p> + Like <a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a>s, <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>s + <ol> + <li>store key-value pairs, each referred to as an <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a></li> + <li>allow use of Java Generics to improve application type-safety</li> + <li>are <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Iterable.html?is-external=true" title="class or interface in java.lang"><code>Iterable</code></a></li> + </ol> + <p> + Unlike <a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a>s, <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>s + <ol> + <li>do not allow null keys or values. Attempts to use <code>null</code> + will result in a <a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang"><code>NullPointerException</code></a></li> + <li>provide the ability to read values from a + <a href="../../javax/cache/integration/CacheLoader.html" title="interface in javax.cache.integration"><code>CacheLoader</code></a> (read-through-caching) + when a value being requested is not in a cache</li> + <li>provide the ability to write values to a + <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a> (write-through-caching) + when a value being created/updated/removed from a cache</li> + <li>provide the ability to observe cache entry changes</li> + <li>may capture and measure operational statistics</li> + </ol> + <p> + A simple example of how to use a cache is: + <pre><code> + String cacheName = "sampleCache"; + CachingProvider provider = Caching.getCachingProvider(); + CacheManager manager = provider.getCacheManager(); + Cache<Integer, Date> cache = manager.getCache(cacheName, Integer.class, + Date.class); + Date value1 = new Date(); + Integer key = 1; + cache.put(key, value1); + Date value2 = cache.get(key); + </code></pre></div> +<dl><dt><span class="strong">Since:</span></dt> + <dd>1.0</dd> +<dt><span class="strong">Author:</span></dt> + <dd>Greg Luck, Yannis Cosmadopoulos, Brian Oliver</dd></dl> +</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> +<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation"> +<caption><span>Nested Classes</span><span class="tabEnd"> </span></caption> +<tr> +<th class="colFirst" scope="col">Modifier and Type</th> +<th class="colLast" scope="col">Interface and Description</th> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>static interface </code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache">Cache.Entry</a><<a href="../../javax/cache/Cache.Entry.html" title="type parameter in Cache.Entry">K</a>,<a href="../../javax/cache/Cache.Entry.html" title="type parameter in Cache.Entry">V</a>></strong></code> +<div class="block">A cache entry (key-value pair).</div> +</td> +</tr> +</table> +</li> +</ul> +<!-- ========== METHOD SUMMARY =========== --> +<ul class="blockList"> +<li class="blockList"><a name="method_summary"> +<!-- --> +</a> +<h3>Method Summary</h3> +<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> +<caption><span>Methods</span><span class="tabEnd"> </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="../../javax/cache/Cache.html#clear()">clear</a></strong>()</code> +<div class="block">Clears the contents of the cache, without notifying listeners or + <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a>s.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#close()">close</a></strong>()</code> +<div class="block">Closing a <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> signals to the <a href="../../javax/cache/CacheManager.html" title="interface in javax.cache"><code>CacheManager</code></a> that produced or + owns the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> that it should no longer be managed.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#containsKey(K)">containsKey</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</code> +<div class="block">Determines if the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> contains an entry for the specified key.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#deregisterCacheEntryListener(javax.cache.configuration.CacheEntryListenerConfiguration)">deregisterCacheEntryListener</a></strong>(<a href="../../javax/cache/configuration/CacheEntryListenerConfiguration.html" title="interface in javax.cache.configuration">CacheEntryListenerConfiguration</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>> cacheEntryListenerConfiguration)</code> +<div class="block">Deregisters a listener, using the + <a href="../../javax/cache/configuration/CacheEntryListenerConfiguration.html" title="interface in javax.cache.configuration"><code>CacheEntryListenerConfiguration</code></a> that was used to register it.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code><a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#get(K)">get</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</code> +<div class="block">Gets an entry from the cache.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getAll(java.util.Set)">getAll</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys)</code> +<div class="block">Gets a collection of entries from the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>, returning them as + <a href="http://download.oracle.com/javase/6/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="altColor"> +<td class="colFirst"><code><a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getAndPut(K, V)">getAndPut</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</code> +<div class="block">Associates the specified value with the specified key in this cache, + returning an existing value if one existed.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getAndRemove(K)">getAndRemove</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</code> +<div class="block">Atomically removes the entry for a key only if currently mapped to some + value.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code><a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getAndReplace(K, V)">getAndReplace</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</code> +<div class="block">Atomically 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="../../javax/cache/CacheManager.html" title="interface in javax.cache">CacheManager</a></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getCacheManager()">getCacheManager</a></strong>()</code> +<div class="block">Gets the <a href="../../javax/cache/CacheManager.html" title="interface in javax.cache"><code>CacheManager</code></a> that owns and manages the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code><C extends <a href="../../javax/cache/configuration/Configuration.html" title="interface in javax.cache.configuration">Configuration</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>>> <br>C</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getConfiguration(java.lang.Class)">getConfiguration</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><C> clazz)</code> +<div class="block">Provides a standard way to access the configuration of a cache using + JCache configuration or additional proprietary configuration.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#getName()">getName</a></strong>()</code> +<div class="block">Return the name of the cache.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code><T> T</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#invoke(K, javax.cache.processor.EntryProcessor, java.lang.Object...)">invoke</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor">EntryProcessor</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>,T> entryProcessor, + <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>... arguments)</code> +<div class="block">Invokes an <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> against the <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a> specified by + the provided key.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><T> <a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/processor/EntryProcessorResult.html" title="interface in javax.cache.processor">EntryProcessorResult</a><T>></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#invokeAll(java.util.Set, javax.cache.processor.EntryProcessor, java.lang.Object...)">invokeAll</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys, + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor">EntryProcessor</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>,T> entryProcessor, + <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>... arguments)</code> +<div class="block">Invokes an <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> against the set of <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a>s + specified by the set of keys.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#isClosed()">isClosed</a></strong>()</code> +<div class="block">Determines whether this Cache instance has been closed.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><a href="http://download.oracle.com/javase/6/docs/api/java/util/Iterator.html?is-external=true" title="class or interface in java.util">Iterator</a><<a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache">Cache.Entry</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>>></code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#iterator()">iterator</a></strong>()</code></td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#loadAll(java.util.Set, boolean, javax.cache.integration.CompletionListener)">loadAll</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys, + boolean replaceExistingValues, + <a href="../../javax/cache/integration/CompletionListener.html" title="interface in javax.cache.integration">CompletionListener</a> completionListener)</code> +<div class="block">Asynchronously loads the specified entries into the cache using the + configured <a href="../../javax/cache/integration/CacheLoader.html" title="interface in javax.cache.integration"><code>CacheLoader</code></a> for the given keys.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#put(K, V)">put</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</code> +<div class="block">Associates the specified value with the specified key in the cache.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#putAll(java.util.Map)">putAll</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>> map)</code> +<div class="block">Copies all of the entries from the specified map to the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#putIfAbsent(K, V)">putIfAbsent</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</code> +<div class="block">Atomically associates the specified key with the given value if it is + not already associated with a value.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#registerCacheEntryListener(javax.cache.configuration.CacheEntryListenerConfiguration)">registerCacheEntryListener</a></strong>(<a href="../../javax/cache/configuration/CacheEntryListenerConfiguration.html" title="interface in javax.cache.configuration">CacheEntryListenerConfiguration</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>> cacheEntryListenerConfiguration)</code> +<div class="block">Registers a <a href="../../javax/cache/event/CacheEntryListener.html" title="interface in javax.cache.event"><code>CacheEntryListener</code></a>.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#remove(K)">remove</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</code> +<div class="block">Removes the mapping for a key from this cache if it is present.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#remove(K, V)">remove</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> oldValue)</code> +<div class="block">Atomically removes the mapping for a key only if currently mapped to the + given value.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>void</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.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="../../javax/cache/Cache.html#removeAll(java.util.Set)">removeAll</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys)</code> +<div class="block">Removes entries for the specified keys.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#replace(K, V)">replace</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</code> +<div class="block">Atomically replaces the entry for a key only if currently mapped to some + value.</div> +</td> +</tr> +<tr class="altColor"> +<td class="colFirst"><code>boolean</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#replace(K, V, V)">replace</a></strong>(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> oldValue, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> newValue)</code> +<div class="block">Atomically replaces the entry for a key only if currently mapped to a + given value.</div> +</td> +</tr> +<tr class="rowColor"> +<td class="colFirst"><code><T> T</code></td> +<td class="colLast"><code><strong><a href="../../javax/cache/Cache.html#unwrap(java.lang.Class)">unwrap</a></strong>(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><T> clazz)</code> +<div class="block">Provides a standard way to access the underlying concrete caching + implementation to provide access to further, proprietary features.</div> +</td> +</tr> +</table> +</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="get(java.lang.Object)"> +<!-- --> +</a><a name="get(K)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>get</h4> +<pre><a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> get(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</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 <a href="../../javax/cache/integration/CacheLoader.html" title="interface in javax.cache.integration"><code>CacheLoader</code></a> + 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://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the key is null</dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem fetching the value</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd></dl> +</li> +</ul> +<a name="getAll(java.util.Set)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getAll</h4> +<pre><a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>> getAll(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys)</pre> +<div class="block">Gets a collection of entries from the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>, returning them as + <a href="http://download.oracle.com/javase/6/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 get for a key would + return null because an entry is missing from the cache, the Cache's + <a href="../../javax/cache/integration/CacheLoader.html" title="interface in javax.cache.integration"><code>CacheLoader</code></a> 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> - 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. Keys not found + in the cache are not in the returned map.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/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 null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem fetching the values</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></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>boolean containsKey(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</pre> +<div class="block">Determines if the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> contains an entry for the specified key. + <p> + More formally, returns <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 whose presence in this cache is to be tested.</dd> +<dt><span class="strong">Returns:</span></dt><dd><tt>true</tt> if this map contains a mapping for the specified key</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - it there is a problem checking the mapping</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true#containsKey(java.lang.Object)" title="class or interface in java.util"><code>Map.containsKey(Object)</code></a></dd></dl> +</li> +</ul> +<a name="loadAll(java.util.Set, boolean, javax.cache.integration.CompletionListener)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>loadAll</h4> +<pre>void loadAll(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys, + boolean replaceExistingValues, + <a href="../../javax/cache/integration/CompletionListener.html" title="interface in javax.cache.integration">CompletionListener</a> completionListener)</pre> +<div class="block">Asynchronously loads the specified entries into the cache using the + configured <a href="../../javax/cache/integration/CacheLoader.html" title="interface in javax.cache.integration"><code>CacheLoader</code></a> for the given keys. + <p> + If an entry for a key already exists in the Cache, a value will be loaded + if and only if <code>replaceExistingValues</code> is true. If no loader + is configured for the cache, no objects will be loaded. If a problem is + encountered during the retrieving or loading of the objects, + an exception is provided to the <a href="../../javax/cache/integration/CompletionListener.html" title="interface in javax.cache.integration"><code>CompletionListener</code></a>. Once the + operation has completed, the specified CompletionListener is notified. + <p> + Implementations may choose to load multiple keys from the provided + <a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util"><code>Set</code></a> in parallel. Iteration however must not occur in parallel, + thus allow for non-thread-safe <a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util"><code>Set</code></a>s to be used. + <p> + The thread on which the completion listener is called is implementation + dependent. An implementation may also choose to serialize calls to + different CompletionListeners rather than use a thread per + CompletionListener.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>keys</code> - the keys to load</dd><dd><code>replaceExistingValues</code> - when true existing values in the Cache will + be replaced by those loaded from a CacheLoader</dd><dd><code>completionListener</code> - the CompletionListener (may be null)</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/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 null.</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - thrown if there is a problem performing the + load. This may also be thrown on calling if + there are insufficient threads available to + perform the load.</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></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>void put(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</pre> +<div class="block">Associates the specified value with the specified key in the cache. + <p> + If the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> 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="../../javax/cache/Cache.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 with which the specified value is to be associated</dd><dd><code>value</code> - value to be associated with the specified key</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null or if value is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem doing the put</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true#put(K, V)" title="class or interface in java.util"><code>Map.put(Object, Object)</code></a>, +<a href="../../javax/cache/Cache.html#getAndPut(K, V)"><code>getAndPut(Object, Object)</code></a>, +<a href="../../javax/cache/Cache.html#getAndReplace(K, V)"><code>getAndReplace(Object, Object)</code></a>, +<a href="../../javax/cache/integration/CacheWriter.html#write(javax.cache.Cache.Entry)"><code>CacheWriter.write(javax.cache.Cache.Entry<? extends K, ? extends V>)</code></a></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="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> getAndPut(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</pre> +<div class="block">Associates the specified value with the specified key in this cache, + returning an existing value if one existed. + <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="../../javax/cache/Cache.html#containsKey(K)"><code>c.containsKey(k)</code></a> would return + <tt>true</tt>.) + <p> + The previous value is returned, or 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 with which the specified value is to be associated</dd><dd><code>value</code> - value to be associated with the specified key</dd> +<dt><span class="strong">Returns:</span></dt><dd>the value associated with the key at the start of the operation or + null if none was associated</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null or if value is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem doing the put</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/Cache.html#put(K, V)"><code>put(Object, Object)</code></a>, +<a href="../../javax/cache/Cache.html#getAndReplace(K, V)"><code>getAndReplace(Object, Object)</code></a>, +<a href="../../javax/cache/integration/CacheWriter.html#write(javax.cache.Cache.Entry)"><code>CacheWriter.write(javax.cache.Cache.Entry<? extends K, ? extends V>)</code></a></dd></dl> +</li> +</ul> +<a name="putAll(java.util.Map)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>putAll</h4> +<pre>void putAll(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>> map)</pre> +<div class="block">Copies all of the entries from the specified map to the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>. + <p> + The effect of this call is equivalent to that of calling + <a href="../../javax/cache/Cache.html#put(K, V)"><code>put(k, v)</code></a> 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> - mappings to be stored in this cache</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if map is null or if map contains null keys + or values.</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem doing the put.</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#writeAll(java.util.Collection)"><code>CacheWriter.writeAll(java.util.Collection<javax.cache.Cache.Entry<? extends K, ? extends V>>)</code></a></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>boolean putIfAbsent(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</pre> +<div class="block">Atomically associates the specified key with the given value if it is + not already associated with a value. + <p> + This is equivalent to: + <pre><code> + if (!cache.containsKey(key)) {} + cache.put(key, value); + return true; + } else { + return false; + } + </code></pre> + except that the action is performed atomically.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - key with which the specified value is to be associated</dd><dd><code>value</code> - value to be associated with the specified key</dd> +<dt><span class="strong">Returns:</span></dt><dd>true if a value was set.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null or value is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem doing the put</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#write(javax.cache.Cache.Entry)"><code>CacheWriter.write(javax.cache.Cache.Entry<? extends K, ? extends V>)</code></a></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>boolean remove(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</pre> +<div class="block">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>Returns <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 + call returns.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - key whose mapping is to be removed from the cache</dd> +<dt><span class="strong">Returns:</span></dt><dd>returns false if there was no matching key</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem doing the remove</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#delete(java.lang.Object)"><code>CacheWriter.delete(java.lang.Object)</code></a></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>boolean remove(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> oldValue)</pre> +<div class="block">Atomically removes the mapping for a key only if currently mapped to the + given value. + <p> + This is equivalent to: + <pre><code> + if (cache.containsKey(key) && equals(cache.get(key), oldValue) { + cache.remove(key); + return true; + } else { + return false; + } + </code></pre> + except that the action is performed atomically.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - key whose mapping is to be removed from the cache</dd><dd><code>oldValue</code> - value expected to be associated with the specified key</dd> +<dt><span class="strong">Returns:</span></dt><dd>returns false if there was no matching key</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem doing the remove</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#delete(java.lang.Object)"><code>CacheWriter.delete(java.lang.Object)</code></a></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="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> getAndRemove(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key)</pre> +<div class="block">Atomically removes the entry for a key only if currently mapped to some + value. + <p> + This is equivalent to: + <pre><code> + if (cache.containsKey(key)) { + V oldValue = cache.get(key); + cache.remove(key); + return oldValue; + } else { + return null; + } + </code></pre> + except that the action is performed atomically.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - key with which the specified value is associated</dd> +<dt><span class="strong">Returns:</span></dt><dd>the value if one existed or null if no mapping existed for this key</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if the specified key or value is null.</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the remove</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#delete(java.lang.Object)"><code>CacheWriter.delete(java.lang.Object)</code></a></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>boolean replace(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> oldValue, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> newValue)</pre> +<div class="block">Atomically replaces the entry for a key only if currently mapped to a + given value. + <p> + This is equivalent to: + <pre><code> + if (cache.containsKey(key) && equals(cache.get(key), oldValue)) { + cache.put(key, newValue); + return true; + } else { + return false; + } + </code></pre> + except that the action is performed atomically.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - key with which the specified value is associated</dd><dd><code>oldValue</code> - value expected to be associated with the specified key</dd><dd><code>newValue</code> - value to be associated with the specified key</dd> +<dt><span class="strong">Returns:</span></dt><dd><tt>true</tt> if the value was replaced</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null or if the values are null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the replace</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#write(javax.cache.Cache.Entry)"><code>CacheWriter.write(javax.cache.Cache.Entry<? extends K, ? extends V>)</code></a></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>boolean replace(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</pre> +<div class="block">Atomically replaces the entry for a key only if currently mapped to some + value. + <p> + This is equivalent to + <pre><code> + if (cache.containsKey(key)) { + cache.put(key, value); + return true; + } else { + return false; + }</code></pre> + except that the action is performed atomically.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - the key with which the specified value is associated</dd><dd><code>value</code> - the value to be associated with the specified key</dd> +<dt><span class="strong">Returns:</span></dt><dd><tt>true</tt> if the value was replaced</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null or if value is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the replace</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/Cache.html#getAndReplace(K, V)"><code>getAndReplace(Object, Object)</code></a>, +<a href="../../javax/cache/integration/CacheWriter.html#write(javax.cache.Cache.Entry)"><code>CacheWriter.write(javax.cache.Cache.Entry<? extends K, ? extends V>)</code></a></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="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> getAndReplace(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a> value)</pre> +<div class="block">Atomically replaces the value for a given key if and only if there is a + value currently mapped by the key. + <p> + This is equivalent to + <pre><code> + if (cache.containsKey(key)) { + V oldValue = cache.get(key); + cache.put(key, value); + return oldValue; + } else { + return null; + } + </code></pre> + except that the action is performed atomically.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>key</code> - key with which the specified value is associated</dd><dd><code>value</code> - value to be associated with the specified key</dd> +<dt><span class="strong">Returns:</span></dt><dd>the previous value associated with the specified key, or + <tt>null</tt> if there was no mapping for the key.</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key is null or if value is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the replace</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="http://download.oracle.com/javase/6/docs/api/java/util/concurrent/ConcurrentMap.html?is-external=true#replace(K, V)" title="class or interface in java.util.concurrent"><code>ConcurrentMap.replace(Object, Object)</code></a>, +<a href="../../javax/cache/integration/CacheWriter.html#write(javax.cache.Cache.Entry)"><code>CacheWriter.write(javax.cache.Cache.Entry<? extends K, ? extends V>)</code></a></dd></dl> +</li> +</ul> +<a name="removeAll(java.util.Set)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>removeAll</h4> +<pre>void removeAll(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys)</pre> +<div class="block">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 <a href="../../javax/cache/event/CacheEntryRemovedListener.html" title="interface in javax.cache.event"><code>CacheEntryRemovedListener</code></a>s</li> + <li>if the cache is a write-through cache, the <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a></li> + </ul> + If the key set is empty, the <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a> is not called.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>keys</code> - the keys to remove</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/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 it contains a null key</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the remove</dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/integration/CacheWriter.html#deleteAll(java.util.Collection)"><code>CacheWriter.deleteAll(java.util.Collection<?>)</code></a></dd></dl> +</li> +</ul> +<a name="removeAll()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>removeAll</h4> +<pre>void 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 <a href="../../javax/cache/event/CacheEntryRemovedListener.html" title="interface in javax.cache.event"><code>CacheEntryRemovedListener</code></a>s</li> + <li>if the cache is a write-through cache, the <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a></li> + </ul> + If the cache is empty, the <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a> is not called. + <p> + This is potentially an expensive operation as listeners are invoked. + Use <a href="../../javax/cache/Cache.html#clear()"><code>clear()</code></a> to avoid this.</div> +<dl><dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the remove</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/Cache.html#clear()"><code>clear()</code></a>, +<a href="../../javax/cache/integration/CacheWriter.html#deleteAll(java.util.Collection)"><code>CacheWriter.deleteAll(java.util.Collection<?>)</code></a></dd></dl> +</li> +</ul> +<a name="clear()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>clear</h4> +<pre>void clear()</pre> +<div class="block">Clears the contents of the cache, without notifying listeners or + <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a>s.</div> +<dl><dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="../../javax/cache/CacheException.html" title="class in javax.cache">CacheException</a></code> - if there is a problem during the clear</dd></dl> +</li> +</ul> +<a name="getConfiguration(java.lang.Class)"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getConfiguration</h4> +<pre><C extends <a href="../../javax/cache/configuration/Configuration.html" title="interface in javax.cache.configuration">Configuration</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>>> C getConfiguration(<a href="http://download.oracle.com/javase/6/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><C> clazz)</pre> +<div class="block">Provides a standard way to access the configuration of a cache using + JCache configuration or additional proprietary configuration. + <p> + The returned value must be immutable. + <p> + If the provider's implementation does not support the specified class, + the <a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang"><code>IllegalArgumentException</code></a> is thrown.</div> +<dl><dt><span class="strong">Parameters:</span></dt><dd><code>clazz</code> - the configuration interface or class to return. This includes + <a href="../../javax/cache/configuration/Configuration.html" title="interface in javax.cache.configuration"><code>Configuration</code></a>.class and + <a href="../../javax/cache/configuration/CompleteConfiguration.html" title="interface in javax.cache.configuration"><code>CompleteConfiguration</code></a>s.</dd> +<dt><span class="strong">Returns:</span></dt><dd>the requested implementation of <a href="../../javax/cache/configuration/Configuration.html" title="interface in javax.cache.configuration"><code>Configuration</code></a></dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - if the caching provider doesn't support + the specified class.</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><T> T invoke(<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a> key, + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor">EntryProcessor</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>,T> entryProcessor, + <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>... arguments) + throws <a href="../../javax/cache/processor/EntryProcessorException.html" title="class in javax.cache.processor">EntryProcessorException</a></pre> +<div class="block">Invokes an <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> against the <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a> specified by + the provided key. If an <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a> does not exist for the specified key, + an attempt is made to load it (if a loader is configured) or a surrogate + <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a>, consisting of the key with a null value is used instead. + <p></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="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> to invoke</dd><dd><code>arguments</code> - additional arguments to pass to the + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a></dd> +<dt><span class="strong">Returns:</span></dt><dd>the result of the processing, if any, defined by the + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> implementation</dd> +<dt><span class="strong">Throws:</span></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if key or <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> is null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd> +<dd><code><a href="../../javax/cache/processor/EntryProcessorException.html" title="class in javax.cache.processor">EntryProcessorException</a></code> - if an exception is thrown by the <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a>, a Caching Implementation + must wrap any <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang"><code>Exception</code></a> thrown + wrapped in an <a href="../../javax/cache/processor/EntryProcessorException.html" title="class in javax.cache.processor"><code>EntryProcessorException</code></a>.</dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</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><T> <a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/processor/EntryProcessorResult.html" title="interface in javax.cache.processor">EntryProcessorResult</a><T>> invokeAll(<a href="http://download.oracle.com/javase/6/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a><? extends <a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>> keys, + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor">EntryProcessor</a><<a href="../../javax/cache/Cache.html" title="type parameter in Cache">K</a>,<a href="../../javax/cache/Cache.html" title="type parameter in Cache">V</a>,T> entryProcessor, + <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>... arguments)</pre> +<div class="block">Invokes an <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> against the set of <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a>s + specified by the set of keys. + <p> + If an <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a> does not exist for the specified key, an attempt is made + to load it (if a loader is configured) or a surrogate <a href="../../javax/cache/Cache.Entry.html" title="interface in javax.cache"><code>Cache.Entry</code></a>, + 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="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</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="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> is returned as a + <a href="http://download.oracle.com/javase/6/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util"><code>Map</code></a> of <a href="../../javax/cache/processor/EntryProcessorResult.html" title="interface in javax.cache.processor"><code>EntryProcessorResult</code></a>s, one result per key. Should the + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> or Caching implementation throw an exception, the + exception is wrapped and re-thrown when a call to + <a href="../../javax/cache/processor/EntryProcessorResult.html#get()"><code>EntryProcessorResult.get()</code></a> is made.</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="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> to invoke</dd><dd><code>arguments</code> - additional arguments to pass to the + <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a></dd> +<dt><span class="strong">Returns:</span></dt><dd>the map of <a href="../../javax/cache/processor/EntryProcessorResult.html" title="interface in javax.cache.processor"><code>EntryProcessorResult</code></a>s of the processing per key, + if any, defined by the <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> implementation. No mappings + will be returned for <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</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://download.oracle.com/javase/6/docs/api/java/lang/NullPointerException.html?is-external=true" title="class or interface in java.lang">NullPointerException</a></code> - if keys or <a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a> are null</dd> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang">IllegalStateException</a></code> - if the cache is <a href="../../javax/cache/Cache.html#isClosed()"><code>isClosed()</code></a></dd> +<dd><code><a href="http://download.oracle.com/javase/6/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 <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a></dd><dt><span class="strong">See Also:</span></dt><dd><a href="../../javax/cache/processor/EntryProcessor.html" title="interface in javax.cache.processor"><code>EntryProcessor</code></a></dd></dl> +</li> +</ul> +<a name="getName()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getName</h4> +<pre><a href="http://download.oracle.com/javase/6/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> getName()</pre> +<div class="block">Return the name of the cache.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the name of the cache.</dd></dl> +</li> +</ul> +<a name="getCacheManager()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>getCacheManager</h4> +<pre><a href="../../javax/cache/CacheManager.html" title="interface in javax.cache">CacheManager</a> getCacheManager()</pre> +<div class="block">Gets the <a href="../../javax/cache/CacheManager.html" title="interface in javax.cache"><code>CacheManager</code></a> that owns and manages the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a>.</div> +<dl><dt><span class="strong">Returns:</span></dt><dd>the manager or <code>null</code> if the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> is not + managed</dd></dl> +</li> +</ul> +<a name="close()"> +<!-- --> +</a> +<ul class="blockList"> +<li class="blockList"> +<h4>close</h4> +<pre>void close()</pre> +<div class="block">Closing a <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> signals to the <a href="../../javax/cache/CacheManager.html" title="interface in javax.cache"><code>CacheManager</code></a> that produced or + owns the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> that it should no longer be managed. At this + point in time the <a href="../../javax/cache/CacheManager.html" title="interface in javax.cache"><code>CacheManager</code></a>: + <ul> + <li>must close and release all resources being coordinated on behalf of the + Cache by the <a href="../../javax/cache/CacheManager.html" title="interface in javax.cache"><code>CacheManager</code></a>. This includes calling the <code>close + </code> method on configured <a href="../../javax/cache/integration/CacheLoader.html" title="interface in javax.cache.integration"><code>CacheLoader</code></a>, + <a href="../../javax/cache/integration/CacheWriter.html" title="interface in javax.cache.integration"><code>CacheWriter</code></a>, registered <a href="../../javax/cache/event/CacheEntryListener.html" title="interface in javax.cache.event"><code>CacheEntryListener</code></a>s and + <a href="../../javax/cache/expiry/ExpiryPolicy.html" title="interface in javax.cache.expiry"><code>ExpiryPolicy</code></a> instances that implement the java.io.Closeable + interface. + <li>prevent events being delivered to configured <a href="../../javax/cache/event/CacheEntryListener.html" title="interface in javax.cache.event"><code>CacheEntryListener</code></a>s + registered on the <a href="../../javax/cache/Cache.html" title="interface in javax.cache"><code>Cache</code></a> + </li> + <li>not return the name of the Cache when the CacheManager getCacheNames() + method is called</li> + </ul> + Once closed any attempt to use an operational method on a Cache will throw an + <a href="http://download.oracle.com/javase/6/docs/api/java/lang/IllegalStateException.html?is-external=true" title="class or interface in java.lang"><code>IllegalStateException</code></a>.</div> +<dl> +<dt><strong>Specified by:</strong></dt> +<dd><code><a href="http://download.oracle.com/javase/6/docs/api/java/lang/AutoCloseable.html?is-external=true#close()" title="class or interface in java.lang">close</a></code> in interface <code><a href="http://download.oracle.com/javase/6/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>
[... 184 lines stripped ...]
