Commit d2736610e523db5c44f80b101456af3aa5777d37
1 parent
fa0e55f1
added removing registration for onDeviceDelete
Showing
2 changed files
with
21 additions
and
5 deletions
@@ -25,7 +25,6 @@ import org.eclipse.leshan.core.node.codec.DefaultLwM2mNodeEncoder; | @@ -25,7 +25,6 @@ import org.eclipse.leshan.core.node.codec.DefaultLwM2mNodeEncoder; | ||
25 | import org.eclipse.leshan.server.californium.LeshanServer; | 25 | import org.eclipse.leshan.server.californium.LeshanServer; |
26 | import org.eclipse.leshan.server.californium.LeshanServerBuilder; | 26 | import org.eclipse.leshan.server.californium.LeshanServerBuilder; |
27 | import org.eclipse.leshan.server.californium.registration.CaliforniumRegistrationStore; | 27 | import org.eclipse.leshan.server.californium.registration.CaliforniumRegistrationStore; |
28 | -import org.eclipse.leshan.server.model.LwM2mModelProvider; | ||
29 | import org.springframework.stereotype.Component; | 28 | import org.springframework.stereotype.Component; |
30 | import org.thingsboard.server.cache.ota.OtaPackageDataCache; | 29 | import org.thingsboard.server.cache.ota.OtaPackageDataCache; |
31 | import org.thingsboard.server.common.data.DataConstants; | 30 | import org.thingsboard.server.common.data.DataConstants; |
@@ -33,7 +32,6 @@ import org.thingsboard.server.queue.util.TbLwM2mTransportComponent; | @@ -33,7 +32,6 @@ import org.thingsboard.server.queue.util.TbLwM2mTransportComponent; | ||
33 | import org.thingsboard.server.transport.lwm2m.config.LwM2MTransportServerConfig; | 32 | import org.thingsboard.server.transport.lwm2m.config.LwM2MTransportServerConfig; |
34 | import org.thingsboard.server.transport.lwm2m.secure.TbLwM2MAuthorizer; | 33 | import org.thingsboard.server.transport.lwm2m.secure.TbLwM2MAuthorizer; |
35 | import org.thingsboard.server.transport.lwm2m.secure.TbLwM2MDtlsCertificateVerifier; | 34 | import org.thingsboard.server.transport.lwm2m.secure.TbLwM2MDtlsCertificateVerifier; |
36 | -import org.thingsboard.server.transport.lwm2m.server.client.LwM2mClientContext; | ||
37 | import org.thingsboard.server.transport.lwm2m.server.store.TbSecurityStore; | 35 | import org.thingsboard.server.transport.lwm2m.server.store.TbSecurityStore; |
38 | import org.thingsboard.server.transport.lwm2m.server.uplink.DefaultLwM2MUplinkMsgHandler; | 36 | import org.thingsboard.server.transport.lwm2m.server.uplink.DefaultLwM2MUplinkMsgHandler; |
39 | import org.thingsboard.server.transport.lwm2m.utils.LwM2mValueConverterImpl; | 37 | import org.thingsboard.server.transport.lwm2m.utils.LwM2mValueConverterImpl; |
@@ -28,14 +28,17 @@ import org.eclipse.leshan.core.node.LwM2mObjectInstance; | @@ -28,14 +28,17 @@ import org.eclipse.leshan.core.node.LwM2mObjectInstance; | ||
28 | import org.eclipse.leshan.core.node.LwM2mPath; | 28 | import org.eclipse.leshan.core.node.LwM2mPath; |
29 | import org.eclipse.leshan.core.node.LwM2mResource; | 29 | import org.eclipse.leshan.core.node.LwM2mResource; |
30 | import org.eclipse.leshan.core.observation.Observation; | 30 | import org.eclipse.leshan.core.observation.Observation; |
31 | +import org.eclipse.leshan.core.request.ExecuteRequest; | ||
31 | import org.eclipse.leshan.core.request.ObserveRequest; | 32 | import org.eclipse.leshan.core.request.ObserveRequest; |
32 | import org.eclipse.leshan.core.request.ReadRequest; | 33 | import org.eclipse.leshan.core.request.ReadRequest; |
33 | import org.eclipse.leshan.core.request.WriteCompositeRequest; | 34 | import org.eclipse.leshan.core.request.WriteCompositeRequest; |
34 | import org.eclipse.leshan.core.request.WriteRequest; | 35 | import org.eclipse.leshan.core.request.WriteRequest; |
36 | +import org.eclipse.leshan.core.response.ExecuteResponse; | ||
35 | import org.eclipse.leshan.core.response.ObserveResponse; | 37 | import org.eclipse.leshan.core.response.ObserveResponse; |
36 | import org.eclipse.leshan.core.response.ReadCompositeResponse; | 38 | import org.eclipse.leshan.core.response.ReadCompositeResponse; |
37 | import org.eclipse.leshan.core.response.ReadResponse; | 39 | import org.eclipse.leshan.core.response.ReadResponse; |
38 | import org.eclipse.leshan.server.registration.Registration; | 40 | import org.eclipse.leshan.server.registration.Registration; |
41 | +import org.eclipse.leshan.server.registration.RegistrationStore; | ||
39 | import org.springframework.context.annotation.Lazy; | 42 | import org.springframework.context.annotation.Lazy; |
40 | import org.springframework.stereotype.Service; | 43 | import org.springframework.stereotype.Service; |
41 | import org.thingsboard.common.util.DonAsynchron; | 44 | import org.thingsboard.common.util.DonAsynchron; |
@@ -74,7 +77,6 @@ import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MCancelObser | @@ -74,7 +77,6 @@ import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MCancelObser | ||
74 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MCancelObserveRequest; | 77 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MCancelObserveRequest; |
75 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MDiscoverCallback; | 78 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MDiscoverCallback; |
76 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MDiscoverRequest; | 79 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MDiscoverRequest; |
77 | -import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MExecuteCallback; | ||
78 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MExecuteRequest; | 80 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MExecuteRequest; |
79 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MLatchCallback; | 81 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MLatchCallback; |
80 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MObserveCallback; | 82 | import org.thingsboard.server.transport.lwm2m.server.downlink.TbLwM2MObserveCallback; |
@@ -147,6 +149,7 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | @@ -147,6 +149,7 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | ||
147 | private final LwM2mClientContext clientContext; | 149 | private final LwM2mClientContext clientContext; |
148 | private final LwM2mDownlinkMsgHandler defaultLwM2MDownlinkMsgHandler; | 150 | private final LwM2mDownlinkMsgHandler defaultLwM2MDownlinkMsgHandler; |
149 | private final LwM2mVersionedModelProvider modelProvider; | 151 | private final LwM2mVersionedModelProvider modelProvider; |
152 | + private final RegistrationStore registrationStore; | ||
150 | 153 | ||
151 | public DefaultLwM2MUplinkMsgHandler(TransportService transportService, | 154 | public DefaultLwM2MUplinkMsgHandler(TransportService transportService, |
152 | LwM2MTransportServerConfig config, | 155 | LwM2MTransportServerConfig config, |
@@ -159,7 +162,8 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | @@ -159,7 +162,8 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | ||
159 | @Lazy LwM2mDownlinkMsgHandler defaultLwM2MDownlinkMsgHandler, | 162 | @Lazy LwM2mDownlinkMsgHandler defaultLwM2MDownlinkMsgHandler, |
160 | LwM2mTransportContext context, | 163 | LwM2mTransportContext context, |
161 | TbLwM2MDtlsSessionStore sessionStore, | 164 | TbLwM2MDtlsSessionStore sessionStore, |
162 | - LwM2mVersionedModelProvider modelProvider) { | 165 | + LwM2mVersionedModelProvider modelProvider, |
166 | + RegistrationStore registrationStore) { | ||
163 | this.transportService = transportService; | 167 | this.transportService = transportService; |
164 | this.sessionManager = sessionManager; | 168 | this.sessionManager = sessionManager; |
165 | this.attributesService = attributesService; | 169 | this.attributesService = attributesService; |
@@ -172,6 +176,7 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | @@ -172,6 +176,7 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | ||
172 | this.context = context; | 176 | this.context = context; |
173 | this.sessionStore = sessionStore; | 177 | this.sessionStore = sessionStore; |
174 | this.modelProvider = modelProvider; | 178 | this.modelProvider = modelProvider; |
179 | + this.registrationStore = registrationStore; | ||
175 | } | 180 | } |
176 | 181 | ||
177 | @PostConstruct | 182 | @PostConstruct |
@@ -402,7 +407,20 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | @@ -402,7 +407,20 @@ public class DefaultLwM2MUplinkMsgHandler extends LwM2MExecutorAwareService impl | ||
402 | public void onDeviceDelete(DeviceId deviceId) { | 407 | public void onDeviceDelete(DeviceId deviceId) { |
403 | LwM2mClient client = clientContext.getClientByDeviceId(deviceId.getId()); | 408 | LwM2mClient client = clientContext.getClientByDeviceId(deviceId.getId()); |
404 | TbLwM2MExecuteRequest request = TbLwM2MExecuteRequest.builder().versionedId(REBOOT_ID).timeout(clientContext.getRequestTimeout(client)).build(); | 409 | TbLwM2MExecuteRequest request = TbLwM2MExecuteRequest.builder().versionedId(REBOOT_ID).timeout(clientContext.getRequestTimeout(client)).build(); |
405 | - defaultLwM2MDownlinkMsgHandler.sendExecuteRequest(client, request, new TbLwM2MExecuteCallback(logService, client, REBOOT_ID)); | 410 | + defaultLwM2MDownlinkMsgHandler.sendExecuteRequest(client, request, new DownlinkRequestCallback<>() { |
411 | + @Override | ||
412 | + public void onSuccess(ExecuteRequest request, ExecuteResponse response) { | ||
413 | + } | ||
414 | + | ||
415 | + @Override | ||
416 | + public void onValidationError(String params, String msg) { | ||
417 | + } | ||
418 | + | ||
419 | + @Override | ||
420 | + public void onError(String params, Exception e) { | ||
421 | + } | ||
422 | + }); | ||
423 | + registrationStore.removeRegistration(client.getRegistration().getId()); | ||
406 | doUnReg(client.getRegistration(), client); | 424 | doUnReg(client.getRegistration(), client); |
407 | } | 425 | } |
408 | 426 |