<!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/releases/latest/javadoc/org/apache/ignite/IgniteEvents.html" />


<!-- Generated by javadoc (1.8.0_221) on Thu Feb 27 14:09:33 MSK 2020 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IgniteEvents (Ignite 2.8.0)</title>
<meta name="date" content="2020-02-27">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<link rel='shortcut icon' href='https://ignite.apache.org/favicon.ico'/>

<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"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="IgniteEvents (Ignite 2.8.0)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":6,"i1":6,"i2":6,"i3":6,"i4":6,"i5":6,"i6":6,"i7":6,"i8":6,"i9":6,"i10":6,"i11":6,"i12":6,"i13":6,"i14":6,"i15":6,"i16":6,"i17":6,"i18":6,"i19":38};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],32:["t6","Deprecated 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="class-use/IgniteEvents.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="../../../org/apache/ignite/IgniteDeploymentException.html" title="class in org.apache.ignite"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/ignite/IgniteEvents.html" target="_top">Frames</a></li>
<li><a href="IgniteEvents.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.ignite</div>
<h2 title="Interface IgniteEvents" class="title">Interface IgniteEvents</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">IgniteEvents</span>
extends <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></pre>
<div class="block">Provides functionality for local and remote event notifications on nodes defined by <a href="../../../org/apache/ignite/IgniteEvents.html#clusterGroup--"><code>clusterGroup()</code></a>.
 There are <code>2</code> ways to subscribe to event listening, <code>local</code> and <code>remote</code>.
 <p>
 Instance of <code>IgniteEvents</code> is obtained from <a href="../../../org/apache/ignite/Ignite.html" title="interface in org.apache.ignite"><code>Ignite</code></a> as follows:
 <pre class="brush:java">
 Ignite ignite = Ignition.ignite();

 IgniteEvents evts = ignite.events();
 </pre>
 You can also obtain an instance of the events facade over a specific cluster group:
 <pre class="brush:java">
 // Cluster group over remote nodes (excluding the local node).
 ClusterGroup remoteNodes = ignite.cluster().forRemotes();

 // Events instance spanning all remote cluster nodes.
 IgniteEvents evts = ignite.events(remoteNodes);
 </pre>
 <p>
 Local subscription, defined by <a href="../../../org/apache/ignite/IgniteEvents.html#localListen-org.apache.ignite.lang.IgnitePredicate-int...-"><code>localListen(IgnitePredicate, int...)</code></a> method, will add
 a listener for specified events on local node only. This listener will be notified whenever any
 of subscribed events happen on local node regardless of whether local node belongs to underlying
 cluster group or not.
 <p>
 Remote subscription, defined by <a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListen(IgniteBiPredicate, IgnitePredicate, int...)</code></a>, will add an
 event listener for specified events on all nodes in the cluster group (possibly including local node if
 it belongs to the cluster group as well). All cluster group nodes will then be notified of the subscribed events.
 If the events pass the remote event filter, the events will be sent to local node for local listener notification.
 <p>
 Note that by default, all events in Ignite are disabled for performance reasons. You must only enable
 events that you need within your logic. You can enable/disable events either by calling <a href="../../../org/apache/ignite/IgniteEvents.html#enableLocal-int...-"><code>enableLocal(int...)</code></a>
 or <a href="../../../org/apache/ignite/IgniteEvents.html#disableLocal-int...-"><code>disableLocal(int...)</code></a> methods, or from XML configuration.
 For example, you can enable all cache events as follows:
 <pre name="code" class="xml">
 &lt;property name="includeEventTypes"&gt;
     &lt;util:constant static-field="org.apache.ignite.events.IgniteEventType.EVTS_CACHE"/&gt;
 &lt;/property&gt;
 </pre></div>
</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><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated 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><a href="../../../org/apache/ignite/cluster/ClusterGroup.html" title="interface in org.apache.ignite.cluster">ClusterGroup</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#clusterGroup--">clusterGroup</a></span>()</code>
<div class="block">Gets cluster group to which this <code>IgniteEvents</code> instance belongs.</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/ignite/IgniteEvents.html#disableLocal-int...-">disableLocal</a></span>(int...&nbsp;types)</code>
<div class="block">Disables provided events.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>int[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#enabledEvents--">enabledEvents</a></span>()</code>
<div class="block">Gets types of enabled events.</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/ignite/IgniteEvents.html#enableLocal-int...-">enableLocal</a></span>(int...&nbsp;types)</code>
<div class="block">Enables provided events.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#isEnabled-int-">isEnabled</a></span>(int&nbsp;type)</code>
<div class="block">Check if event is enabled.</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/ignite/IgniteEvents.html#localListen-org.apache.ignite.lang.IgnitePredicate-int...-">localListen</a></span>(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>? extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;lsnr,
           int...&nbsp;types)</code>
<div class="block">Adds an event listener for local events.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#localQuery-org.apache.ignite.lang.IgnitePredicate-int...-">localQuery</a></span>(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;p,
          int...&nbsp;types)</code>
<div class="block">Queries local node for events using passed-in predicate filter for event selection.</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/ignite/IgniteEvents.html#recordLocal-org.apache.ignite.events.Event-">recordLocal</a></span>(<a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a>&nbsp;evt)</code>
<div class="block">Records customer user generated event.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">remoteListen</a></span>(@Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
            @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
            int...&nbsp;types)</code>
<div class="block">Adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well).</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-int-long-boolean-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">remoteListen</a></span>(int&nbsp;bufSize,
            long&nbsp;interval,
            boolean&nbsp;autoUnsubscribe,
            @Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
            @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
            int...&nbsp;types)</code>
<div class="block">Adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well).</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#remoteListenAsync-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">remoteListenAsync</a></span>(@Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
                 @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
                 int...&nbsp;types)</code>
<div class="block">Asynchronously adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well).</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#remoteListenAsync-int-long-boolean-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">remoteListenAsync</a></span>(int&nbsp;bufSize,
                 long&nbsp;interval,
                 boolean&nbsp;autoUnsubscribe,
                 @Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
                 @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
                 int...&nbsp;types)</code>
<div class="block">Asynchronously adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well).</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#remoteQuery-org.apache.ignite.lang.IgnitePredicate-long-int...-">remoteQuery</a></span>(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;p,
           long&nbsp;timeout,
           int...&nbsp;types)</code>
<div class="block">Queries nodes in this cluster group for events using passed in predicate filter for event
 selection.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#remoteQueryAsync-org.apache.ignite.lang.IgnitePredicate-long-int...-">remoteQueryAsync</a></span>(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;p,
                long&nbsp;timeout,
                int...&nbsp;types)</code>
<div class="block">Asynchronously queries nodes in this cluster group for events using passed in predicate filter for event
 selection.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#stopLocalListen-org.apache.ignite.lang.IgnitePredicate-int...-">stopLocalListen</a></span>(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>? extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;lsnr,
               int...&nbsp;types)</code>
<div class="block">Removes local event listener.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-">stopRemoteListen</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;opId)</code>
<div class="block">Stops listening to remote events.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a><span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-">stopRemoteListenAsync</a></span>(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;opId)</code>
<div class="block">Asynchronously stops listening to remote events.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br>T</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#waitForLocal-org.apache.ignite.lang.IgnitePredicate-int...-">waitForLocal</a></span>(@Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;filter,
            int...&nbsp;types)</code>
<div class="block">Waits for the specified events.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span><br><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#waitForLocalAsync-org.apache.ignite.lang.IgnitePredicate-int...-">waitForLocalAsync</a></span>(@Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;filter,
                 int...&nbsp;types)</code>
<div class="block">Create future to wait for the specified events.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteEvents.html" title="interface in org.apache.ignite">IgniteEvents</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/ignite/IgniteEvents.html#withAsync--">withAsync</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.ignite.lang.IgniteAsyncSupport">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.ignite.lang.<a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></h3>
<code><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html#future--">future</a>, <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html#isAsync--">isAsync</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="clusterGroup--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clusterGroup</h4>
<pre><a href="../../../org/apache/ignite/cluster/ClusterGroup.html" title="interface in org.apache.ignite.cluster">ClusterGroup</a>&nbsp;clusterGroup()</pre>
<div class="block">Gets cluster group to which this <code>IgniteEvents</code> instance belongs.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Cluster group to which this <code>IgniteEvents</code> instance belongs.</dd>
</dl>
</li>
</ul>
<a name="remoteQuery-org.apache.ignite.lang.IgnitePredicate-long-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteQuery</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;remoteQuery(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;p,
                                                            long&nbsp;timeout,
                                                            @Nullable
                                                            int...&nbsp;types)
                                                     throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Queries nodes in this cluster group for events using passed in predicate filter for event
 selection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Predicate filter used to query events on remote nodes.</dd>
<dd><code>timeout</code> - Maximum time to wait for result, <code>0</code> to wait forever.</dd>
<dd><code>types</code> - Event types to be queried.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Collection of grid events returned from specified nodes.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If query failed.</dd>
</dl>
</li>
</ul>
<a name="remoteQueryAsync-org.apache.ignite.lang.IgnitePredicate-long-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteQueryAsync</h4>
<pre><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span><span class='angle_bracket'>&gt;</span>&nbsp;remoteQueryAsync(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;p,
                                                         long&nbsp;timeout,
                                                         @Nullable
                                                         int...&nbsp;types)
                                                  throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Asynchronously queries nodes in this cluster group for events using passed in predicate filter for event
 selection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Predicate filter used to query events on remote nodes.</dd>
<dd><code>timeout</code> - Maximum time to wait for result, <code>0</code> to wait forever.</dd>
<dd><code>types</code> - Event types to be queried.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the query. The completed future contains
      collection of grid events returned from specified nodes.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If query failed.</dd>
</dl>
</li>
</ul>
<a name="remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteListen</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;remoteListen(@Nullable
                                                          @Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
                                                          @Nullable
                                                          @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
                                                          @Nullable
                                                          int...&nbsp;types)
                                                   throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well). This means that all events occurring on
 any node within this cluster group that pass remote filter will be sent to local node for
 local listener notifications.
 <p>
 The listener can be unsubscribed automatically if local node stops, if <code>locLsnr</code> callback
 returns <code>false</code> or if <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> or <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-"><code>stopRemoteListenAsync(UUID)</code></a> are called.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - Type of the event.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>locLsnr</code> - Listener callback that is called on local node. If <code>null</code>, this events will be handled
      on remote nodes by passed in <code>rmtFilter</code>.</dd>
<dd><code>rmtFilter</code> - Filter callback that is called on remote node. Only events that pass the remote filter
      will be sent to local node. If <code>null</code>, all events of specified types will
      be sent to local node. This remote filter can be used to pre-handle events remotely,
      before they are passed in to local callback. It will be auto-unsubsribed on the node
      where event occurred in case if it returns <code>false</code>.</dd>
<dd><code>types</code> - Types of events to listen for. If not provided, all events that pass the
      provided remote filter will be sent to local node.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>Operation ID</code> that can be passed to <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> or
 <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-"><code>stopRemoteListenAsync(UUID)</code></a> methods to stop listening.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to add listener.</dd>
</dl>
</li>
</ul>
<a name="remoteListenAsync-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteListenAsync</h4>
<pre><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a><span class='angle_bracket'>&gt;</span>&nbsp;remoteListenAsync(@Nullable
                                                       @Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
                                                       @Nullable
                                                       @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
                                                       @Nullable
                                                       int...&nbsp;types)
                                                throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Asynchronously adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well). This means that all events occurring on
 any node within this cluster group that pass remote filter will be sent to local node for
 local listener notifications.
 <p>
 The listener can be unsubscribed automatically if local node stops, if <code>locLsnr</code> callback
 returns <code>false</code> or if <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> or <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-"><code>stopRemoteListenAsync(UUID)</code></a> are called.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - Type of the event.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>locLsnr</code> - Listener callback that is called on local node. If <code>null</code>, this events will be handled
      on remote nodes by passed in <code>rmtFilter</code>.</dd>
<dd><code>rmtFilter</code> - Filter callback that is called on remote node. Only events that pass the remote filter
      will be sent to local node. If <code>null</code>, all events of specified types will
      be sent to local node. This remote filter can be used to pre-handle events remotely,
      before they are passed in to local callback. It will be auto-unsubsribed on the node
      where event occurred in case if it returns <code>false</code>.</dd>
<dd><code>types</code> - Types of events to listen for. If not provided, all events that pass the
      provided remote filter will be sent to local node.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation. The completed future contains
      <code>Operation ID</code> that can be passed to <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> or
      <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-"><code>stopRemoteListenAsync(UUID)</code></a> methods to stop listening.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to add listener.</dd>
</dl>
</li>
</ul>
<a name="remoteListen-int-long-boolean-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteListen</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;remoteListen(int&nbsp;bufSize,
                                                          long&nbsp;interval,
                                                          boolean&nbsp;autoUnsubscribe,
                                                          @Nullable
                                                          @Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
                                                          @Nullable
                                                          @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
                                                          @Nullable
                                                          int...&nbsp;types)
                                                   throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well). This means that all events occurring on
 any node within this cluster group that pass remote filter will be sent to local node for
 local listener notification.
 <p>
 Supports asynchronous execution (see <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang"><code>IgniteAsyncSupport</code></a>).</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - Type of the event.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bufSize</code> - Remote events buffer size. Events from remote nodes won't be sent until buffer
      is full or time interval is exceeded.</dd>
<dd><code>interval</code> - Maximum time interval after which events from remote node will be sent. Events
      from remote nodes won't be sent until buffer is full or time interval is exceeded.</dd>
<dd><code>autoUnsubscribe</code> - Flag indicating that event listeners on remote nodes should be
      automatically unregistered if master node (node that initiated event listening) leaves
      topology. If this flag is <code>false</code>, listeners will be unregistered only when
      <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> method is called, or the <code>'callback (locLsnr)'</code>
      passed in returns <code>false</code>.</dd>
<dd><code>locLsnr</code> - Callback that is called on local node. If this predicate returns <code>true</code>,
      the implementation will continue listening to events. Otherwise, events
      listening will be stopped and listeners will be unregistered on all nodes
      in the cluster group. If <code>null</code>, this events will be handled on remote nodes by
      passed in <code>rmtFilter</code> until local node stops (if <code>'autoUnsubscribe'</code> is <code>true</code>)
      or until <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> is called.</dd>
<dd><code>rmtFilter</code> - Filter callback that is called on remote node. Only events that pass the remote filter
      will be sent to local node. If <code>null</code>, all events of specified types will
      be sent to local node. This remote filter can be used to pre-handle events remotely,
      before they are passed in to local callback. It will be auto-unsubsribed on the node
      where event occurred in case if it returns <code>false</code>.</dd>
<dd><code>types</code> - Types of events to listen for. If not provided, all events that pass the
      provided remote filter will be sent to local node.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>Operation ID</code> that can be passed to <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> or
      <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> methods to stop listening.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to add listener.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a>, 
<a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-"><code>stopRemoteListenAsync(UUID)</code></a></dd>
</dl>
</li>
</ul>
<a name="remoteListenAsync-int-long-boolean-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>remoteListenAsync</h4>
<pre><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a><span class='angle_bracket'>&gt;</span>&nbsp;remoteListenAsync(int&nbsp;bufSize,
                                                       long&nbsp;interval,
                                                       boolean&nbsp;autoUnsubscribe,
                                                       @Nullable
                                                       @Nullable <a href="../../../org/apache/ignite/lang/IgniteBiPredicate.html" title="interface in org.apache.ignite.lang">IgniteBiPredicate</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>,T<span class='angle_bracket'>&gt;</span>&nbsp;locLsnr,
                                                       @Nullable
                                                       @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;rmtFilter,
                                                       @Nullable
                                                       int...&nbsp;types)
                                                throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Asynchronously adds event listener for specified events to all nodes in the cluster group (possibly including
 local node if it belongs to the cluster group as well). This means that all events occurring on
 any node within this cluster group that pass remote filter will be sent to local node for
 local listener notification.</div>
<dl>
<dt><span class="paramLabel">Type Parameters:</span></dt>
<dd><code>T</code> - Type of the event.</dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>bufSize</code> - Remote events buffer size. Events from remote nodes won't be sent until buffer
      is full or time interval is exceeded.</dd>
<dd><code>interval</code> - Maximum time interval after which events from remote node will be sent. Events
      from remote nodes won't be sent until buffer is full or time interval is exceeded.</dd>
<dd><code>autoUnsubscribe</code> - Flag indicating that event listeners on remote nodes should be
      automatically unregistered if master node (node that initiated event listening) leaves
      topology. If this flag is <code>false</code>, listeners will be unregistered only when
      <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> method is called, or the <code>'callback (locLsnr)'</code>
      passed in returns <code>false</code>.</dd>
<dd><code>locLsnr</code> - Callback that is called on local node. If this predicate returns <code>true</code>,
      the implementation will continue listening to events. Otherwise, events
      listening will be stopped and listeners will be unregistered on all nodes
      in the cluster group. If <code>null</code>, this events will be handled on remote nodes by
      passed in <code>rmtFilter</code> until local node stops (if <code>'autoUnsubscribe'</code> is <code>true</code>)
      or until <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> is called.</dd>
<dd><code>rmtFilter</code> - Filter callback that is called on remote node. Only events that pass the remote filter
      will be sent to local node. If <code>null</code>, all events of specified types will
      be sent to local node. This remote filter can be used to pre-handle events remotely,
      before they are passed in to local callback. It will be auto-unsubsribed on the node
      where event occurred in case if it returns <code>false</code>.</dd>
<dd><code>types</code> - Types of events to listen for. If not provided, all events that pass the
      provided remote filter will be sent to local node.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation. The completed future contains
      <code>Operation ID</code> that can be passed to <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a>
      or <a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a> methods to stop listening.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to add listener.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListen-java.util.UUID-"><code>stopRemoteListen(UUID)</code></a>, 
<a href="../../../org/apache/ignite/IgniteEvents.html#stopRemoteListenAsync-java.util.UUID-"><code>stopRemoteListenAsync(UUID)</code></a></dd>
</dl>
</li>
</ul>
<a name="stopRemoteListen-java.util.UUID-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopRemoteListen</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
void&nbsp;stopRemoteListen(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;opId)
                                     throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Stops listening to remote events. This will unregister all listeners identified with provided
 operation ID on all nodes defined by <a href="../../../org/apache/ignite/IgniteEvents.html#clusterGroup--"><code>clusterGroup()</code></a>.
 <p>
 Supports asynchronous execution (see <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang"><code>IgniteAsyncSupport</code></a>).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>opId</code> - Operation ID that was returned from
      <a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListen(IgniteBiPredicate, IgnitePredicate, int...)</code></a> method.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to stop listeners.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListen(IgniteBiPredicate, IgnitePredicate, int...)</code></a>, 
<a href="../../../org/apache/ignite/IgniteEvents.html#remoteListenAsync-int-long-boolean-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListenAsync(int, long, boolean, IgniteBiPredicate, IgnitePredicate, int...)</code></a></dd>
</dl>
</li>
</ul>
<a name="stopRemoteListenAsync-java.util.UUID-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopRemoteListenAsync</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Void.html?is-external=true" title="class or interface in java.lang">Void</a><span class='angle_bracket'>&gt;</span>&nbsp;stopRemoteListenAsync(<a href="http://docs.oracle.com/javase/8/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;opId)
                                  throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Asynchronously stops listening to remote events. This will unregister all listeners identified with provided
 operation ID on all nodes defined by <a href="../../../org/apache/ignite/IgniteEvents.html#clusterGroup--"><code>clusterGroup()</code></a>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>opId</code> - Operation ID that was returned from
      <a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListen(IgniteBiPredicate, IgnitePredicate, int...)</code></a> method.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to stop listeners.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../org/apache/ignite/IgniteEvents.html#remoteListen-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListen(IgniteBiPredicate, IgnitePredicate, int...)</code></a>, 
<a href="../../../org/apache/ignite/IgniteEvents.html#remoteListenAsync-int-long-boolean-org.apache.ignite.lang.IgniteBiPredicate-org.apache.ignite.lang.IgnitePredicate-int...-"><code>remoteListenAsync(int, long, boolean, IgniteBiPredicate, IgnitePredicate, int...)</code></a></dd>
</dl>
</li>
</ul>
<a name="waitForLocal-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>waitForLocal</h4>
<pre><a href="../../../org/apache/ignite/lang/IgniteAsyncSupported.html" title="annotation in org.apache.ignite.lang">@IgniteAsyncSupported</a>
<span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;T&nbsp;waitForLocal(@Nullable
                                                       @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;filter,
                                                       @Nullable
                                                       int...&nbsp;types)
                                                throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Waits for the specified events.
 <p>
 Supports asynchronous execution (see <a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang"><code>IgniteAsyncSupport</code></a>).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filter</code> - Optional filtering predicate. Only if predicates evaluates to <code>true</code> will the event
      end the wait.</dd>
<dd><code>types</code> - Types of the events to wait for. If not provided, all events will be passed to the filter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Grid event.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If wait was interrupted.</dd>
</dl>
</li>
</ul>
<a name="waitForLocalAsync-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>waitForLocalAsync</h4>
<pre><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="../../../org/apache/ignite/lang/IgniteFuture.html" title="interface in org.apache.ignite.lang">IgniteFuture</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;waitForLocalAsync(@Nullable
                                                    @Nullable <a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;filter,
                                                    @Nullable
                                                    int...&nbsp;types)
                                             throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Create future to wait for the specified events.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>filter</code> - Optional filtering predicate. Only if predicates evaluates to <code>true</code> will the event
      end the wait.</dd>
<dd><code>types</code> - Types of the events to wait for. If not provided, all events will be passed to the filter.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a Future representing pending completion of the operation. The completed future contains grid event.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If wait was interrupted.</dd>
</dl>
</li>
</ul>
<a name="localQuery-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localQuery</h4>
<pre><span class='angle_bracket'>&lt;</span>T extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;localQuery(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>T<span class='angle_bracket'>&gt;</span>&nbsp;p,
                                           @Nullable
                                           int...&nbsp;types)</pre>
<div class="block">Queries local node for events using passed-in predicate filter for event selection.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>p</code> - Predicate to filter events. All predicates must be satisfied for the
      event to be returned.</dd>
<dd><code>types</code> - Event types to be queried.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Collection of grid events found on local node.</dd>
</dl>
</li>
</ul>
<a name="recordLocal-org.apache.ignite.events.Event-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>recordLocal</h4>
<pre>void&nbsp;recordLocal(<a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a>&nbsp;evt)</pre>
<div class="block">Records customer user generated event. All registered local listeners will be notified.
 <p>
 NOTE: all types in range <b>from 1 to 1000 are reserved</b> for
 internal Ignite events and should not be used by user-defined events.
 Attempt to record internal event with this method will cause <code>IllegalArgumentException</code>
 to be thrown.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>evt</code> - Locally generated event.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - If event type is within Ignite reserved range between <code>1</code> and
      <code>1000</code>.</dd>
</dl>
</li>
</ul>
<a name="localListen-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localListen</h4>
<pre>void&nbsp;localListen(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>? extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;lsnr,
                 int...&nbsp;types)</pre>
<div class="block">Adds an event listener for local events. Note that listener will be added regardless of whether
 local node is in this cluster group or not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lsnr</code> - Predicate that is called on each received event. If predicate returns <code>false</code>,
      it will be unregistered and will stop receiving events.</dd>
<dd><code>types</code> - Event types for which this listener will be notified.</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/IllegalArgumentException.html?is-external=true" title="class or interface in java.lang">IllegalArgumentException</a></code> - Thrown in case when passed in array of event types is empty.</dd>
</dl>
</li>
</ul>
<a name="stopLocalListen-org.apache.ignite.lang.IgnitePredicate-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopLocalListen</h4>
<pre>boolean&nbsp;stopLocalListen(<a href="../../../org/apache/ignite/lang/IgnitePredicate.html" title="interface in org.apache.ignite.lang">IgnitePredicate</a><span class='angle_bracket'>&lt;</span>? extends <a href="../../../org/apache/ignite/events/Event.html" title="interface in org.apache.ignite.events">Event</a><span class='angle_bracket'>&gt;</span>&nbsp;lsnr,
                        @Nullable
                        int...&nbsp;types)</pre>
<div class="block">Removes local event listener.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>lsnr</code> - Local event listener to remove.</dd>
<dd><code>types</code> - Types of events for which to remove listener. If not specified,
      then listener will be removed for all types it was registered for.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>true</code> if listener was removed, <code>false</code> otherwise.</dd>
</dl>
</li>
</ul>
<a name="enableLocal-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enableLocal</h4>
<pre>void&nbsp;enableLocal(int...&nbsp;types)</pre>
<div class="block">Enables provided events. Allows to start recording events that
 were disabled before. Note that specified events will be enabled
 regardless of whether local node is in this cluster group or not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>types</code> - Events to enable.</dd>
</dl>
</li>
</ul>
<a name="disableLocal-int...-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableLocal</h4>
<pre>void&nbsp;disableLocal(int...&nbsp;types)</pre>
<div class="block">Disables provided events. Allows to stop recording events that
 were enabled before. Note that specified events will be disabled
 regardless of whether local node is in this cluster group or not.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>types</code> - Events to disable.</dd>
</dl>
</li>
</ul>
<a name="enabledEvents--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enabledEvents</h4>
<pre>int[]&nbsp;enabledEvents()</pre>
<div class="block">Gets types of enabled events.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Types of enabled events.</dd>
</dl>
</li>
</ul>
<a name="isEnabled-int-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEnabled</h4>
<pre>boolean&nbsp;isEnabled(int&nbsp;type)</pre>
<div class="block">Check if event is enabled.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>type</code> - Event type.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd><code>True</code> if event of passed in type is enabled.</dd>
</dl>
</li>
</ul>
<a name="withAsync--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>withAsync</h4>
<pre><a href="http://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
<a href="../../../org/apache/ignite/IgniteEvents.html" title="interface in org.apache.ignite">IgniteEvents</a>&nbsp;withAsync()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Gets instance of this component with asynchronous mode enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html#withAsync--">withAsync</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/ignite/lang/IgniteAsyncSupport.html" title="interface in org.apache.ignite.lang">IgniteAsyncSupport</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Instance of this component with asynchronous mode enabled.</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="class-use/IgniteEvents.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="../../../org/apache/ignite/IgniteDeploymentException.html" title="class in org.apache.ignite"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/ignite/IgniteEvents.html" target="_top">Frames</a></li>
<li><a href="IgniteEvents.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 ======= -->
<p class="legalCopy"><small><table width="100%" border="0" cellspacing=0 cellpadding=0 style="padding: 5px">                                     <tr>                                         <td>                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <a target=_blank href="https://ignite.apache.org"><nobr>2020 Copyright &#169; Apache Software Foundation</nobr></a>                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                         <td width="100%" align="right" valign="center">                                             <a href="https://twitter.com/ApacheIgnite" class="twitter-follow-button" data-show-count="false" data-size="large">Follow @ApacheIgnite</a>                                         </td>                                     </tr>                                     <tr>                                         <td colspan="2" valign="top" align="left">                                             <table style="padding-left: 0; margin: 0">                                                 <tbody style="padding: 0; margin: 0">                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Ignite Database and Caching Platform</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>2.8.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             February 27 2020                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
