Browse Source

Fix tests

pull/11391/head
Igor Kulikov 2 years ago
parent
commit
a8647c7189
  1. 4
      common/transport/lwm2m/src/main/java/org/thingsboard/server/transport/lwm2m/server/LwM2mVersionedModelProvider.java
  2. 30
      common/transport/lwm2m/src/main/java/org/thingsboard/server/transport/lwm2m/server/client/LwM2mClient.java
  3. 3
      common/transport/lwm2m/src/main/java/org/thingsboard/server/transport/lwm2m/server/store/util/LwM2MClientSerDes.java

4
common/transport/lwm2m/src/main/java/org/thingsboard/server/transport/lwm2m/server/LwM2mVersionedModelProvider.java

@ -108,9 +108,9 @@ public class LwM2mVersionedModelProvider implements LwM2mModelProvider {
@Override
public ObjectModel getObjectModel(int objectId) {
LwM2mClient lwM2mClient = lwM2mClientContext.getClientByEndpoint(registration.getEndpoint());
String version = lwM2mClient.getSupportedObjectVersion(objectId).toString();
var version = lwM2mClient.getSupportedObjectVersion(objectId);
if (version != null) {
return this.getObjectModelDynamic(objectId, version);
return this.getObjectModelDynamic(objectId, version.toString());
}
return null;
}

30
common/transport/lwm2m/src/main/java/org/thingsboard/server/transport/lwm2m/server/client/LwM2mClient.java

@ -211,11 +211,11 @@ public class LwM2mClient {
}
private LwM2m.Version getObjectIDVerFromDeviceProfile(DeviceProfile deviceProfile) {
String defaultObjectIdVer = ((Lwm2mDeviceProfileTransportConfiguration)deviceProfile
String defaultObjectIdVer = deviceProfile != null ? ((Lwm2mDeviceProfileTransportConfiguration)deviceProfile
.getProfileData()
.getTransportConfiguration())
.getClientLwM2mSettings()
.getDefaultObjectIDVer();
.getDefaultObjectIDVer() : null;
return new Version(defaultObjectIdVer == null ? LWM2M_OBJECT_VERSION_DEFAULT : defaultObjectIdVer);
}
@ -454,19 +454,21 @@ public class LwM2mClient {
private void setSupportedClientObjects(){
this.supportedClientObjects = new ConcurrentHashMap<>();
for (Link link: this.registration.getSortedObjectLinks()) {
MixedLwM2mLink mixedLwM2mLink = (MixedLwM2mLink)link;
if(!mixedLwM2mLink.getPath().isRoot()){
LwM2mPath lwM2mPath = mixedLwM2mLink.getPath();
if (lwM2mPath.isObject()) {
LwM2m.Version ver;
if (mixedLwM2mLink.getAttributes().get("ver")!= null) {
ver = (Version) mixedLwM2mLink.getAttributes().get("ver").getValue();
} else {
ver = getDefaultObjectIDVer();
if (link instanceof MixedLwM2mLink) {
MixedLwM2mLink mixedLwM2mLink = (MixedLwM2mLink) link;
if (!mixedLwM2mLink.getPath().isRoot()) {
LwM2mPath lwM2mPath = mixedLwM2mLink.getPath();
if (lwM2mPath.isObject()) {
LwM2m.Version ver;
if (mixedLwM2mLink.getAttributes().get("ver") != null) {
ver = (Version) mixedLwM2mLink.getAttributes().get("ver").getValue();
} else {
ver = getDefaultObjectIDVer();
}
this.supportedClientObjects.put(lwM2mPath.getObjectId(), ver);
} else if (this.supportedClientObjects.get(lwM2mPath.getObjectId()) == null) {
this.supportedClientObjects.put(lwM2mPath.getObjectId(), getDefaultObjectIDVer());
}
this.supportedClientObjects.put(lwM2mPath.getObjectId(), ver);
} else if (this.supportedClientObjects.get(lwM2mPath.getObjectId()) == null){
this.supportedClientObjects.put(lwM2mPath.getObjectId(), getDefaultObjectIDVer());
}
}
}

3
common/transport/lwm2m/src/main/java/org/thingsboard/server/transport/lwm2m/server/store/util/LwM2MClientSerDes.java

@ -23,6 +23,7 @@ import com.google.gson.JsonObject;
import com.google.gson.JsonParser;
import com.google.protobuf.util.JsonFormat;
import lombok.SneakyThrows;
import org.eclipse.leshan.core.LwM2m;
import org.eclipse.leshan.core.model.ResourceModel;
import org.eclipse.leshan.core.node.LwM2mMultipleResource;
import org.eclipse.leshan.core.node.LwM2mNodeException;
@ -345,7 +346,7 @@ public class LwM2MClientSerDes {
if (defaultObjectIDVer != null) {
Field defaultObjectIDVerField = lwM2mClientClass.getDeclaredField("defaultObjectIDVer");
defaultObjectIDVerField.setAccessible(true);
defaultObjectIDVerField.set(lwM2mClient, defaultObjectIDVer.getAsString());
defaultObjectIDVerField.set(lwM2mClient, new LwM2m.Version(defaultObjectIDVer.getAsString()));
}
JsonElement registration = o.get("registration");

Loading…
Cancel
Save