From 37533747057091346d43b17f92717586f77f5583 Mon Sep 17 00:00:00 2001 From: Vincent Date: Thu, 12 Oct 2023 15:37:32 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=AE=80=E5=8C=96SDKManager=E6=89=80?= =?UTF-8?q?=E9=9C=80=E5=AE=9E=E7=8E=B0=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/dji/sdk/common/SDKManager.java | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/dji/sdk/common/SDKManager.java b/src/main/java/com/dji/sdk/common/SDKManager.java index 61b4b3f..f67fc7d 100644 --- a/src/main/java/com/dji/sdk/common/SDKManager.java +++ b/src/main/java/com/dji/sdk/common/SDKManager.java @@ -20,13 +20,21 @@ import java.util.concurrent.ConcurrentHashMap; */ public interface SDKManager { - GatewayManager getDeviceSDK(String gatewaySn); + default GatewayManager getDeviceSDK(String gatewaySn){ + return findDeviceSDK(gatewaySn) + .orElseThrow(()-> new CloudSDKException(CloudSDKErrorEnum.NOT_REGISTERED, + "The device has not been registered, please call the 'SDKManager.registerDevice()' method to register the device first.")); + } Optional findDeviceSDK(String gatewaySn); - GatewayManager registerDevice(String gatewaySn, String droneSn, - DeviceDomainEnum domain, DeviceTypeEnum type, DeviceSubTypeEnum subType, String gatewayThingVersion, String droneThingVersion); + default GatewayManager registerDevice(String gatewaySn, String droneSn, + DeviceDomainEnum domain, DeviceTypeEnum type, DeviceSubTypeEnum subType, String gatewayThingVersion, String droneThingVersion){ + return registerDevice(gatewaySn, droneSn, GatewayTypeEnum.find(DeviceEnum.find(domain, type, subType)), gatewayThingVersion, droneThingVersion); + } - GatewayManager registerDevice(String gatewaySn, String droneSn, GatewayTypeEnum type, String gatewayThingVersion, String droneThingVersion); + default GatewayManager registerDevice(String gatewaySn, String droneSn, GatewayTypeEnum type, String gatewayThingVersion, String droneThingVersion){ + return registerDevice(new GatewayManager(Objects.requireNonNull(gatewaySn), droneSn, type, gatewayThingVersion, droneThingVersion)); + } GatewayManager registerDevice(GatewayManager gateway);