| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc (1.8.0_101) on Thu Sep 01 13:59:14 BST 2016 --> |
| <title>ClientState</title> |
| <meta name="date" content="2016-09-01"> |
| <link rel="stylesheet" type="text/css" href="../../../../../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../../../../../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="ClientState"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10}; |
| var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete 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/ClientState.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-files/index-1.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/eclipse/paho/client/mqttv3/internal/ClientDefaults.html" title="class in org.eclipse.paho.client.mqttv3.internal"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/CommsCallback.html" title="class in org.eclipse.paho.client.mqttv3.internal"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/eclipse/paho/client/mqttv3/internal/ClientState.html" target="_top">Frames</a></li> |
| <li><a href="ClientState.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: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </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.eclipse.paho.client.mqttv3.internal</div> |
| <h2 title="Class ClientState" class="title">Class ClientState</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li>java.lang.Object</li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.eclipse.paho.client.mqttv3.internal.ClientState</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <hr> |
| <br> |
| <pre>public class <span class="typeNameLabel">ClientState</span> |
| extends java.lang.Object</pre> |
| <div class="block">The core of the client, which holds the state information for pending and |
| in-flight messages. |
| |
| Messages that have been accepted for delivery are moved between several objects |
| while being delivered. |
| |
| 1) When the client is not running messages are stored in a persistent store that |
| implements the MqttClientPersistent Interface. The default is MqttDefaultFilePersistencew |
| which stores messages safely across failures and system restarts. If no persistence |
| is specified there is a fall back to MemoryPersistence which will maintain the messages |
| while the Mqtt client is instantiated. |
| |
| 2) When the client or specifically ClientState is instantiated the messages are |
| read from the persistent store into: |
| - outboundqos2 hashtable if a QoS 2 PUBLISH or PUBREL |
| - outboundqos1 hashtable if a QoS 1 PUBLISH |
| (see restoreState) |
| |
| 3) On Connect, copy messages from the outbound hashtables to the pendingMessages or |
| pendingFlows vector in messageid order. |
| - Initial message publish goes onto the pendingmessages buffer. |
| - PUBREL goes onto the pendingflows buffer |
| (see restoreInflightMessages) |
| |
| 4) Sender thread reads messages from the pendingflows and pendingmessages buffer |
| one at a time. The message is removed from the pendingbuffer but remains on the |
| outbound* hashtable. The hashtable is the place where the full set of outstanding |
| messages are stored in memory. (Persistence is only used at start up) |
| |
| 5) Receiver thread - receives wire messages: |
| - if QoS 1 then remove from persistence and outboundqos1 |
| - if QoS 2 PUBREC send PUBREL. Updating the outboundqos2 entry with the PUBREL |
| and update persistence. |
| - if QoS 2 PUBCOMP remove from persistence and outboundqos2 |
| |
| Notes: |
| because of the multithreaded nature of the client it is vital that any changes to this |
| class take concurrency into account. For instance as soon as a flow / message is put on |
| the wire it is possible for the receiving thread to receive the ack and to be processing |
| the response before the sending side has finished processing. For instance a connect may |
| be sent, the conack received before the connect notify send has been processed!</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"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </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/eclipse/paho/client/mqttv3/MqttToken.html" title="class in org.eclipse.paho.client.mqttv3">MqttToken</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#checkForActivity-org.eclipse.paho.client.mqttv3.IMqttActionListener-">checkForActivity</a></span>(<a href="../../../../../../org/eclipse/paho/client/mqttv3/IMqttActionListener.html" title="interface in org.eclipse.paho.client.mqttv3">IMqttActionListener</a> pingCallback)</code> |
| <div class="block">Check and send a ping if needed and check for ping timeout.</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/eclipse/paho/client/mqttv3/internal/ClientState.html#connected--">connected</a></span>()</code> |
| <div class="block">Called when the client has successfully connected to the broker</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#disconnected-org.eclipse.paho.client.mqttv3.MqttException-">disconnected</a></span>(<a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a> reason)</code> |
| <div class="block">Called when the client has been disconnected from the broker.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#getActualInFlight--">getActualInFlight</a></span>()</code> </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>java.util.Properties</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#getDebug--">getDebug</a></span>()</code> </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#getMaxInFlight--">getMaxInFlight</a></span>()</code> </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#notifyQueueLock--">notifyQueueLock</a></span>()</code> </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#notifyReceivedBytes-int-">notifyReceivedBytes</a></span>(int receivedBytesCount)</code> </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#notifySentBytes-int-">notifySentBytes</a></span>(int sentBytesCount)</code> |
| <div class="block">COMMENTED OUT AS NO LONGER USED.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#persistBufferedMessage-org.eclipse.paho.client.mqttv3.internal.wire.MqttWireMessage-">persistBufferedMessage</a></span>(<a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/wire/MqttWireMessage.html" title="class in org.eclipse.paho.client.mqttv3.internal.wire">MqttWireMessage</a> message)</code> |
| <div class="block">Persists a buffered message to the persistence layer</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#quiesce-long-">quiesce</a></span>(long timeout)</code> |
| <div class="block">Quiesce the client state, preventing any new messages getting sent, |
| and preventing the callback on any newly received messages.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>java.util.Vector</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#resolveOldTokens-org.eclipse.paho.client.mqttv3.MqttException-">resolveOldTokens</a></span>(<a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a> reason)</code> |
| <div class="block">Called during shutdown to work out if there are any tokens still |
| to be notified and waiters to be unblocked.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#send-org.eclipse.paho.client.mqttv3.internal.wire.MqttWireMessage-org.eclipse.paho.client.mqttv3.MqttToken-">send</a></span>(<a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/wire/MqttWireMessage.html" title="class in org.eclipse.paho.client.mqttv3.internal.wire">MqttWireMessage</a> message, |
| <a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttToken.html" title="class in org.eclipse.paho.client.mqttv3">MqttToken</a> token)</code> |
| <div class="block">Submits a message for delivery.</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#setKeepAliveInterval-long-">setKeepAliveInterval</a></span>(long interval)</code> </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/ClientState.html#unPersistBufferedMessage-org.eclipse.paho.client.mqttv3.internal.wire.MqttWireMessage-">unPersistBufferedMessage</a></span>(<a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/wire/MqttWireMessage.html" title="class in org.eclipse.paho.client.mqttv3.internal.wire">MqttWireMessage</a> message)</code> </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.Object</h3> |
| <code>equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</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="send-org.eclipse.paho.client.mqttv3.internal.wire.MqttWireMessage-org.eclipse.paho.client.mqttv3.MqttToken-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>send</h4> |
| <pre>public void send(<a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/wire/MqttWireMessage.html" title="class in org.eclipse.paho.client.mqttv3.internal.wire">MqttWireMessage</a> message, |
| <a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttToken.html" title="class in org.eclipse.paho.client.mqttv3">MqttToken</a> token) |
| throws <a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a></pre> |
| <div class="block">Submits a message for delivery. This method will block until there is |
| room in the inFlightWindow for the message. The message is put into |
| persistence before returning.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>message</code> - the message to send</dd> |
| <dd><code>token</code> - the token that can be used to track delivery of the message</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="persistBufferedMessage-org.eclipse.paho.client.mqttv3.internal.wire.MqttWireMessage-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>persistBufferedMessage</h4> |
| <pre>public void persistBufferedMessage(<a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/wire/MqttWireMessage.html" title="class in org.eclipse.paho.client.mqttv3.internal.wire">MqttWireMessage</a> message)</pre> |
| <div class="block">Persists a buffered message to the persistence layer</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>message</code> - </dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttPersistenceException.html" title="class in org.eclipse.paho.client.mqttv3">MqttPersistenceException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="unPersistBufferedMessage-org.eclipse.paho.client.mqttv3.internal.wire.MqttWireMessage-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>unPersistBufferedMessage</h4> |
| <pre>public void unPersistBufferedMessage(<a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/wire/MqttWireMessage.html" title="class in org.eclipse.paho.client.mqttv3.internal.wire">MqttWireMessage</a> message) |
| throws <a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttPersistenceException.html" title="class in org.eclipse.paho.client.mqttv3">MqttPersistenceException</a></pre> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttPersistenceException.html" title="class in org.eclipse.paho.client.mqttv3">MqttPersistenceException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="checkForActivity-org.eclipse.paho.client.mqttv3.IMqttActionListener-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>checkForActivity</h4> |
| <pre>public <a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttToken.html" title="class in org.eclipse.paho.client.mqttv3">MqttToken</a> checkForActivity(<a href="../../../../../../org/eclipse/paho/client/mqttv3/IMqttActionListener.html" title="interface in org.eclipse.paho.client.mqttv3">IMqttActionListener</a> pingCallback) |
| throws <a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a></pre> |
| <div class="block">Check and send a ping if needed and check for ping timeout. |
| Need to send a ping if nothing has been sent or received |
| in the last keepalive interval. It is important to check for |
| both sent and received packets in order to catch the case where an |
| app is solely sending QoS 0 messages or receiving QoS 0 messages. |
| QoS 0 message are not good enough for checking a connection is |
| alive as they are one way messages. |
| |
| If a ping has been sent but no data has been received in the |
| last keepalive interval then the connection is deamed to be broken.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>token of ping command, null if no ping command has been sent.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="setKeepAliveInterval-long-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>setKeepAliveInterval</h4> |
| <pre>public void setKeepAliveInterval(long interval)</pre> |
| </li> |
| </ul> |
| <a name="notifySentBytes-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>notifySentBytes</h4> |
| <pre>public void notifySentBytes(int sentBytesCount)</pre> |
| <div class="block">COMMENTED OUT AS NO LONGER USED. |
| Deduce how long to to wait until a ping is required. |
| |
| In order to keep the connection alive the server must see activity within |
| the keepalive interval. If the application is not sending / receiving |
| any messages then the client will send a ping. This method works out |
| the next time that a ping must be sent in order for the server to |
| know the client is alive.</div> |
| </li> |
| </ul> |
| <a name="notifyReceivedBytes-int-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>notifyReceivedBytes</h4> |
| <pre>public void notifyReceivedBytes(int receivedBytesCount)</pre> |
| </li> |
| </ul> |
| <a name="connected--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>connected</h4> |
| <pre>public void connected()</pre> |
| <div class="block">Called when the client has successfully connected to the broker</div> |
| </li> |
| </ul> |
| <a name="resolveOldTokens-org.eclipse.paho.client.mqttv3.MqttException-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>resolveOldTokens</h4> |
| <pre>public java.util.Vector resolveOldTokens(<a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a> reason)</pre> |
| <div class="block">Called during shutdown to work out if there are any tokens still |
| to be notified and waiters to be unblocked. Notifying and unblocking |
| takes place after most shutdown processing has completed. The tokenstore |
| is tidied up so it only contains outstanding delivery tokens which are |
| valid after reconnect (if clean session is false)</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>reason</code> - The root cause of the disconnection, or null if it is a clean disconnect</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="disconnected-org.eclipse.paho.client.mqttv3.MqttException-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>disconnected</h4> |
| <pre>public void disconnected(<a href="../../../../../../org/eclipse/paho/client/mqttv3/MqttException.html" title="class in org.eclipse.paho.client.mqttv3">MqttException</a> reason)</pre> |
| <div class="block">Called when the client has been disconnected from the broker.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>reason</code> - The root cause of the disconnection, or null if it is a clean disconnect</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="quiesce-long-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>quiesce</h4> |
| <pre>public void quiesce(long timeout)</pre> |
| <div class="block">Quiesce the client state, preventing any new messages getting sent, |
| and preventing the callback on any newly received messages. |
| After the timeout expires, delete any pending messages except for |
| outbound ACKs, and wait for those ACKs to complete.</div> |
| </li> |
| </ul> |
| <a name="notifyQueueLock--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>notifyQueueLock</h4> |
| <pre>public void notifyQueueLock()</pre> |
| </li> |
| </ul> |
| <a name="getActualInFlight--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getActualInFlight</h4> |
| <pre>public int getActualInFlight()</pre> |
| </li> |
| </ul> |
| <a name="getMaxInFlight--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMaxInFlight</h4> |
| <pre>public int getMaxInFlight()</pre> |
| </li> |
| </ul> |
| <a name="getDebug--"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>getDebug</h4> |
| <pre>public java.util.Properties getDebug()</pre> |
| </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/ClientState.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-files/index-1.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/eclipse/paho/client/mqttv3/internal/ClientDefaults.html" title="class in org.eclipse.paho.client.mqttv3.internal"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../../../org/eclipse/paho/client/mqttv3/internal/CommsCallback.html" title="class in org.eclipse.paho.client.mqttv3.internal"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/eclipse/paho/client/mqttv3/internal/ClientState.html" target="_top">Frames</a></li> |
| <li><a href="ClientState.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: </li> |
| <li>Nested | </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li>Field | </li> |
| <li>Constr | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| </body> |
| </html> |