blob: 39e0f5fa3cbd7cedef382a95912505c917d4d313 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.15"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Apache Geode Native .NET Reference: Apache::Geode::Client::ICqListener&lt; TKey, TResult &gt; Interface Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(initResizable);
/* @license-end */</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Apache Geode Native .NET Reference
&#160;<span id="projectnumber">1.13.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.15 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('a00558.html','');});
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> </div>
<div class="headertitle">
<div class="title">Apache::Geode::Client::ICqListener&lt; TKey, TResult &gt; Interface Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>An application plug-in that can be installed on a region.
<a href="a00558.html#details">More...</a></p>
<p>Inherited by <a class="el" href="a00930.html">Apache::Geode::Client::ICqStatusListener&lt; TKey, TResult &gt;</a>.</p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a0d17514f1953568e07c4f8b82967614d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00558.html#a0d17514f1953568e07c4f8b82967614d">Close</a> ()</td></tr>
<tr class="memdesc:a0d17514f1953568e07c4f8b82967614d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the region containing this callback is destroyed, when the cache is closed. <a href="#a0d17514f1953568e07c4f8b82967614d">More...</a><br /></td></tr>
<tr class="separator:a0d17514f1953568e07c4f8b82967614d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d17514f1953568e07c4f8b82967614d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00558.html#a0d17514f1953568e07c4f8b82967614d">Close</a> ()</td></tr>
<tr class="memdesc:a0d17514f1953568e07c4f8b82967614d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Called when the region containing this callback is destroyed, when the cache is closed. <a href="#a0d17514f1953568e07c4f8b82967614d">More...</a><br /></td></tr>
<tr class="separator:a0d17514f1953568e07c4f8b82967614d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af67d5c0e053a210558bf59a3b9c5f47a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00558.html#af67d5c0e053a210558bf59a3b9c5f47a">OnError</a> (<a class="el" href="a00578.html">CqEvent</a>^ ev)</td></tr>
<tr class="memdesc:af67d5c0e053a210558bf59a3b9c5f47a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles the event of an entry's value being modified in a region. <a href="#af67d5c0e053a210558bf59a3b9c5f47a">More...</a><br /></td></tr>
<tr class="separator:af67d5c0e053a210558bf59a3b9c5f47a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96f02ba38d7880d22a80ba9a29ff27d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00558.html#a96f02ba38d7880d22a80ba9a29ff27d4">OnError</a> (<a class="el" href="a00578.html">CqEvent</a>&lt; TKey, TResult &gt;^ ev)</td></tr>
<tr class="memdesc:a96f02ba38d7880d22a80ba9a29ff27d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles the event of an entry's value being modified in a region. <a href="#a96f02ba38d7880d22a80ba9a29ff27d4">More...</a><br /></td></tr>
<tr class="separator:a96f02ba38d7880d22a80ba9a29ff27d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4aa4d46fc33044d7a5d79d27dcfc0b2e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00558.html#a4aa4d46fc33044d7a5d79d27dcfc0b2e">OnEvent</a> (<a class="el" href="a00578.html">CqEvent</a>^ ev)</td></tr>
<tr class="memdesc:a4aa4d46fc33044d7a5d79d27dcfc0b2e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles the event of a new key being added to a region. <a href="#a4aa4d46fc33044d7a5d79d27dcfc0b2e">More...</a><br /></td></tr>
<tr class="separator:a4aa4d46fc33044d7a5d79d27dcfc0b2e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3b133a4a4c39126ce87b2090cc11b096"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00558.html#a3b133a4a4c39126ce87b2090cc11b096">OnEvent</a> (<a class="el" href="a00578.html">CqEvent</a>&lt; TKey, TResult &gt;^ ev)</td></tr>
<tr class="memdesc:a3b133a4a4c39126ce87b2090cc11b096"><td class="mdescLeft">&#160;</td><td class="mdescRight">Handles the event of a new key being added to a region. <a href="#a3b133a4a4c39126ce87b2090cc11b096">More...</a><br /></td></tr>
<tr class="separator:a3b133a4a4c39126ce87b2090cc11b096"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;class TKey, class TResult&gt;<br />
interface Apache::Geode::Client::ICqListener&lt; TKey, TResult &gt;</h3>
<p>An application plug-in that can be installed on a region. </p>
<p>Listener change notifications are invoked <code>after</code> the change has occured. </p>
<p>Listeners receive notifications when entries in a region change or changes occur to the region attributes themselves. </p>
<p>A cache listener is defined in the <a class="el" href="a01010.html" title="Defines attributes for configuring a region.">RegionAttributes</a>. </p>
<p>The methods on a <code><a class="el" href="a00906.html" title="An application plug-in that can be installed on a region.">ICacheListener</a></code> are invoked asynchronously. Multiple events can cause concurrent invocation of <code><a class="el" href="a00906.html" title="An application plug-in that can be installed on a region.">ICacheListener</a></code> methods. If event A occurs before event B, there is no guarantee that their corresponding <code><a class="el" href="a00906.html" title="An application plug-in that can be installed on a region.">ICacheListener</a></code> method invocations will occur in the same order. Any exceptions thrown by the listener are caught by <a class="el" href="a00381.html" title="This namespace contains all the Geode .NET classes and utility classes.">Geode</a> and logged.</p>
<p>Listeners are user callbacks that are invoked by <a class="el" href="a00381.html" title="This namespace contains all the Geode .NET classes and utility classes.">Geode</a>. It is important to ensure that minimal work is done in the listener before returning control back to <a class="el" href="a00381.html" title="This namespace contains all the Geode .NET classes and utility classes.">Geode</a>. For example, a listener implementation may choose to hand off the event to a thread pool that then processes the event on its thread rather than the listener thread </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a01098.html#aaf05127120e1fb829caf34ee24d2be6b" title="Sets the CacheListener for the RegionAttributes being created.">RegionAttributesFactory.SetCacheListener</a>, <a class="el" href="a01010.html#a6bfca4ea932b8f49f78c02b626bd868e" title="Gets the cache listener for the region.">RegionAttributes.CacheListener</a>, <a class="el" href="a00914.html" title="A data-loading application plug-in that can be installed on a region.">ICacheLoader</a>, <a class="el" href="a00918.html" title="An application plug-in that can be installed on a region.">ICacheWriter</a></dd></dl>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a0d17514f1953568e07c4f8b82967614d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d17514f1953568e07c4f8b82967614d">&#9670;&nbsp;</a></span>Close() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TKey , class TResult &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="a00558.html">Apache::Geode::Client::ICqListener</a>&lt; TKey, TResult &gt;::Close </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Called when the region containing this callback is destroyed, when the cache is closed. </p>
<p>Implementations should clean up any external resources, such as database connections. Any runtime exceptions this method throws will be logged. </p>
<p>It is possible for this method to be called multiple times on a single callback instance, so implementations must be tolerant of this. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00410.html#ae4914b5a4b36ff81a81a91db5225019b" title="Terminates this object cache and releases all the local resources.">Cache.Close</a>, Region.DestroyRegion</dd></dl>
</div>
</div>
<a id="a0d17514f1953568e07c4f8b82967614d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d17514f1953568e07c4f8b82967614d">&#9670;&nbsp;</a></span>Close() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TKey , class TResult &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="a00558.html">Apache::Geode::Client::ICqListener</a>&lt; TKey, TResult &gt;::Close </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Called when the region containing this callback is destroyed, when the cache is closed. </p>
<p>Implementations should clean up any external resources, such as database connections. Any runtime exceptions this method throws will be logged. </p>
<p>It is possible for this method to be called multiple times on a single callback instance, so implementations must be tolerant of this. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00410.html#ae4914b5a4b36ff81a81a91db5225019b" title="Terminates this object cache and releases all the local resources.">Cache.Close</a>, Region.DestroyRegion</dd></dl>
</div>
</div>
<a id="af67d5c0e053a210558bf59a3b9c5f47a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af67d5c0e053a210558bf59a3b9c5f47a">&#9670;&nbsp;</a></span>OnError() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TKey , class TResult &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="a00558.html">Apache::Geode::Client::ICqListener</a>&lt; TKey, TResult &gt;::OnError </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00578.html">CqEvent</a>^&#160;</td>
<td class="paramname"><em>ev</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Handles the event of an entry's value being modified in a region. </p>
<p>This entry previously existed in this region in the local cache, but its previous value may have been null. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ev</td><td><a class="el" href="a00618.html" title="This class encapsulates events that occur for an entry in a region.">EntryEvent</a> denotes the event object associated with updating the entry. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>Region.Put</dd></dl>
</div>
</div>
<a id="a96f02ba38d7880d22a80ba9a29ff27d4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96f02ba38d7880d22a80ba9a29ff27d4">&#9670;&nbsp;</a></span>OnError() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TKey , class TResult &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="a00558.html">Apache::Geode::Client::ICqListener</a>&lt; TKey, TResult &gt;::OnError </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00578.html">CqEvent</a>&lt; TKey, TResult &gt;^&#160;</td>
<td class="paramname"><em>ev</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Handles the event of an entry's value being modified in a region. </p>
<p>This entry previously existed in this region in the local cache, but its previous value may have been null. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ev</td><td><a class="el" href="a00618.html" title="This class encapsulates events that occur for an entry in a region.">EntryEvent</a> denotes the event object associated with updating the entry. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>Region.Put</dd></dl>
</div>
</div>
<a id="a4aa4d46fc33044d7a5d79d27dcfc0b2e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4aa4d46fc33044d7a5d79d27dcfc0b2e">&#9670;&nbsp;</a></span>OnEvent() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TKey , class TResult &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="a00558.html">Apache::Geode::Client::ICqListener</a>&lt; TKey, TResult &gt;::OnEvent </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00578.html">CqEvent</a>^&#160;</td>
<td class="paramname"><em>ev</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Handles the event of a new key being added to a region. </p>
<p>The entry did not previously exist in this region in the local cache (even with a null value). </p>
<p>This function does not throw any exception. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ev</td><td>Denotes the event object associated with the entry creation. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>Region.Create, Region.Put, Region.Get</dd></dl>
</div>
</div>
<a id="a3b133a4a4c39126ce87b2090cc11b096"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3b133a4a4c39126ce87b2090cc11b096">&#9670;&nbsp;</a></span>OnEvent() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class TKey , class TResult &gt; </div>
<table class="memname">
<tr>
<td class="memname">void <a class="el" href="a00558.html">Apache::Geode::Client::ICqListener</a>&lt; TKey, TResult &gt;::OnEvent </td>
<td>(</td>
<td class="paramtype"><a class="el" href="a00578.html">CqEvent</a>&lt; TKey, TResult &gt;^&#160;</td>
<td class="paramname"><em>ev</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Handles the event of a new key being added to a region. </p>
<p>The entry did not previously exist in this region in the local cache (even with a null value). </p>
<p>This function does not throw any exception. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">ev</td><td>Denotes the event object associated with the entry creation. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd>Region.Create, Region.Put, Region.Get</dd></dl>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!--
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
this work for additional information regarding copyright ownership.
The ASF licenses this file to You under the Apache License, Version 2.0
(the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<HR><address style="align: right;"><small>Apache Geode C++ Cache .NET API Documentation</small></address>