blob: 35e346ce978ac12a266c2fdfbec308226c326ac7 [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>AsyncEventListener (Apache Geode 1.15.1)</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="AsyncEventListener (Apache Geode 1.15.1)";
}
}
catch(err) {
}
//-->
var methods = {"i0":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/asyncqueue/AsyncEvent.html" title="interface in org.apache.geode.cache.asyncqueue"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/geode/cache/asyncqueue/AsyncEventQueue.html" title="interface in org.apache.geode.cache.asyncqueue"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/geode/cache/asyncqueue/AsyncEventListener.html" target="_top">Frames</a></li>
<li><a href="AsyncEventListener.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.asyncqueue</div>
<h2 title="Interface AsyncEventListener" class="title">Interface AsyncEventListener</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 Implementing Classes:</dt>
<dd><a href="../../../../../org/apache/geode/connectors/jdbc/JdbcAsyncWriter.html" title="class in org.apache.geode.connectors.jdbc">JdbcAsyncWriter</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">AsyncEventListener</span>
extends <a href="../../../../../org/apache/geode/cache/CacheCallback.html" title="interface in org.apache.geode.cache">CacheCallback</a></pre>
<div class="block">A callback for events passing through the <code>AsyncEventQueue</code> to which this listener is
attached. Implementers of interface <code>AsyncEventListener</code> process batches of
<code>AsyncEvent</code> delivered by the corresponding <code>AsyncEventQueue</code>. <br>
A sample implementation of this interface is as follows: <br>
<pre>
public class MyEventListener implements AsyncEventListener {
public boolean processEvents(List&lt;AsyncEvent&gt; events) {
for (Iterator i = events.iterator(); i.hasNext();) {
AsyncEvent event = (AsyncEvent) i.next();
String originalRegionName = event.getRegion().getName();
// For illustration purpose, use the event to update the duplicate of above region.
final Region duplicateRegion =
CacheHelper.getCache().getRegion(originalRegionName + "_DUP");
final Object key = event.getKey();
final Object value = event.getDeserializedValue();
final Operation op = event.getOperation();
if (op.isCreate()) {
duplicateRegion.create(key, value);
} else if (op.isUpdate()) {
duplicateRegion.put(key, value);
} else if (op.isDestroy()) {
duplicateRegion.destroy(key);
}
}
return true;
}
}
</pre></div>
<dl>
<dt><span class="simpleTagLabel">Since:</span></dt>
<dd>GemFire 7.0</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>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/geode/cache/asyncqueue/AsyncEventListener.html#processEvents-java.util.List-">processEvents</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/geode/cache/asyncqueue/AsyncEvent.html" title="interface in org.apache.geode.cache.asyncqueue">AsyncEvent</a>&gt;&nbsp;events)</code>
<div class="block">Process the list of <code>AsyncEvent</code>s.</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="processEvents-java.util.List-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>processEvents</h4>
<pre>boolean&nbsp;processEvents(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="../../../../../org/apache/geode/cache/asyncqueue/AsyncEvent.html" title="interface in org.apache.geode.cache.asyncqueue">AsyncEvent</a>&gt;&nbsp;events)</pre>
<div class="block">Process the list of <code>AsyncEvent</code>s. This method will asynchronously be called when
events are queued to be processed. The size of the list will be up to batch size events where
batch size is defined in the <code>AsyncEventQueueFactory</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>events</code> - The list of <code>AsyncEvent</code> to process</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>boolean True represents whether the events were successfully processed, false
otherwise.</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/asyncqueue/AsyncEvent.html" title="interface in org.apache.geode.cache.asyncqueue"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/geode/cache/asyncqueue/AsyncEventQueue.html" title="interface in org.apache.geode.cache.asyncqueue"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/geode/cache/asyncqueue/AsyncEventListener.html" target="_top">Frames</a></li>
<li><a href="AsyncEventListener.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>