<!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/jcache/1.0.0/javadoc/javax/cache/event/CacheEntryListener.html" />
<!-- 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>CacheEntryListener (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">

<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="CacheEntryListener (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/CacheEntryListener.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><a href="../../../javax/cache/event/CacheEntryExpiredListener.html" title="interface in javax.cache.event"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../javax/cache/event/CacheEntryListenerException.html" title="class in javax.cache.event"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/cache/event/CacheEntryListener.html" target="_top">Frames</a></li>
<li><a href="CacheEntryListener.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>Method</li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li>Method</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.event</div>
<h2 title="Interface CacheEntryListener" class="title">Interface CacheEntryListener&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> - 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/util/EventListener.html?is-external=true" title="class or interface in java.util">EventListener</a></dd>
</dl>
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../../javax/cache/event/CacheEntryCreatedListener.html" title="interface in javax.cache.event">CacheEntryCreatedListener</a>&lt;K,V&gt;, <a href="../../../javax/cache/event/CacheEntryExpiredListener.html" title="interface in javax.cache.event">CacheEntryExpiredListener</a>&lt;K,V&gt;, <a href="../../../javax/cache/event/CacheEntryRemovedListener.html" title="interface in javax.cache.event">CacheEntryRemovedListener</a>&lt;K,V&gt;, <a href="../../../javax/cache/event/CacheEntryUpdatedListener.html" title="interface in javax.cache.event">CacheEntryUpdatedListener</a>&lt;K,V&gt;</dd>
</dl>
<hr>
<br>
<pre>public interface <span class="strong">CacheEntryListener&lt;K,V&gt;</span>
extends <a href="http://download.oracle.com/javase/6/docs/api/java/util/EventListener.html?is-external=true" title="class or interface in java.util">EventListener</a></pre>
<div class="block">A tagging interface for cache entry listeners.
 <p>
 Sub-interfaces exist for the various cache events allowing a listener to be
 created that implements only those listeners it is interested in.
 <p>
 Listeners should be implemented with care. In particular it is important to
 consider their impact on performance and latency.
 <p>
 Listeners:
 <ul>
 <li>are fired after the entry is mutated in the cache</li>
 <li>if synchronous are fired, for a given key, in the order that events
 occur</li>
 <li>block the calling thread until the listener returns,
 where the listener was registered as synchronous</li>
 <li>that are asynchronous iterate through multiple events with an undefined
 ordering, except that events on the same key are in the order that the
 events occur.</li>
 </ul>
 Listeners follow the observer pattern. An exception thrown by a
 listener does not cause the cache operation to fail.
 <p>
 Listeners can only throw <a href="../../../javax/cache/event/CacheEntryListenerException.html" title="class in javax.cache.event"><code>CacheEntryListenerException</code></a>. Caching
 implementations must catch any other <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> from a listener, then
 wrap and rethrow it as a <a href="../../../javax/cache/event/CacheEntryListenerException.html" title="class in javax.cache.event"><code>CacheEntryListenerException</code></a>.
 <p>
 A listener that mutates a cache on the CacheManager may cause a deadlock.
 Detection and response to deadlocks is implementation specific.</div>
<dl><dt><span class="strong">Since:</span></dt>
  <dd>1.0</dd>
<dt><span class="strong">Author:</span></dt>
  <dd>Yannis Cosmadopoulos, Greg Luck</dd>
<dt><span class="strong">See Also:</span></dt><dd><a href="../../../javax/cache/event/CacheEntryCreatedListener.html" title="interface in javax.cache.event"><code>CacheEntryCreatedListener</code></a>, 
<a href="../../../javax/cache/event/CacheEntryUpdatedListener.html" title="interface in javax.cache.event"><code>CacheEntryUpdatedListener</code></a>, 
<a href="../../../javax/cache/event/CacheEntryRemovedListener.html" title="interface in javax.cache.event"><code>CacheEntryRemovedListener</code></a>, 
<a href="../../../javax/cache/event/CacheEntryExpiredListener.html" title="interface in javax.cache.event"><code>CacheEntryExpiredListener</code></a>, 
<a href="../../../javax/cache/event/EventType.html" title="enum in javax.cache.event"><code>EventType</code></a></dd></dl>
</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/CacheEntryListener.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><a href="../../../javax/cache/event/CacheEntryExpiredListener.html" title="interface in javax.cache.event"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../javax/cache/event/CacheEntryListenerException.html" title="class in javax.cache.event"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?javax/cache/event/CacheEntryListener.html" target="_top">Frames</a></li>
<li><a href="CacheEntryListener.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>Method</li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li>Method</li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2014. All Rights Reserved.</small></p>
</body>
</html>
