blob: 4c07f4a5ce7d96cf72e8616557e3987621b0be00 [file] [log] [blame]
<!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 -->
<title>CacheListener (Apache Geode 1.15.0)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="CacheListener (Apache Geode 1.15.0)";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="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="../../../../org/apache/geode/cache/CacheFactory.html" title="class in org.apache.geode.cache"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/geode/cache/CacheLoader.html" title="interface in org.apache.geode.cache"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/geode/cache/CacheListener.html" target="_top">Frames</a></li>
<li><a href="CacheListener.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.geode.cache</div>
<h2 title="Interface CacheListener" class="title">Interface CacheListener&lt;K,V&gt;</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../../org/apache/geode/cache/CacheCallback.html" title="interface in org.apache.geode.cache">CacheCallback</a>, <a href="../../../../org/apache/geode/cache/Declarable.html" title="interface in org.apache.geode.cache">Declarable</a></dd>
</dl>
<dl>
<dt>All Known Subinterfaces:</dt>
<dd><a href="../../../../org/apache/geode/cache/RegionMembershipListener.html" title="interface in org.apache.geode.cache">RegionMembershipListener</a>&lt;K,V&gt;, <a href="../../../../org/apache/geode/cache/RegionRoleListener.html" title="interface in org.apache.geode.cache">RegionRoleListener</a>&lt;K,V&gt;</dd>
</dl>
<dl>
<dt>All Known Implementing Classes:</dt>
<dd><a href="../../../../org/apache/geode/cache/util/CacheListenerAdapter.html" title="class in org.apache.geode.cache.util">CacheListenerAdapter</a>, <a href="../../../../org/apache/geode/modules/util/DebugCacheListener.html" title="class in org.apache.geode.modules.util">DebugCacheListener</a>, <a href="../../../../org/apache/geode/modules/gatewaydelta/GatewayDeltaEventApplicationCacheListener.html" title="class in org.apache.geode.modules.gatewaydelta">GatewayDeltaEventApplicationCacheListener</a>, <a href="../../../../org/apache/geode/modules/gatewaydelta/GatewayDeltaForwarderCacheListener.html" title="class in org.apache.geode.modules.gatewaydelta">GatewayDeltaForwarderCacheListener</a>, <a href="../../../../org/apache/geode/modules/util/RegionConfigurationCacheListener.html" title="class in org.apache.geode.modules.util">RegionConfigurationCacheListener</a>, <a href="../../../../org/apache/geode/cache/util/RegionMembershipListenerAdapter.html" title="class in org.apache.geode.cache.util">RegionMembershipListenerAdapter</a>, <a href="../../../../org/apache/geode/cache/util/RegionRoleListenerAdapter.html" title="class in org.apache.geode.cache.util">RegionRoleListenerAdapter</a>, <a href="../../../../org/apache/geode/modules/session/catalina/callback/SessionExpirationCacheListener.html" title="class in org.apache.geode.modules.session.catalina.callback">SessionExpirationCacheListener</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">CacheListener&lt;K,V&gt;</span>
extends <a href="../../../../org/apache/geode/cache/CacheCallback.html" title="interface in org.apache.geode.cache">CacheCallback</a></pre>
<div class="block"><p>
A listener to handle region or entry related events.
<p>
Instead of implementing this interface it is recommended that you extend the
<a href="../../../../org/apache/geode/cache/util/CacheListenerAdapter.html" title="class in org.apache.geode.cache.util"><code>CacheListenerAdapter</code></a> class.
<h3>Avoiding the risk of deadlock</h3>
<p>
The methods on a <code>CacheListener</code> are invoked while holding a lock on the entry
described by the <a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache"><code>EntryEvent</code></a>, as a result if the listener method takes a long time to
execute then it will cause the operation that caused it to be invoked to take a long time. In
addition, listener code which calls <a href="../../../../org/apache/geode/cache/Region.html" title="interface in org.apache.geode.cache"><code>Region</code></a> methods could result in a deadlock. For
example, in <a href="../../../../org/apache/geode/cache/CacheListener.html#afterUpdate-org.apache.geode.cache.EntryEvent-"><code>afterUpdate(EntryEvent)</code></a> for entry key k1, <a href="../../../../org/apache/geode/cache/Region.html#put-K-V-"><code>put(k2, someVal)</code></a> is called at the same time <a href="../../../../org/apache/geode/cache/CacheListener.html#afterUpdate-org.apache.geode.cache.EntryEvent-"><code>afterUpdate(EntryEvent)</code></a> for entry key k2
calls <a href="../../../../org/apache/geode/cache/Region.html#put-K-V-"><code>put(k1, someVal)</code></a> a deadlock may result. This co-key
dependency example can be extended to a co-Region dependency where listener code in Region "A"
performs Region operations on "B" and listener code in Region "B" performs Region operations on
"A". Deadlocks may be either java-level or distributed multi-VM dead locks depending on Region
configuration. To be assured of no deadlocks, listener code should cause some other thread to
access the region and must not wait for that thread to complete the task.
<p>
WARNING: To avoid risk of deadlock, do not invoke CacheFactory.getAnyInstance() from within any
callback methods. Instead use EntryEvent.getRegion().getCache() or
RegionEvent.getRegion().getCache().
<h3>Concurrency</h3>
<p>
Multiple events, on different entries, can cause concurrent invocation of
<code>CacheListener</code> methods. Any exceptions thrown by the listener are caught by GemFire
and logged.
<h3>Declaring instances in Cache XML files</h3>
<p>
To declare a CacheListener in a Cache XML file, it must also implement <a href="../../../../org/apache/geode/cache/Declarable.html" title="interface in org.apache.geode.cache"><code>Declarable</code></a>
<p></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 3.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/AttributesFactory.html#addCacheListener-org.apache.geode.cache.CacheListener-"><code>AttributesFactory.addCacheListener(org.apache.geode.cache.CacheListener&lt;K, V&gt;)</code></a>,
<a href="../../../../org/apache/geode/cache/AttributesFactory.html#initCacheListeners-org.apache.geode.cache.CacheListener:A-"><code>AttributesFactory.initCacheListeners(org.apache.geode.cache.CacheListener&lt;K, V&gt;[])</code></a>,
<a href="../../../../org/apache/geode/cache/RegionAttributes.html#getCacheListeners--"><code>RegionAttributes.getCacheListeners()</code></a>,
<a href="../../../../org/apache/geode/cache/AttributesMutator.html#addCacheListener-org.apache.geode.cache.CacheListener-"><code>AttributesMutator.addCacheListener(org.apache.geode.cache.CacheListener&lt;K, V&gt;)</code></a>,
<a href="../../../../org/apache/geode/cache/AttributesMutator.html#removeCacheListener-org.apache.geode.cache.CacheListener-"><code>AttributesMutator.removeCacheListener(org.apache.geode.cache.CacheListener&lt;K, V&gt;)</code></a>,
<a href="../../../../org/apache/geode/cache/AttributesMutator.html#initCacheListeners-org.apache.geode.cache.CacheListener:A-"><code>AttributesMutator.initCacheListeners(org.apache.geode.cache.CacheListener&lt;K, V&gt;[])</code></a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterCreate-org.apache.geode.cache.EntryEvent-">afterCreate</a></span>(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of new key being added to a region.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterDestroy-org.apache.geode.cache.EntryEvent-">afterDestroy</a></span>(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of an entry being destroyed.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterInvalidate-org.apache.geode.cache.EntryEvent-">afterInvalidate</a></span>(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of an entry's value being invalidated.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterRegionClear-org.apache.geode.cache.RegionEvent-">afterRegionClear</a></span>(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of a region being cleared.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterRegionCreate-org.apache.geode.cache.RegionEvent-">afterRegionCreate</a></span>(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of a region being created.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterRegionDestroy-org.apache.geode.cache.RegionEvent-">afterRegionDestroy</a></span>(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of a region being destroyed.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterRegionInvalidate-org.apache.geode.cache.RegionEvent-">afterRegionInvalidate</a></span>(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of a region being invalidated.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterRegionLive-org.apache.geode.cache.RegionEvent-">afterRegionLive</a></span>(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of a region being live after receiving the marker from the server.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/geode/cache/CacheListener.html#afterUpdate-org.apache.geode.cache.EntryEvent-">afterUpdate</a></span>(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</code>
<div class="block">Handles the event of an entry's value being modified in a region.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.geode.cache.CacheCallback">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.geode.cache.<a href="../../../../org/apache/geode/cache/CacheCallback.html" title="interface in org.apache.geode.cache">CacheCallback</a></h3>
<code><a href="../../../../org/apache/geode/cache/CacheCallback.html#close--">close</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.geode.cache.Declarable">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.geode.cache.<a href="../../../../org/apache/geode/cache/Declarable.html" title="interface in org.apache.geode.cache">Declarable</a></h3>
<code><a href="../../../../org/apache/geode/cache/Declarable.html#init-java.util.Properties-">init</a>, <a href="../../../../org/apache/geode/cache/Declarable.html#initialize-org.apache.geode.cache.Cache-java.util.Properties-">initialize</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="afterCreate-org.apache.geode.cache.EntryEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterCreate</h4>
<pre>void&nbsp;afterCreate(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of new key being added to a region. The entry did not previously exist in
this region in the local cache (even with a null value).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the EntryEvent</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#create-K-V-"><code>Region.create(Object, Object)</code></a>,
<a href="../../../../org/apache/geode/cache/Region.html#put-K-V-"><code>Region.put(Object, Object)</code></a>,
<a href="../../../../org/apache/geode/cache/Region.html#get-java.lang.Object-"><code>Region.get(Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="afterUpdate-org.apache.geode.cache.EntryEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterUpdate</h4>
<pre>void&nbsp;afterUpdate(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of an entry's value being modified in a region. This entry previously existed
in this region in the local cache, but its previous value may have been null.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the EntryEvent</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#put-K-V-"><code>Region.put(Object, Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="afterInvalidate-org.apache.geode.cache.EntryEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterInvalidate</h4>
<pre>void&nbsp;afterInvalidate(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of an entry's value being invalidated.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the EntryEvent</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#invalidate-java.lang.Object-"><code>Region.invalidate(Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="afterDestroy-org.apache.geode.cache.EntryEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterDestroy</h4>
<pre>void&nbsp;afterDestroy(<a href="../../../../org/apache/geode/cache/EntryEvent.html" title="interface in org.apache.geode.cache">EntryEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of an entry being destroyed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the EntryEvent</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#destroy-java.lang.Object-"><code>Region.destroy(Object)</code></a></dd>
</dl>
</li>
</ul>
<a name="afterRegionInvalidate-org.apache.geode.cache.RegionEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterRegionInvalidate</h4>
<pre>void&nbsp;afterRegionInvalidate(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of a region being invalidated. Events are not invoked for each individual
value that is invalidated as a result of the region being invalidated. Each subregion, however,
gets its own <code>regionInvalidated</code> event invoked on its listener.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the RegionEvent</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#invalidateRegion--"><code>Region.invalidateRegion()</code></a>,
<a href="../../../../org/apache/geode/cache/Region.html#localInvalidateRegion--"><code>Region.localInvalidateRegion()</code></a></dd>
</dl>
</li>
</ul>
<a name="afterRegionDestroy-org.apache.geode.cache.RegionEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterRegionDestroy</h4>
<pre>void&nbsp;afterRegionDestroy(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of a region being destroyed. Events are not invoked for each individual entry
that is destroyed as a result of the region being destroyed. Each subregion, however, gets its
own <code>afterRegionDestroyed</code> event invoked on its listener.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the RegionEvent</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#destroyRegion--"><code>Region.destroyRegion()</code></a>,
<a href="../../../../org/apache/geode/cache/Region.html#localDestroyRegion--"><code>Region.localDestroyRegion()</code></a>,
<a href="../../../../org/apache/geode/cache/Region.html#close--"><code>Region.close()</code></a>,
<a href="../../../../org/apache/geode/cache/RegionService.html#close--"><code>RegionService.close()</code></a></dd>
</dl>
</li>
</ul>
<a name="afterRegionClear-org.apache.geode.cache.RegionEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterRegionClear</h4>
<pre>void&nbsp;afterRegionClear(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of a region being cleared. Events are not invoked for each individual entry
that is removed as a result of the region being cleared.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the RegionEvent</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Region.html#clear--"><code>Region.clear()</code></a></dd>
</dl>
</li>
</ul>
<a name="afterRegionCreate-org.apache.geode.cache.RegionEvent-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>afterRegionCreate</h4>
<pre>void&nbsp;afterRegionCreate(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of a region being created. Events are invoked for each individual region that
is created.
<p>
Note that this method is only called for creates done in the local vm. To be notified of
creates done in remote vms use <a href="../../../../org/apache/geode/cache/RegionMembershipListener.html#afterRemoteRegionCreate-org.apache.geode.cache.RegionEvent-"><code>RegionMembershipListener.afterRemoteRegionCreate(org.apache.geode.cache.RegionEvent&lt;K, V&gt;)</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the RegionEvent</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.0</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Cache.html#createRegion-java.lang.String-org.apache.geode.cache.RegionAttributes-"><code>Cache.createRegion(java.lang.String, org.apache.geode.cache.RegionAttributes&lt;K, V&gt;)</code></a>,
<a href="../../../../org/apache/geode/cache/Region.html#createSubregion-java.lang.String-org.apache.geode.cache.RegionAttributes-"><code>Region.createSubregion(java.lang.String, org.apache.geode.cache.RegionAttributes&lt;SK, SV&gt;)</code></a></dd>
</dl>
</li>
</ul>
<a name="afterRegionLive-org.apache.geode.cache.RegionEvent-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>afterRegionLive</h4>
<pre>void&nbsp;afterRegionLive(<a href="../../../../org/apache/geode/cache/RegionEvent.html" title="interface in org.apache.geode.cache">RegionEvent</a>&lt;<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">K</a>,<a href="../../../../org/apache/geode/cache/CacheListener.html" title="type parameter in CacheListener">V</a>&gt;&nbsp;event)</pre>
<div class="block">Handles the event of a region being live after receiving the marker from the server.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>event</code> - the RegionEvent</dd>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 5.5</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../org/apache/geode/cache/Cache.html#readyForEvents--"><code>Cache.readyForEvents()</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="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="../../../../org/apache/geode/cache/CacheFactory.html" title="class in org.apache.geode.cache"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../org/apache/geode/cache/CacheLoader.html" title="interface in org.apache.geode.cache"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/geode/cache/CacheListener.html" target="_top">Frames</a></li>
<li><a href="CacheListener.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>