Commit 4364755e111492b38602657151a4cb7fcdf658d0

Authored by Andrii Shvaika
Committed by Andrew Shvayka
1 parent 34aa44d2

Optimized imports

@@ -15,29 +15,13 @@ @@ -15,29 +15,13 @@
15 */ 15 */
16 package org.thingsboard.server.transport.coap; 16 package org.thingsboard.server.transport.coap;
17 17
18 -import lombok.SneakyThrows;  
19 import lombok.extern.slf4j.Slf4j; 18 import lombok.extern.slf4j.Slf4j;
20 import org.eclipse.californium.core.CoapResource; 19 import org.eclipse.californium.core.CoapResource;
21 -import org.eclipse.californium.core.coap.CoAP;  
22 -import org.eclipse.californium.core.coap.MessageObserver;  
23 -import org.eclipse.californium.core.coap.Response;  
24 import org.eclipse.californium.core.server.resources.CoapExchange; 20 import org.eclipse.californium.core.server.resources.CoapExchange;
25 -import org.eclipse.californium.elements.EndpointContext;  
26 -import org.thingsboard.server.common.data.DeviceProfile;  
27 -import org.thingsboard.server.common.transport.TransportContext;  
28 import org.thingsboard.server.common.transport.TransportService; 21 import org.thingsboard.server.common.transport.TransportService;
29 import org.thingsboard.server.common.transport.TransportServiceCallback; 22 import org.thingsboard.server.common.transport.TransportServiceCallback;
30 -import org.thingsboard.server.common.transport.auth.SessionInfoCreator;  
31 -import org.thingsboard.server.common.transport.auth.ValidateDeviceCredentialsResponse;  
32 import org.thingsboard.server.gen.transport.TransportProtos; 23 import org.thingsboard.server.gen.transport.TransportProtos;
33 24
34 -import java.util.UUID;  
35 -import java.util.concurrent.ThreadLocalRandom;  
36 -import java.util.function.BiConsumer;  
37 -  
38 -import static org.eclipse.californium.core.coap.Message.MAX_MID;  
39 -import static org.eclipse.californium.core.coap.Message.NONE;  
40 -  
41 @Slf4j 25 @Slf4j
42 public abstract class AbstractCoapTransportResource extends CoapResource { 26 public abstract class AbstractCoapTransportResource extends CoapResource {
43 27
@@ -33,7 +33,6 @@ import org.thingsboard.server.common.transport.adaptor.JsonConverter; @@ -33,7 +33,6 @@ import org.thingsboard.server.common.transport.adaptor.JsonConverter;
33 import org.thingsboard.server.gen.transport.TransportProtos; 33 import org.thingsboard.server.gen.transport.TransportProtos;
34 import org.thingsboard.server.transport.coap.CoapTransportResource; 34 import org.thingsboard.server.transport.coap.CoapTransportResource;
35 35
36 -import java.util.List;  
37 import java.util.Optional; 36 import java.util.Optional;
38 import java.util.UUID; 37 import java.util.UUID;
39 38
@@ -19,14 +19,9 @@ import lombok.extern.slf4j.Slf4j; @@ -19,14 +19,9 @@ import lombok.extern.slf4j.Slf4j;
19 import org.eclipse.californium.core.coap.CoAP; 19 import org.eclipse.californium.core.coap.CoAP;
20 import org.eclipse.californium.core.server.resources.CoapExchange; 20 import org.eclipse.californium.core.server.resources.CoapExchange;
21 import org.thingsboard.server.common.data.DeviceProfile; 21 import org.thingsboard.server.common.data.DeviceProfile;
22 -import org.thingsboard.server.common.transport.TransportContext;  
23 import org.thingsboard.server.common.transport.TransportServiceCallback; 22 import org.thingsboard.server.common.transport.TransportServiceCallback;
24 -import org.thingsboard.server.common.transport.auth.SessionInfoCreator;  
25 import org.thingsboard.server.common.transport.auth.ValidateDeviceCredentialsResponse; 23 import org.thingsboard.server.common.transport.auth.ValidateDeviceCredentialsResponse;
26 -import org.thingsboard.server.gen.transport.TransportProtos;  
27 -import org.thingsboard.server.transport.coap.AbstractCoapTransportResource;  
28 24
29 -import java.util.UUID;  
30 import java.util.function.BiConsumer; 25 import java.util.function.BiConsumer;
31 26
32 @Slf4j 27 @Slf4j
@@ -23,7 +23,6 @@ import org.eclipse.californium.core.server.resources.CoapExchange; @@ -23,7 +23,6 @@ import org.eclipse.californium.core.server.resources.CoapExchange;
23 import org.thingsboard.server.common.transport.adaptor.AdaptorException; 23 import org.thingsboard.server.common.transport.adaptor.AdaptorException;
24 import org.thingsboard.server.gen.transport.TransportProtos; 24 import org.thingsboard.server.gen.transport.TransportProtos;
25 import org.thingsboard.server.transport.coap.client.TbCoapClientState; 25 import org.thingsboard.server.transport.coap.client.TbCoapClientState;
26 -import org.thingsboard.server.transport.coap.client.TbCoapObservationState;  
27 26
28 @Slf4j 27 @Slf4j
29 public class GetAttributesSyncSessionCallback extends AbstractSyncSessionCallback { 28 public class GetAttributesSyncSessionCallback extends AbstractSyncSessionCallback {
@@ -23,8 +23,6 @@ import org.thingsboard.server.common.transport.adaptor.AdaptorException; @@ -23,8 +23,6 @@ import org.thingsboard.server.common.transport.adaptor.AdaptorException;
23 import org.thingsboard.server.gen.transport.TransportProtos; 23 import org.thingsboard.server.gen.transport.TransportProtos;
24 import org.thingsboard.server.transport.coap.client.TbCoapClientState; 24 import org.thingsboard.server.transport.coap.client.TbCoapClientState;
25 25
26 -import java.util.UUID;  
27 -  
28 @Slf4j 26 @Slf4j
29 public class ToServerRpcSyncSessionCallback extends AbstractSyncSessionCallback { 27 public class ToServerRpcSyncSessionCallback extends AbstractSyncSessionCallback {
30 28
@@ -31,8 +31,6 @@ public interface CoapClientContext { @@ -31,8 +31,6 @@ public interface CoapClientContext {
31 31
32 boolean registerRpcObservation(TbCoapClientState clientState, String token, CoapExchange exchange); 32 boolean registerRpcObservation(TbCoapClientState clientState, String token, CoapExchange exchange);
33 33
34 - void onUplink(TransportProtos.SessionInfoProto sessionInfo);  
35 -  
36 AtomicInteger getNotificationCounterByToken(String token); 34 AtomicInteger getNotificationCounterByToken(String token);
37 35
38 TbCoapClientState getOrCreateClient(SessionMsgType type, ValidateDeviceCredentialsResponse deviceCredentials, DeviceProfile deviceProfile) throws AdaptorException; 36 TbCoapClientState getOrCreateClient(SessionMsgType type, ValidateDeviceCredentialsResponse deviceCredentials, DeviceProfile deviceProfile) throws AdaptorException;
@@ -82,11 +82,6 @@ public class DefaultCoapClientContext implements CoapClientContext { @@ -82,11 +82,6 @@ public class DefaultCoapClientContext implements CoapClientContext {
82 } 82 }
83 83
84 @Override 84 @Override
85 - public void onUplink(TransportProtos.SessionInfoProto sessionInfo) {  
86 - getClientState(toDeviceId(sessionInfo)).updateLastUplinkTime();  
87 - }  
88 -  
89 - @Override  
90 public AtomicInteger getNotificationCounterByToken(String token) { 85 public AtomicInteger getNotificationCounterByToken(String token) {
91 TbCoapClientState state = clientsByToken.get(token); 86 TbCoapClientState state = clientsByToken.get(token);
92 if (state == null) { 87 if (state == null) {
@@ -423,7 +418,7 @@ public class DefaultCoapClientContext implements CoapClientContext { @@ -423,7 +418,7 @@ public class DefaultCoapClientContext implements CoapClientContext {
423 418
424 @Override 419 @Override
425 public void onToServerRpcResponse(TransportProtos.ToServerRpcResponseMsg msg) { 420 public void onToServerRpcResponse(TransportProtos.ToServerRpcResponseMsg msg) {
426 - 421 + log.trace("[{}] Received server rpc response in the wrong session.", state.getSession());
427 } 422 }
428 423
429 private void cancelObserveRelation(TbCoapObservationState attrs) { 424 private void cancelObserveRelation(TbCoapObservationState attrs) {
@@ -449,6 +444,7 @@ public class DefaultCoapClientContext implements CoapClientContext { @@ -449,6 +444,7 @@ public class DefaultCoapClientContext implements CoapClientContext {
449 transportService.process(state.getSession(), getSessionEventMsg(TransportProtos.SessionEvent.CLOSED), null); 444 transportService.process(state.getSession(), getSessionEventMsg(TransportProtos.SessionEvent.CLOSED), null);
450 transportService.deregisterSession(state.getSession()); 445 transportService.deregisterSession(state.getSession());
451 state.setSession(null); 446 state.setSession(null);
  447 + //TODO: need to delete the client from context as well.
452 } 448 }
453 } 449 }
454 } 450 }
@@ -465,6 +461,7 @@ public class DefaultCoapClientContext implements CoapClientContext { @@ -465,6 +461,7 @@ public class DefaultCoapClientContext implements CoapClientContext {
465 transportService.process(state.getSession(), getSessionEventMsg(TransportProtos.SessionEvent.CLOSED), null); 461 transportService.process(state.getSession(), getSessionEventMsg(TransportProtos.SessionEvent.CLOSED), null);
466 transportService.deregisterSession(state.getSession()); 462 transportService.deregisterSession(state.getSession());
467 state.setSession(null); 463 state.setSession(null);
  464 + //TODO: need to delete the client from context as well.
468 } 465 }
469 } 466 }
470 } 467 }
@@ -18,22 +18,15 @@ package org.thingsboard.server.transport.coap.client; @@ -18,22 +18,15 @@ package org.thingsboard.server.transport.coap.client;
18 import lombok.Data; 18 import lombok.Data;
19 import lombok.Getter; 19 import lombok.Getter;
20 import lombok.Setter; 20 import lombok.Setter;
21 -import org.eclipse.californium.core.network.Exchange;  
22 import org.thingsboard.server.common.data.id.DeviceId; 21 import org.thingsboard.server.common.data.id.DeviceId;
23 import org.thingsboard.server.common.transport.auth.ValidateDeviceCredentialsResponse; 22 import org.thingsboard.server.common.transport.auth.ValidateDeviceCredentialsResponse;
24 import org.thingsboard.server.gen.transport.TransportProtos; 23 import org.thingsboard.server.gen.transport.TransportProtos;
25 import org.thingsboard.server.transport.coap.TransportConfigurationContainer; 24 import org.thingsboard.server.transport.coap.TransportConfigurationContainer;
26 import org.thingsboard.server.transport.coap.adaptors.CoapTransportAdaptor; 25 import org.thingsboard.server.transport.coap.adaptors.CoapTransportAdaptor;
27 26
28 -import java.util.HashMap;  
29 -import java.util.List;  
30 -import java.util.Map;  
31 import java.util.concurrent.Future; 27 import java.util.concurrent.Future;
32 -import java.util.concurrent.atomic.AtomicInteger;  
33 import java.util.concurrent.locks.Lock; 28 import java.util.concurrent.locks.Lock;
34 import java.util.concurrent.locks.ReentrantLock; 29 import java.util.concurrent.locks.ReentrantLock;
35 -import java.util.stream.Collectors;  
36 -import java.util.stream.Stream;  
37 30
38 @Data 31 @Data
39 public class TbCoapClientState { 32 public class TbCoapClientState {
@@ -36,9 +36,9 @@ import org.thingsboard.server.gen.transport.TransportProtos; @@ -36,9 +36,9 @@ import org.thingsboard.server.gen.transport.TransportProtos;
36 import org.thingsboard.server.gen.transport.coap.MeasurementTypeProtos; 36 import org.thingsboard.server.gen.transport.coap.MeasurementTypeProtos;
37 import org.thingsboard.server.gen.transport.coap.MeasurementsProtos; 37 import org.thingsboard.server.gen.transport.coap.MeasurementsProtos;
38 import org.thingsboard.server.transport.coap.AbstractCoapTransportResource; 38 import org.thingsboard.server.transport.coap.AbstractCoapTransportResource;
  39 +import org.thingsboard.server.transport.coap.CoapTransportContext;
39 import org.thingsboard.server.transport.coap.callback.CoapDeviceAuthCallback; 40 import org.thingsboard.server.transport.coap.callback.CoapDeviceAuthCallback;
40 import org.thingsboard.server.transport.coap.callback.CoapOkCallback; 41 import org.thingsboard.server.transport.coap.callback.CoapOkCallback;
41 -import org.thingsboard.server.transport.coap.CoapTransportContext;  
42 import org.thingsboard.server.transport.coap.efento.utils.CoapEfentoUtils; 42 import org.thingsboard.server.transport.coap.efento.utils.CoapEfentoUtils;
43 43
44 import java.util.ArrayList; 44 import java.util.ArrayList;