Browse Source

Fix the old websocket API

pull/10215/head
Andrii Shvaika 3 years ago
parent
commit
2e57990e04
  1. 3
      application/src/main/java/org/thingsboard/server/service/ws/DefaultWebSocketService.java
  2. 7
      application/src/main/java/org/thingsboard/server/service/ws/telemetry/sub/TelemetrySubscriptionUpdate.java

3
application/src/main/java/org/thingsboard/server/service/ws/DefaultWebSocketService.java

@ -260,7 +260,8 @@ public class DefaultWebSocketService implements WebSocketService {
@Override @Override
public void sendUpdate(String sessionId, int cmdId, TelemetrySubscriptionUpdate update) { public void sendUpdate(String sessionId, int cmdId, TelemetrySubscriptionUpdate update) {
doSendUpdate(sessionId, cmdId, update); // We substitute the subscriptionId with cmdId for old-style subscriptions.
doSendUpdate(sessionId, cmdId, update.copyWithNewSubscriptionId(cmdId));
} }
@Override @Override

7
application/src/main/java/org/thingsboard/server/service/ws/telemetry/sub/TelemetrySubscriptionUpdate.java

@ -15,6 +15,7 @@
*/ */
package org.thingsboard.server.service.ws.telemetry.sub; package org.thingsboard.server.service.ws.telemetry.sub;
import lombok.AllArgsConstructor;
import org.thingsboard.server.common.data.kv.TsKvEntry; import org.thingsboard.server.common.data.kv.TsKvEntry;
import org.thingsboard.server.service.subscription.SubscriptionErrorCode; import org.thingsboard.server.service.subscription.SubscriptionErrorCode;
@ -26,8 +27,8 @@ import java.util.Map;
import java.util.TreeMap; import java.util.TreeMap;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@AllArgsConstructor
public class TelemetrySubscriptionUpdate { public class TelemetrySubscriptionUpdate {
private final int subscriptionId; private final int subscriptionId;
private int errorCode; private int errorCode;
private String errorMsg; private String errorMsg;
@ -93,6 +94,10 @@ public class TelemetrySubscriptionUpdate {
return errorMsg; return errorMsg;
} }
public TelemetrySubscriptionUpdate copyWithNewSubscriptionId(int subscriptionId){
return new TelemetrySubscriptionUpdate(subscriptionId, errorCode, errorMsg, data);
}
@Override @Override
public String toString() { public String toString() {
StringBuilder result = new StringBuilder("TelemetrySubscriptionUpdate [subscriptionId=" + subscriptionId + ", errorCode=" + errorCode + ", errorMsg=" + errorMsg + ", data="); StringBuilder result = new StringBuilder("TelemetrySubscriptionUpdate [subscriptionId=" + subscriptionId + ", errorCode=" + errorCode + ", errorMsg=" + errorMsg + ", data=");

Loading…
Cancel
Save