Skip to content

Commit fe8be8e

Browse files
matsukazjpwsutton
authored andcommitted
Support message buffering not only when reconnected but also before first connect (#354)
Signed-off-by: Masakazu Matsushita <matsukaz@gmail.com>
1 parent 88a95b4 commit fe8be8e

2 files changed

Lines changed: 7 additions & 9 deletions

File tree

org.eclipse.paho.client.mqttv3/src/main/java-templates/org/eclipse/paho/client/mqttv3/internal/ClientComms.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -186,8 +186,8 @@ public void sendNoWait(MqttWireMessage message, MqttToken token) throws MqttExce
186186
} else {
187187
this.internalSend(message, token);
188188
}
189-
} else if(disconnectedMessageBuffer != null && isResting()){
190-
//@TRACE 508=Client Resting, Offline Buffer available. Adding message to buffer. message={0}
189+
} else if(disconnectedMessageBuffer != null) {
190+
//@TRACE 508=Offline Buffer available. Adding message to buffer. message={0}
191191
log.fine(CLASS_NAME, methodName, "508", new Object[] {message.getKey()});
192192
if(disconnectedMessageBuffer.isPersistBuffer()){
193193
this.clientState.persistBufferedMessage(message);
@@ -832,13 +832,13 @@ public void deleteBufferedMessage(int bufferIndex){
832832

833833

834834
/**
835-
* When the client automatically reconnects, we want to send all messages from the
835+
* When the client connects, we want to send all messages from the
836836
* buffer first before allowing the user to send any messages
837837
*/
838-
public void notifyReconnect() {
839-
final String methodName = "notifyReconnect";
838+
public void notifyConnect() {
839+
final String methodName = "notifyConnect";
840840
if(disconnectedMessageBuffer != null){
841-
//@TRACE 509=Client Reconnected, Offline Buffer Available. Sending Buffered Messages.
841+
//@TRACE 509=Client Connected, Offline Buffer Available. Sending Buffered Messages.
842842
log.fine(CLASS_NAME, methodName, "509");
843843

844844
disconnectedMessageBuffer.setPublishCallback(new ReconnectDisconnectedBufferCallback(methodName));

org.eclipse.paho.client.mqttv3/src/main/java/org/eclipse/paho/client/mqttv3/internal/ConnectActionListener.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -92,9 +92,7 @@ public void onSuccess(IMqttToken token) {
9292
userToken.internalTok.notifyComplete();
9393
userToken.internalTok.setClient(this.client); // fix bug 469527 - maybe should be set elsewhere?
9494

95-
if(reconnect){
96-
comms.notifyReconnect();
97-
}
95+
comms.notifyConnect();
9896

9997
if (userCallback != null) {
10098
userToken.setUserContext(userContext);

0 commit comments

Comments
 (0)