From c1e8d3a7709295a52814378e73a68e1e1fd20da6 Mon Sep 17 00:00:00 2001 From: 562935844@qq.com Date: 星期三, 18 十月 2023 16:47:40 +0800 Subject: [PATCH] 上报oid列表新增parentoid --- HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java | 170 +++++++++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 143 insertions(+), 27 deletions(-) diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java index b671bb6..006fd97 100644 --- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java +++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/config/HDLLinkConfig.java @@ -3,7 +3,10 @@ import android.text.TextUtils; import com.hdl.sdk.common.config.TopicConstant; +import com.hdl.sdk.common.utils.LogUtils; import com.hdl.sdk.common.utils.SPUtils; +import com.hdl.sdk.connect.bean.request.AuthenticateRequest; +import com.hdl.sdk.connect.bean.response.GatewaySearchBean; /** @@ -12,33 +15,50 @@ * @Description : HDLLinkConfig */ public class HDLLinkConfig { - private static final String Authenticate_LS_KEY = "auth_ls_key"; + private static final String AUTHENTICATE_LS_KEY = "auth_ls_key"; private static final String AUTHENTICATE_GATEWAYID_KEY = "auth_gatewayid_key"; private static final String AUTHENTICATE_IPADDRESS_KEY = "auth_ipaddress_key"; + private static final String AUTHENTICATE_IS_LS_KEY = "auth_isls_key"; + public static final String AUTHENTICATE_IS_DEVICEINFO_KEY = "auth_deviceinfo_key"; + + public static final String GATEWAY_REMOTEINFO_KEY="gateway_remoteinfo_key"; + private static final String GATEWAY_PARENTOID_KEY = "gateway_parentoiid_key"; private String localSecret;//鏈湴鍔犲瘑瀵嗛挜 private String gatewayId; private String ipAddress; - private boolean isLocalEncrypt;//缃戝叧鏄惁闇�瑕佸姞瀵嗛�氳 + private GatewaySearchBean currentGateway;//褰撳墠缃戝叧 + private String networkName; + private String homeId; + private String parentOid; + + private AuthenticateRequest.AuthenticateDeviceInfoBean deviceInfoBean;//褰撳墠璁惧鍩烘湰淇℃伅 + private AuthenticateRequest.RequestBean requestBean;//褰撳墠璁惧鍩烘湰淇℃伅 + private AuthenticateRequest.AuthBean authBean;//褰撳墠璁惧璁よ瘉淇℃伅 /** * instance */ - private volatile static HDLLinkConfig instance; + private static final HDLLinkConfig instance=new HDLLinkConfig(); + private HDLLinkConfig() + { + loadConfig(); + } + /** * getInstance * * @return AuthenticateConfig */ - public static synchronized HDLLinkConfig getInstance() { - if (instance == null) { - synchronized (HDLLinkConfig.class) { - if (instance == null) { - instance = new HDLLinkConfig(); - instance.loadConfig(); - } - } - } + public static HDLLinkConfig getInstance() { +// if (instance == null) { +// synchronized (HDLLinkConfig.class) { +// if (instance == null) { +// instance = new HDLLinkConfig(); +// instance.loadConfig(); +// } +// } +// } return instance; } @@ -49,22 +69,29 @@ this.gatewayId = ""; this.ipAddress = ""; this.localSecret = ""; - SPUtils.remove(Authenticate_LS_KEY); + this.homeId=""; + SPUtils.remove(AUTHENTICATE_LS_KEY); SPUtils.remove(AUTHENTICATE_GATEWAYID_KEY); SPUtils.remove(AUTHENTICATE_IPADDRESS_KEY); + SPUtils.remove(AUTHENTICATE_IS_LS_KEY); + SPUtils.remove(GATEWAY_REMOTEINFO_KEY); + SPUtils.remove(GATEWAY_PARENTOID_KEY); } /** * 鍔犺浇缂撳瓨 */ - void loadConfig(){ - localSecret = SPUtils.getString(Authenticate_LS_KEY, ""); + void loadConfig() { + localSecret = SPUtils.getString(AUTHENTICATE_LS_KEY, ""); gatewayId = SPUtils.getString(AUTHENTICATE_GATEWAYID_KEY, ""); ipAddress = SPUtils.getString(AUTHENTICATE_IPADDRESS_KEY, ""); + homeId = SPUtils.getString(GATEWAY_REMOTEINFO_KEY, ""); + parentOid = SPUtils.getString(GATEWAY_PARENTOID_KEY, ""); } /** * 淇濆瓨閰嶇疆 + * * @param localSecret * @param gatewayId * @param ipAddress @@ -73,23 +100,35 @@ this.localSecret = localSecret; this.gatewayId = gatewayId; this.ipAddress = ipAddress; - SPUtils.put(Authenticate_LS_KEY, localSecret); + SPUtils.put(AUTHENTICATE_LS_KEY, localSecret); SPUtils.put(AUTHENTICATE_GATEWAYID_KEY, gatewayId); SPUtils.put(AUTHENTICATE_IPADDRESS_KEY, ipAddress); + + } + + /** + * 閲嶆柊淇濆瓨 + */ + public void reSaveConfig() { + this.saveConfig(this.localSecret, this.gatewayId, this.ipAddress); } /** * 妫�娴嬫槸鍚﹀凡缁忚璇佽繃 + * * @return */ - public boolean checkIfCertified(){ - //localSecret涓嶄负绌哄苟涓旈暱搴︾瓑浜�16 - return !TextUtils.isEmpty(localSecret) && localSecret.length() == 16; + public boolean checkIfCertified() { + //localSecret涓嶄负绌哄苟涓旈暱搴︾瓑浜�16 缃戝叧id涓嶈兘涓虹┖ + return !TextUtils.isEmpty(gatewayId); +// return !TextUtils.isEmpty(localSecret) +// && localSecret.length() == 16 +// && !TextUtils.isEmpty(gatewayId); } public void setLocalSecret(String localSecret) { this.localSecret = localSecret; - SPUtils.put(Authenticate_LS_KEY, localSecret); + SPUtils.put(AUTHENTICATE_LS_KEY, localSecret); } public String getLocalSecret() { @@ -99,33 +138,110 @@ public String getGatewayId() { return gatewayId; } + public void setGatewayId(String gatewayId) { + this.gatewayId=gatewayId; + } public String getIpAddress() { return ipAddress; } - - public boolean isLocalEncrypt() { - return isLocalEncrypt; + public void setIpAddress(String ipAddress){ + this.ipAddress = ipAddress; } - public void setLocalEncrypt(boolean localEncrypt) { - isLocalEncrypt = localEncrypt; + public String getParentOid() { + return parentOid; + } + + public void setParentOid(String parentOid) { + this.parentOid = parentOid; + SPUtils.put(GATEWAY_PARENTOID_KEY, parentOid); + } + + public String getNetworkName() { + return networkName; + } + + public void setNetworkName(String networkName) { + this.networkName = networkName; + } + + public GatewaySearchBean getCurrentGateway() { + return currentGateway; + } + + public void setCurrentGateway(GatewaySearchBean currentGateway) { + this.currentGateway = currentGateway; + if (this.currentGateway != null && !TextUtils.isEmpty(this.currentGateway.getIp_address())) { + if (!this.ipAddress.equals(this.currentGateway.getIp_address())) { + //濡傛灉IP鍦板潃鏈夊彉鍖栧垯鏇存柊 + this.ipAddress = this.currentGateway.getIp_address(); + SPUtils.put(AUTHENTICATE_IPADDRESS_KEY, ipAddress); + } + } } /** * 鍒ゆ柇褰撳墠涓婚鏁版嵁鏄惁闇�瑕佸姞瀵� + * * @param topicStr 褰撳墠涓婚 * @return */ - public boolean ifNeedEncrypt(String topicStr){ + public boolean ifNeedEncrypt(String topicStr) { //杩囨护鐩稿叧闇�瑕佸姞瀵嗙殑涓婚 return (!topicStr.contains(TopicConstant.GATEWAY_AUTH_BROADCAST) //缃戝叧骞挎挱鍏ョ綉鎸囦护 && !topicStr.contains(TopicConstant.DEIVCE_AUTH_REQUEST) //鍏ョ綉璁よ瘉 && !topicStr.contains(TopicConstant.GATEWAY_SEARCH) //鎼滅储缃戝叧涓婚 - && isLocalEncrypt//鍚敤鍔犲瘑鏍囧織 + && !topicStr.contains(TopicConstant.BROADCAST) + && !TextUtils.isEmpty(localSecret) //鏈夊瘑閽ュ氨鏄姞瀵� ); } + /** + * 鎷兼帴缃戝叧ID鑾峰彇瀹屾暣鐨勪富棰� + * + * @param topicStr + * @return + */ + public String getFullTopic(String topicStr) { + return String.format(topicStr, gatewayId); + } + public AuthenticateRequest.AuthenticateDeviceInfoBean getDeviceInfoBean() { + AuthenticateRequest.AuthenticateDeviceInfoBean infoBean = (AuthenticateRequest.AuthenticateDeviceInfoBean) SPUtils.getSerializableEntity(AUTHENTICATE_IS_DEVICEINFO_KEY); + if(infoBean==null){ + infoBean= new AuthenticateRequest.AuthenticateDeviceInfoBean(); + } + return infoBean; + } + public void setDeviceInfoBean(AuthenticateRequest.AuthenticateDeviceInfoBean deviceInfoBean) { + this.deviceInfoBean = deviceInfoBean; + SPUtils.saveSerializableEntity(AUTHENTICATE_IS_DEVICEINFO_KEY, deviceInfoBean); + } + + public AuthenticateRequest.RequestBean getRequestBean() { + return requestBean; + } + + public void setRequestBean(AuthenticateRequest.RequestBean requestBean) { + this.requestBean = requestBean; + } + + public AuthenticateRequest.AuthBean getAuthBean() { + return authBean; + } + + public void setAuthBean(AuthenticateRequest.AuthBean authBean) { + this.authBean = authBean; + } + + public String getHomeId() { + return homeId; + } + + public void setHomeId(String homeId) { + this.homeId = homeId; + SPUtils.put(GATEWAY_REMOTEINFO_KEY, homeId); + } } -- Gitblit v1.8.0