From f19ada09711a4b09a7c64be3eb9fed63eb6ee7fc Mon Sep 17 00:00:00 2001 From: Fernando Date: Fri, 4 Oct 2019 21:22:39 -0300 Subject: [PATCH 1/2] Subscribe should not return null (#262) Always returning null breaks the contract set in the function signature and documentation. This affects all subscribes that receive `IMqttMessageListener` as parameter. Signed-off-by: Fernando Governatore --- .../org/eclipse/paho/android/service/MqttAndroidClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttAndroidClient.java b/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttAndroidClient.java index 06e5b7e9..9085daba 100755 --- a/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttAndroidClient.java +++ b/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttAndroidClient.java @@ -1146,7 +1146,7 @@ public IMqttToken subscribe(String[] topicFilters, int[] qos, Object userContext String activityToken = storeToken(token); mqttService.subscribe(clientHandle, topicFilters, qos, null, activityToken, messageListeners); - return null; + return token; } From d87453c2c8c3b3e1bc9f8e152d3f030ad4a7e62d Mon Sep 17 00:00:00 2001 From: Fernando Governatore Date: Thu, 10 Oct 2019 15:33:47 -0300 Subject: [PATCH 2/2] Should pass IMqttActionListener on subscribe (#262) On subscribe, a failure would be reported but onSuccess would never be called. The reason was not passing the IMqttActionListener forward to MqttClient. Signed-off-by: Fernando Governatore --- .../java/org/eclipse/paho/android/service/MqttConnection.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttConnection.java b/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttConnection.java index a40ae15a..20c0c87a 100755 --- a/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttConnection.java +++ b/org.eclipse.paho.android.service/src/main/java/org/eclipse/paho/android/service/MqttConnection.java @@ -698,7 +698,7 @@ public void subscribe(String[] topicFilters, int[] qos, String invocationContext IMqttActionListener listener = new MqttConnectionListener(resultBundle); try { - myClient.subscribe(topicFilters, qos,messageListeners); + myClient.subscribe(topicFilters, qos, null, listener, messageListeners); } catch (Exception e){ handleException(resultBundle, e); }