blob: 320a49fdb268bdf92fdf639cce70105e06b32141 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX">
<link rel="canonical" href="https://ignite.apache.org/releases/1.0.0-rc3/javadoc/org/apache/ignite/IgniteMessaging.html" />
<!-- Generated by javadoc (version 1.7.0_21) on Tue Mar 24 10:27:29 MSK 2015 -->
<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">
<title>IgniteMessaging (Ignite 1.0.0-RC3)</title>
<meta name="date" content="2015-03-24">
<link rel="stylesheet" type="text/css" href="../../../javadoc.css" title="Style">
<link rel='shortcut icon' href='http://gridgain.com/wp-content/uploads/2014/09/favicon.ico'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shCore.css'/>
<link type='text/css' rel='stylesheet' href='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/styles/shThemeDefault.css'/>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shLegacy.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJava.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushPlain.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushJScript.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushBash.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushXml.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushScala.js'></script>
<script type='text/javascript' src='http://gridgain.com/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shBrushGroovy.js'></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-61232409-1', 'auto');
ga('send', 'pageview');
</script></head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="IgniteMessaging (Ignite 1.0.0-RC3)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IgniteMessaging.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 class="aboutLanguage"><em>Apache Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/ignite/IgniteLogger.html" title="interface in org.apache.ignite"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteQueue.html" title="interface in org.apache.ignite"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/ignite/IgniteMessaging.html" target="_top">Frames</a></li>
<li><a href="IgniteMessaging.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><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 IgniteMessaging" class="title">Interface IgniteMessaging</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="strong">IgniteMessaging</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 topic-based message exchange among nodes defined by <a href="../../../org/apache/ignite/IgniteMessaging.html#clusterGroup()"><code>clusterGroup()</code></a>.
Users can send ordered and unordered messages to various topics. Note that same topic name
cannot be reused between ordered and unordered messages. Instance of <code>GridMessaging</code>
is obtained from grid projection as follows:
<pre name="code" class="java">
GridMessaging m = Ignition.ignite().message();
</pre>
<p>
There are <code>2</code> ways to subscribe to message listening, <code>local</code> and <code>remote</code>.
<p>
Local subscription, defined by <a href="../../../org/apache/ignite/IgniteMessaging.html#localListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)"><code>localListen(Object, IgniteBiPredicate)</code></a> method, will add
a listener for a given topic on local node only. This listener will be notified whenever any
node within grid projection will send a message for a given topic to this node. Local listen
subscription will happen regardless of whether local node belongs to this grid projection or not.
<p>
Remote subscription, defined by <a href="../../../org/apache/ignite/IgniteMessaging.html#remoteListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)"><code>remoteListen(Object, IgniteBiPredicate)</code></a>, will add a
message listener for a given topic to all nodes in the projection (possibly including this node if
it belongs to the projection as well). This means that any node within this grid projection can send
a message for a given topic and all nodes within projection will receive listener notification.
<h1 class="header">Ordered vs Unordered</h1>
Ignite allows for sending ordered messages (see <a href="../../../org/apache/ignite/IgniteMessaging.html#sendOrdered(java.lang.Object, java.lang.Object, long)"><code>sendOrdered(Object, Object, long)</code></a>), i.e.
messages will be received in the same order they were sent. Ordered messages have a <code>timeout</code>
parameter associated with them which specifies how long an out-of-order message will stay in a queue,
waiting for messages that are ordered ahead of it to arrive. If timeout expires, then all ordered
messages for a given topic that have not arrived yet will be skipped. When (and if) expired messages
actually do arrive, they will be ignored.</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="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr 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><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#clusterGroup()">clusterGroup</a></strong>()</code>
<div class="block">Gets grid projection to which this <code>GridMessaging</code> instance belongs.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#localListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)">localListen</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<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/7/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;p)</code>
<div class="block">Adds local listener for given topic on local node only.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#remoteListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)">remoteListen</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<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/7/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;p)</code>
<div class="block">Adds a message listener for a given topic to all nodes in the projection (possibly including
this node if it belongs to the projection as well).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#send(java.lang.Object, java.util.Collection)">send</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a><span class='angle_bracket'>&lt;</span>?<span class='angle_bracket'>&gt;</span>&nbsp;msgs)</code>
<div class="block">Sends given messages with specified topic to the nodes in this projection.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#send(java.lang.Object, java.lang.Object)">send</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;msg)</code>
<div class="block">Sends given message with specified topic to the nodes in this projection.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#sendOrdered(java.lang.Object, java.lang.Object, long)">sendOrdered</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;msg,
long&nbsp;timeout)</code>
<div class="block">Sends given message with specified topic to the nodes in this projection.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#stopLocalListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)">stopLocalListen</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<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/7/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;p)</code>
<div class="block">Unregisters local listener for given topic on local node only.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#stopRemoteListen(java.util.UUID)">stopRemoteListen</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;opId)</code>
<div class="block">Unregisters all listeners identified with provided operation ID on all nodes in this projection.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="../../../org/apache/ignite/IgniteMessaging.html" title="interface in org.apache.ignite">IgniteMessaging</a></code></td>
<td class="colLast"><code><strong><a href="../../../org/apache/ignite/IgniteMessaging.html#withAsync()">withAsync</a></strong>()</code>
<div class="block">Gets component with asynchronous mode enabled.</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 grid projection to which this <code>GridMessaging</code> instance belongs.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Grid projection to which this <code>GridMessaging</code> instance belongs.</dd></dl>
</li>
</ul>
<a name="send(java.lang.Object, java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre>void&nbsp;send(@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;msg)
throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Sends given message with specified topic to the nodes in this projection.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topic</code> - Topic to send to, <code>null</code> for default topic.</dd><dd><code>msg</code> - Message to send.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to send a message to any of the nodes.</dd>
<dd><code><a href="../../../org/apache/ignite/cluster/ClusterGroupEmptyException.html" title="class in org.apache.ignite.cluster">ClusterGroupEmptyException</a></code> - Thrown in case when cluster group is empty.</dd></dl>
</li>
</ul>
<a name="send(java.lang.Object, java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>send</h4>
<pre>void&nbsp;send(@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Collection.html?is-external=true" title="class or interface in java.util">Collection</a><span class='angle_bracket'>&lt;</span>?<span class='angle_bracket'>&gt;</span>&nbsp;msgs)
throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Sends given messages with specified topic to the nodes in this projection.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topic</code> - Topic to send to, <code>null</code> for default topic.</dd><dd><code>msgs</code> - Messages to send. Order of the sending is undefined. If the method produces
the exception none or some messages could have been sent already.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to send a message to any of the nodes.</dd>
<dd><code><a href="../../../org/apache/ignite/cluster/ClusterGroupEmptyException.html" title="class in org.apache.ignite.cluster">ClusterGroupEmptyException</a></code> - Thrown in case when cluster group is empty.</dd></dl>
</li>
</ul>
<a name="sendOrdered(java.lang.Object, java.lang.Object, long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sendOrdered</h4>
<pre>void&nbsp;sendOrdered(@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;msg,
long&nbsp;timeout)
throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Sends given message with specified topic to the nodes in this projection. Messages sent with
this method will arrive in the same order they were sent. Note that if a topic is used
for ordered messages, then it cannot be reused for non-ordered messages.
<p>
The <code>timeout</code> parameter specifies how long an out-of-order message will stay in a queue,
waiting for messages that are ordered ahead of it to arrive. If timeout expires, then all ordered
messages that have not arrived before this message will be skipped. When (and if) expired messages
actually do arrive, they will be ignored.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topic</code> - Topic to send to, <code>null</code> for default topic.</dd><dd><code>msg</code> - Message to send.</dd><dd><code>timeout</code> - Message timeout in milliseconds, <code>0</code> for default
which is <a href="../../../org/apache/ignite/configuration/IgniteConfiguration.html#getNetworkTimeout()"><code>IgniteConfiguration.getNetworkTimeout()</code></a>.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to send a message to any of the nodes.</dd>
<dd><code><a href="../../../org/apache/ignite/cluster/ClusterGroupEmptyException.html" title="class in org.apache.ignite.cluster">ClusterGroupEmptyException</a></code> - Thrown in case when cluster group is empty.</dd></dl>
</li>
</ul>
<a name="localListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localListen</h4>
<pre>void&nbsp;localListen(@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<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/7/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;p)</pre>
<div class="block">Adds local listener for given topic on local node only. This listener will be notified whenever any
node within grid projection will send a message for a given topic to this node. Local listen
subscription will happen regardless of whether local node belongs to this grid projection or not.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topic</code> - Topic to subscribe to.</dd><dd><code>p</code> - Predicate that is called on each received message. If predicate returns <code>false</code>,
then it will be unsubscribed from any further notifications.</dd></dl>
</li>
</ul>
<a name="stopLocalListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stopLocalListen</h4>
<pre>void&nbsp;stopLocalListen(@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<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/7/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;p)</pre>
<div class="block">Unregisters local listener for given topic on local node only.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topic</code> - Topic to unsubscribe from.</dd><dd><code>p</code> - Listener predicate.</dd></dl>
</li>
</ul>
<a name="remoteListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)">
<!-- -->
</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>
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/UUID.html?is-external=true" title="class or interface in java.util">UUID</a>&nbsp;remoteListen(@Nullable
<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>&nbsp;topic,
<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/7/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;p)
throws <a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Adds a message listener for a given topic to all nodes in the projection (possibly including
this node if it belongs to the projection as well). This means that any node within this grid
projection can send a message for a given topic and all nodes within projection will receive
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="strong">Parameters:</span></dt><dd><code>topic</code> - Topic to subscribe to, <code>null</code> means default topic.</dd><dd><code>p</code> - Predicate that is called on each node for each received message. If predicate returns <code>false</code>,
then it will be unsubscribed from any further notifications.</dd>
<dt><span class="strong">Returns:</span></dt><dd><code>Operation ID</code> that can be passed to <a href="../../../org/apache/ignite/IgniteMessaging.html#stopRemoteListen(java.util.UUID)"><code>stopRemoteListen(UUID)</code></a> method to stop listening.</dd>
<dt><span class="strong">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="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/7/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">Unregisters all listeners identified with provided operation ID on all nodes in this projection.
<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="strong">Parameters:</span></dt><dd><code>opId</code> - Listen ID that was returned from <a href="../../../org/apache/ignite/IgniteMessaging.html#remoteListen(java.lang.Object, org.apache.ignite.lang.IgniteBiPredicate)"><code>remoteListen(Object, IgniteBiPredicate)</code></a> method.</dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></code> - If failed to unregister listeners.</dd></dl>
</li>
</ul>
<a name="withAsync()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>withAsync</h4>
<pre><a href="../../../org/apache/ignite/IgniteMessaging.html" title="interface in org.apache.ignite">IgniteMessaging</a>&nbsp;withAsync()</pre>
<div class="block">Gets component with asynchronous mode enabled.</div>
<dl>
<dt><strong>Specified by:</strong></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="strong">Returns:</span></dt><dd>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><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/IgniteMessaging.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 class="aboutLanguage"><em>Apache Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/ignite/IgniteLogger.html" title="interface in org.apache.ignite"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../org/apache/ignite/IgniteQueue.html" title="interface in org.apache.ignite"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/ignite/IgniteMessaging.html" target="_top">Frames</a></li>
<li><a href="IgniteMessaging.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li>Constr&nbsp;|&nbsp;</li>
<li><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://incubator.apache.org/projects/ignite.html"><nobr>2015 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> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script> </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>Apache Ignite Fabric</b> </td> <td>:&nbsp;&nbsp; ver. <strong>1.0.0-RC3</strong> </td> </tr> <tr style="padding: 0; margin: 0"> <td> <b>Release Date</b> </td> <td>:&nbsp;&nbsp; March 24 2015 </td> </tr> </tbody> </table> </td> </tr> </table></small></p>
<!--FOOTER--><script type='text/javascript'>SyntaxHighlighter.all();dp.SyntaxHighlighter.HighlightAll('code');</script>
</body>
</html>