<!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/1.8.0/javadoc/org/apache/ignite/stream/mqtt/MqttStreamer.html" />
<META NAME="ROBOTS" CONTENT="NOINDEX">

<!-- Generated by javadoc (version 1.7.0_80) on Mon Dec 05 14:49:09 MSK 2016 -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>MqttStreamer (Ignite 1.8.0)</title>
<meta name="date" content="2016-12-05">
<link rel="stylesheet" type="text/css" href="../../../../../javadoc.css" title="Style">

<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="MqttStreamer (Ignite 1.8.0)";
    }
//-->
</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/MqttStreamer.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>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li>Next Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/ignite/stream/mqtt/MqttStreamer.html" target="_top">Frames</a></li>
<li><a href="MqttStreamer.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><a href="#constructor_summary">Constr</a>&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><a href="#constructor_detail">Constr</a>&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.stream.mqtt</div>
<h2 title="Class MqttStreamer" class="title">Class MqttStreamer&lt;K,V&gt;</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../org/apache/ignite/stream/StreamAdapter.html" title="class in org.apache.ignite.stream">org.apache.ignite.stream.StreamAdapter</a>&lt;org.eclipse.paho.client.mqttv3.MqttMessage,K,V&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.ignite.stream.mqtt.MqttStreamer&lt;K,V&gt;</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd>org.eclipse.paho.client.mqttv3.MqttCallback</dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">MqttStreamer&lt;K,V&gt;</span>
extends <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html" title="class in org.apache.ignite.stream">StreamAdapter</a>&lt;org.eclipse.paho.client.mqttv3.MqttMessage,K,V&gt;
implements org.eclipse.paho.client.mqttv3.MqttCallback</pre>
<div class="block">Streamer that consumes from a MQTT topic and feeds key-value pairs into an <a href="../../../../../org/apache/ignite/IgniteDataStreamer.html" title="interface in org.apache.ignite"><code>IgniteDataStreamer</code></a> instance,
 using Eclipse Paho as an MQTT client.
 <p>
 You must also provide a <a href="../../../../../org/apache/ignite/stream/StreamSingleTupleExtractor.html" title="interface in org.apache.ignite.stream"><code>StreamSingleTupleExtractor</code></a> or a <a href="../../../../../org/apache/ignite/stream/StreamMultipleTupleExtractor.html" title="interface in org.apache.ignite.stream"><code>StreamMultipleTupleExtractor</code></a> to extract
 cache tuples out of the incoming message.
 <p>
 This Streamer has many features:

 <ul>
     <li>Subscribing to a single topic or multiple topics at once.</li>
     <li>Specifying the subscriber's QoS for a single topic or for multiple topics.</li>
     <li>Allows setting <code>MqttConnectOptions</code> to support features like last will testament, persistent
         sessions, etc.</li>
     <li>Specifying the client ID. A random one will be generated and maintained throughout reconnections if the user
         does not provide one.</li>
     <li>(Re-)Connection retries based on the <i>guava-retrying</i> library. Retry wait and retry stop policies
         can be configured.</li>
     <li>Blocking the start() method until connected for the first time.</li>
 </ul>

 Note: features like durable subscriptions, last will testament, etc. can be configured via the
 <a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setConnectOptions(org.eclipse.paho.client.mqttv3.MqttConnectOptions)"><code>setConnectOptions(MqttConnectOptions)</code></a> setter.</div>
<dl><dt><span class="strong">See Also:</span></dt><dd><a href="https://github.com/rholder/guava-retrying">guava-retrying library</a></dd></dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#MqttStreamer()">MqttStreamer</a></strong>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== 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>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#connectionLost(java.lang.Throwable)">connectionLost</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</code>
<div class="block">Implements the <code>MqttCallback.connectionLost(Throwable)</code> callback method for the MQTT client to inform the
 streamer that the connection has been lost.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken)">deliveryComplete</a></strong>(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken&nbsp;token)</code>
<div class="block">Empty implementation of <code>MqttCallback.deliveryComplete(IMqttDeliveryToken)</code>.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getBrokerUrl()">getBrokerUrl</a></strong>()</code>
<div class="block">Gets the broker URL.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getClientId()">getClientId</a></strong>()</code>
<div class="block">Gets the client ID, either the one set by the user or the automatically generated one.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>org.eclipse.paho.client.mqttv3.MqttConnectOptions</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getConnectOptions()">getConnectOptions</a></strong>()</code>
<div class="block">Gets the currently used MQTT client connect options.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getDisconnectForciblyTimeout()">getDisconnectForciblyTimeout</a></strong>()</code>
<div class="block">Gets the timeout if disconnecting forcibly.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getDisconnectQuiesceTimeout()">getDisconnectQuiesceTimeout</a></strong>()</code>
<div class="block">Gets the disconnect quiesce timeout.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>org.eclipse.paho.client.mqttv3.MqttClientPersistence</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getPersistence()">getPersistence</a></strong>()</code>
<div class="block">Gets the currently set persistence mechanism.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getQualitiesOfService()">getQualitiesOfService</a></strong>()</code>
<div class="block">Gets the qualities of service for multiple topics.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getQualityOfService()">getQualityOfService</a></strong>()</code>
<div class="block">Gets the quality of service set by the user for a single topic consumption.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>com.github.rholder.retry.StopStrategy</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getRetryStopStrategy()">getRetryStopStrategy</a></strong>()</code>
<div class="block">Gets the retry stop strategy.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>com.github.rholder.retry.WaitStrategy</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getRetryWaitStrategy()">getRetryWaitStrategy</a></strong>()</code>
<div class="block">Gets the retry wait strategy.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getTopic()">getTopic</a></strong>()</code>
<div class="block">Gets the subscribed topic.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code><a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#getTopics()">getTopics</a></strong>()</code>
<div class="block">Gets the topics subscribed to.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#isBlockUntilConnected()">isBlockUntilConnected</a></strong>()</code>
<div class="block">Gets whether to block the start() method until connected for the first time.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#isConnected()">isConnected</a></strong>()</code>
<div class="block">Returns whether this streamer is connected by delegating to the underlying <code>MqttClient.isConnected()</code></div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#isDisconnectForcibly()">isDisconnectForcibly</a></strong>()</code>
<div class="block">Gets whether this MQTT client will disconnect forcibly when shutting down.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#isStopped()">isStopped</a></strong>()</code>
<div class="block">Returns whether this streamer is stopped.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#messageArrived(java.lang.String,%20org.eclipse.paho.client.mqttv3.MqttMessage)">messageArrived</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;topic,
              org.eclipse.paho.client.mqttv3.MqttMessage&nbsp;message)</code>
<div class="block">Implements the <code>MqttCallback.messageArrived(String, MqttMessage)</code> to receive an MQTT message.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setBlockUntilConnected(boolean)">setBlockUntilConnected</a></strong>(boolean&nbsp;blockUntilConnected)</code>
<div class="block">Sets whether to block the start() method until connected for the first time.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setBrokerUrl(java.lang.String)">setBrokerUrl</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;brokerUrl)</code>
<div class="block">Sets the broker URL (compulsory).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setClientId(java.lang.String)">setClientId</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clientId)</code>
<div class="block">Sets the MQTT client ID (optional).</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setConnectOptions(org.eclipse.paho.client.mqttv3.MqttConnectOptions)">setConnectOptions</a></strong>(org.eclipse.paho.client.mqttv3.MqttConnectOptions&nbsp;connectOptions)</code>
<div class="block">Sets the MQTT client connect options, where users can configured the last will and testament, durability, etc.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setDisconnectForcibly(boolean)">setDisconnectForcibly</a></strong>(boolean&nbsp;disconnectForcibly)</code>
<div class="block">Sets whether to disconnect forcibly or not when shutting down.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setDisconnectForciblyTimeout(java.lang.Integer)">setDisconnectForciblyTimeout</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;disconnectForciblyTimeout)</code>
<div class="block">Sets the timeout if disconnecting forcibly.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setDisconnectQuiesceTimeout(java.lang.Integer)">setDisconnectQuiesceTimeout</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;disconnectQuiesceTimeout)</code>
<div class="block">Sets the quiesce timeout on disconnection.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setPersistence(org.eclipse.paho.client.mqttv3.MqttClientPersistence)">setPersistence</a></strong>(org.eclipse.paho.client.mqttv3.MqttClientPersistence&nbsp;persistence)</code>
<div class="block">Sets the persistence mechanism.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setQualitiesOfService(java.util.List)">setQualitiesOfService</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;qualitiesOfService)</code>
<div class="block">Sets the qualities of service to use for multiple topic subscriptions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setQualityOfService(java.lang.Integer)">setQualityOfService</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;qualityOfService)</code>
<div class="block">Sets the quality of service to use for a single topic subscription (optional).</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setRetryStopStrategy(com.github.rholder.retry.StopStrategy)">setRetryStopStrategy</a></strong>(com.github.rholder.retry.StopStrategy&nbsp;retryStopStrategy)</code>
<div class="block">Sets the strategy to determine when to stop retrying to (re-)connect.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setRetryWaitStrategy(com.github.rholder.retry.WaitStrategy)">setRetryWaitStrategy</a></strong>(com.github.rholder.retry.WaitStrategy&nbsp;retryWaitStrategy)</code>
<div class="block">Sets the strategy to determine how long to wait between retry attempts.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setTopic(java.lang.String)">setTopic</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;topic)</code>
<div class="block">Sets the topic to subscribe to, if a single topic.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#setTopics(java.util.List)">setTopics</a></strong>(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;topics)</code>
<div class="block">Sets the topics to subscribe to, if many.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#start()">start</a></strong>()</code>
<div class="block">Starts streamer.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#stop()">stop</a></strong>()</code>
<div class="block">Stops streamer.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_org.apache.ignite.stream.StreamAdapter">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.ignite.stream.<a href="../../../../../org/apache/ignite/stream/StreamAdapter.html" title="class in org.apache.ignite.stream">StreamAdapter</a></h3>
<code><a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#addMessage(T)">addMessage</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#getIgnite()">getIgnite</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#getMultipleTupleExtractor()">getMultipleTupleExtractor</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#getSingleTupleExtractor()">getSingleTupleExtractor</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#getStreamer()">getStreamer</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#getTupleExtractor()">getTupleExtractor</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#setIgnite(org.apache.ignite.Ignite)">setIgnite</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#setMultipleTupleExtractor(org.apache.ignite.stream.StreamMultipleTupleExtractor)">setMultipleTupleExtractor</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#setSingleTupleExtractor(org.apache.ignite.stream.StreamSingleTupleExtractor)">setSingleTupleExtractor</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#setStreamer(org.apache.ignite.IgniteDataStreamer)">setStreamer</a>, <a href="../../../../../org/apache/ignite/stream/StreamAdapter.html#setTupleExtractor(org.apache.ignite.stream.StreamTupleExtractor)">setTupleExtractor</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<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></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait(long,%20int)" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="MqttStreamer()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>MqttStreamer</h4>
<pre>public&nbsp;MqttStreamer()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="start()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>start</h4>
<pre>public&nbsp;void&nbsp;start()
           throws <a href="../../../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Starts streamer.</div>
<dl><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.</dd></dl>
</li>
</ul>
<a name="stop()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre>public&nbsp;void&nbsp;stop()
          throws <a href="../../../../../org/apache/ignite/IgniteException.html" title="class in org.apache.ignite">IgniteException</a></pre>
<div class="block">Stops streamer.</div>
<dl><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.</dd></dl>
</li>
</ul>
<a name="connectionLost(java.lang.Throwable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>connectionLost</h4>
<pre>public&nbsp;void&nbsp;connectionLost(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Throwable.html?is-external=true" title="class or interface in java.lang">Throwable</a>&nbsp;throwable)</pre>
<div class="block">Implements the <code>MqttCallback.connectionLost(Throwable)</code> callback method for the MQTT client to inform the
 streamer that the connection has been lost.

 </div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>connectionLost</code>&nbsp;in interface&nbsp;<code>org.eclipse.paho.client.mqttv3.MqttCallback</code></dd>
</dl>
</li>
</ul>
<a name="messageArrived(java.lang.String, org.eclipse.paho.client.mqttv3.MqttMessage)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>messageArrived</h4>
<pre>public&nbsp;void&nbsp;messageArrived(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;topic,
                  org.eclipse.paho.client.mqttv3.MqttMessage&nbsp;message)
                    throws <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></pre>
<div class="block">Implements the <code>MqttCallback.messageArrived(String, MqttMessage)</code> to receive an MQTT message.

 </div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>messageArrived</code>&nbsp;in interface&nbsp;<code>org.eclipse.paho.client.mqttv3.MqttCallback</code></dd>
<dt><span class="strong">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Exception.html?is-external=true" title="class or interface in java.lang">Exception</a></code></dd></dl>
</li>
</ul>
<a name="deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deliveryComplete</h4>
<pre>public&nbsp;void&nbsp;deliveryComplete(org.eclipse.paho.client.mqttv3.IMqttDeliveryToken&nbsp;token)</pre>
<div class="block">Empty implementation of <code>MqttCallback.deliveryComplete(IMqttDeliveryToken)</code>.

 Not required by the streamer as it doesn't produce messages.

 </div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code>deliveryComplete</code>&nbsp;in interface&nbsp;<code>org.eclipse.paho.client.mqttv3.MqttCallback</code></dd>
</dl>
</li>
</ul>
<a name="setBrokerUrl(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBrokerUrl</h4>
<pre>public&nbsp;void&nbsp;setBrokerUrl(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;brokerUrl)</pre>
<div class="block">Sets the broker URL (compulsory).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>brokerUrl</code> - The Broker URL (compulsory).</dd></dl>
</li>
</ul>
<a name="getBrokerUrl()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBrokerUrl</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getBrokerUrl()</pre>
<div class="block">Gets the broker URL.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The Broker URL.</dd></dl>
</li>
</ul>
<a name="setTopic(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTopic</h4>
<pre>public&nbsp;void&nbsp;setTopic(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;topic)</pre>
<div class="block">Sets the topic to subscribe to, if a single topic.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topic</code> - The topic to subscribe to.</dd></dl>
</li>
</ul>
<a name="getTopic()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTopic</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getTopic()</pre>
<div class="block">Gets the subscribed topic.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The subscribed topic.</dd></dl>
</li>
</ul>
<a name="setQualityOfService(java.lang.Integer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setQualityOfService</h4>
<pre>public&nbsp;void&nbsp;setQualityOfService(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;qualityOfService)</pre>
<div class="block">Sets the quality of service to use for a single topic subscription (optional).</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>qualityOfService</code> - The quality of service.</dd></dl>
</li>
</ul>
<a name="getQualityOfService()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQualityOfService</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;getQualityOfService()</pre>
<div class="block">Gets the quality of service set by the user for a single topic consumption.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The quality of service.</dd></dl>
</li>
</ul>
<a name="setTopics(java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTopics</h4>
<pre>public&nbsp;void&nbsp;setTopics(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;topics)</pre>
<div class="block">Sets the topics to subscribe to, if many.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>topics</code> - The topics.</dd></dl>
</li>
</ul>
<a name="getTopics()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTopics</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;getTopics()</pre>
<div class="block">Gets the topics subscribed to.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The topics subscribed to.</dd></dl>
</li>
</ul>
<a name="setQualitiesOfService(java.util.List)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setQualitiesOfService</h4>
<pre>public&nbsp;void&nbsp;setQualitiesOfService(<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;qualitiesOfService)</pre>
<div class="block">Sets the qualities of service to use for multiple topic subscriptions. If specified, the list must contain the
 same number of elements as <a href="../../../../../org/apache/ignite/stream/mqtt/MqttStreamer.html#topics"><code>topics</code></a>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>qualitiesOfService</code> - The qualities of service.</dd></dl>
</li>
</ul>
<a name="getQualitiesOfService()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getQualitiesOfService</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&gt;&nbsp;getQualitiesOfService()</pre>
<div class="block">Gets the qualities of service for multiple topics.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The qualities of service.</dd></dl>
</li>
</ul>
<a name="setClientId(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setClientId</h4>
<pre>public&nbsp;void&nbsp;setClientId(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;clientId)</pre>
<div class="block">Sets the MQTT client ID (optional). If one is not provided, the streamer will generate one and will maintain
 it througout any reconnection attempts.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>clientId</code> - The client ID.</dd></dl>
</li>
</ul>
<a name="getClientId()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClientId</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getClientId()</pre>
<div class="block">Gets the client ID, either the one set by the user or the automatically generated one.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The client ID.</dd></dl>
</li>
</ul>
<a name="getPersistence()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPersistence</h4>
<pre>public&nbsp;org.eclipse.paho.client.mqttv3.MqttClientPersistence&nbsp;getPersistence()</pre>
<div class="block">Gets the currently set persistence mechanism.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The persistence mechanism.</dd></dl>
</li>
</ul>
<a name="setPersistence(org.eclipse.paho.client.mqttv3.MqttClientPersistence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPersistence</h4>
<pre>public&nbsp;void&nbsp;setPersistence(org.eclipse.paho.client.mqttv3.MqttClientPersistence&nbsp;persistence)</pre>
<div class="block">Sets the persistence mechanism. If not set, Paho will use its default.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>persistence</code> - A configurable persistence mechanism.</dd></dl>
</li>
</ul>
<a name="getConnectOptions()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getConnectOptions</h4>
<pre>public&nbsp;org.eclipse.paho.client.mqttv3.MqttConnectOptions&nbsp;getConnectOptions()</pre>
<div class="block">Gets the currently used MQTT client connect options.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The MQTT client connect options.</dd></dl>
</li>
</ul>
<a name="setConnectOptions(org.eclipse.paho.client.mqttv3.MqttConnectOptions)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setConnectOptions</h4>
<pre>public&nbsp;void&nbsp;setConnectOptions(org.eclipse.paho.client.mqttv3.MqttConnectOptions&nbsp;connectOptions)</pre>
<div class="block">Sets the MQTT client connect options, where users can configured the last will and testament, durability, etc.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>connectOptions</code> - The MQTT client connect options.</dd></dl>
</li>
</ul>
<a name="setDisconnectForcibly(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisconnectForcibly</h4>
<pre>public&nbsp;void&nbsp;setDisconnectForcibly(boolean&nbsp;disconnectForcibly)</pre>
<div class="block">Sets whether to disconnect forcibly or not when shutting down. By default, it's <code>false</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>disconnectForcibly</code> - Whether to disconnect forcibly or not. By default, it's <code>false</code>.</dd></dl>
</li>
</ul>
<a name="isDisconnectForcibly()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDisconnectForcibly</h4>
<pre>public&nbsp;boolean&nbsp;isDisconnectForcibly()</pre>
<div class="block">Gets whether this MQTT client will disconnect forcibly when shutting down.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Whether to disconnect forcibly or not.</dd></dl>
</li>
</ul>
<a name="setDisconnectQuiesceTimeout(java.lang.Integer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisconnectQuiesceTimeout</h4>
<pre>public&nbsp;void&nbsp;setDisconnectQuiesceTimeout(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;disconnectQuiesceTimeout)</pre>
<div class="block">Sets the quiesce timeout on disconnection. If not provided, this streamer won't use any.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>disconnectQuiesceTimeout</code> - The disconnect quiesce timeout.</dd></dl>
</li>
</ul>
<a name="getDisconnectQuiesceTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDisconnectQuiesceTimeout</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;getDisconnectQuiesceTimeout()</pre>
<div class="block">Gets the disconnect quiesce timeout.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The disconnect quiesce timeout.</dd></dl>
</li>
</ul>
<a name="setDisconnectForciblyTimeout(java.lang.Integer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisconnectForciblyTimeout</h4>
<pre>public&nbsp;void&nbsp;setDisconnectForciblyTimeout(<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;disconnectForciblyTimeout)</pre>
<div class="block">Sets the timeout if disconnecting forcibly. Compulsory in that case.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>disconnectForciblyTimeout</code> - The disconnect forcibly timeout.</dd></dl>
</li>
</ul>
<a name="getDisconnectForciblyTimeout()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDisconnectForciblyTimeout</h4>
<pre>public&nbsp;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Integer.html?is-external=true" title="class or interface in java.lang">Integer</a>&nbsp;getDisconnectForciblyTimeout()</pre>
<div class="block">Gets the timeout if disconnecting forcibly.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>Timeout.</dd></dl>
</li>
</ul>
<a name="setRetryWaitStrategy(com.github.rholder.retry.WaitStrategy)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRetryWaitStrategy</h4>
<pre>public&nbsp;void&nbsp;setRetryWaitStrategy(com.github.rholder.retry.WaitStrategy&nbsp;retryWaitStrategy)</pre>
<div class="block">Sets the strategy to determine how long to wait between retry attempts. By default, this streamer uses a
 Fibonacci-based strategy.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>retryWaitStrategy</code> - The retry wait strategy.</dd></dl>
</li>
</ul>
<a name="getRetryWaitStrategy()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRetryWaitStrategy</h4>
<pre>public&nbsp;com.github.rholder.retry.WaitStrategy&nbsp;getRetryWaitStrategy()</pre>
<div class="block">Gets the retry wait strategy.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The retry wait strategy.</dd></dl>
</li>
</ul>
<a name="setRetryStopStrategy(com.github.rholder.retry.StopStrategy)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRetryStopStrategy</h4>
<pre>public&nbsp;void&nbsp;setRetryStopStrategy(com.github.rholder.retry.StopStrategy&nbsp;retryStopStrategy)</pre>
<div class="block">Sets the strategy to determine when to stop retrying to (re-)connect. By default, we never stop.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>retryStopStrategy</code> - The retry stop strategy.</dd></dl>
</li>
</ul>
<a name="getRetryStopStrategy()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRetryStopStrategy</h4>
<pre>public&nbsp;com.github.rholder.retry.StopStrategy&nbsp;getRetryStopStrategy()</pre>
<div class="block">Gets the retry stop strategy.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd>The retry stop strategy.</dd></dl>
</li>
</ul>
<a name="setBlockUntilConnected(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setBlockUntilConnected</h4>
<pre>public&nbsp;void&nbsp;setBlockUntilConnected(boolean&nbsp;blockUntilConnected)</pre>
<div class="block">Sets whether to block the start() method until connected for the first time. By default, it's <code>false</code>.</div>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>blockUntilConnected</code> - Whether to block or not.</dd></dl>
</li>
</ul>
<a name="isBlockUntilConnected()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isBlockUntilConnected</h4>
<pre>public&nbsp;boolean&nbsp;isBlockUntilConnected()</pre>
<div class="block">Gets whether to block the start() method until connected for the first time. By default, it's <code>false</code>.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>true</code> if should connect synchronously in start.</dd></dl>
</li>
</ul>
<a name="isStopped()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isStopped</h4>
<pre>public&nbsp;boolean&nbsp;isStopped()</pre>
<div class="block">Returns whether this streamer is stopped.</div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>true</code> if stopped; <code>false</code> if not.</dd></dl>
</li>
</ul>
<a name="isConnected()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isConnected</h4>
<pre>public&nbsp;boolean&nbsp;isConnected()</pre>
<div class="block">Returns whether this streamer is connected by delegating to the underlying <code>MqttClient.isConnected()</code></div>
<dl><dt><span class="strong">Returns:</span></dt><dd><code>true</code> if connected; <code>false</code> if not.</dd><dt><span class="strong">See Also:</span></dt><dd><code>MqttClient.isConnected()</code></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/MqttStreamer.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>Ignite - In-Memory Data Fabric</em></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev Class</li>
<li>Next Class</li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/ignite/stream/mqtt/MqttStreamer.html" target="_top">Frames</a></li>
<li><a href="MqttStreamer.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><a href="#constructor_summary">Constr</a>&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><a href="#constructor_detail">Constr</a>&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>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>Ignite Fabric</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             ver. <strong>1.8.0</strong>                                                         </td>                                                     </tr>                                                     <tr style="padding: 0; margin: 0">                                                         <td>                                                             <b>Release Date</b>                                                         </td>                                                         <td>:&nbsp;&nbsp;                                                             December 5 2016                                                         </td>                                                     </tr>                                                 </tbody>                                             </table>                                         </td>                                     </tr>                                     </table></small></p>
</body>
</html>
