From c35181696815dcd3014892cd7ddfed62016431f0 Mon Sep 17 00:00:00 2001
From: JLChen <551775569@qq.com>
Date: 星期二, 16 十一月 2021 15:19:27 +0800
Subject: [PATCH] 2021-11-16 更新

---
 HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java |  137 +++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 130 insertions(+), 7 deletions(-)

diff --git a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java
index 1d82c87..7458c14 100644
--- a/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java
+++ b/HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/HDLLink.java
@@ -1,10 +1,16 @@
 package com.hdl.sdk.connect;
 
+import com.hdl.sdk.connect.bean.request.DeviceControlRequest;
+import com.hdl.sdk.connect.callback.HDLLinkCallBack;
+import com.hdl.sdk.connect.callback.HDLLinkResponseCallBack;
 import com.hdl.sdk.connect.config.HDLLinkConfig;
 import com.hdl.sdk.common.event.EventDispatcher;
 import com.hdl.sdk.common.event.EventListener;
-import com.hdl.sdk.connect.bean.AuthenticateRequest;
+import com.hdl.sdk.connect.bean.request.AuthenticateRequest;
 import com.hdl.sdk.connect.socket.HDLAuthSocket;
+import com.hdl.sdk.connect.socket.HDLSocket;
+
+import java.util.List;
 
 /**
  * Created by jlchen on 11/15/21.
@@ -44,9 +50,11 @@
      * @param listener
      */
     public synchronized void removeAllTopicsListener(EventListener listener) {
+        if(listener == null) return;
         EventDispatcher.getInstance().removeAllTopicsListener(listener);
     }
 
+    /***********************涓夋柟璁惧鍜岀綉鍏抽�氫俊涔嬪墠鐨勮璇佹祦绋�****************************/
     /**
      * 妫�娴嬫槸鍚﹀凡缁忚璇佽繃
      * 璁よ瘉閫氳繃鎵嶈兘杩涜璁惧鎺у埗
@@ -57,22 +65,137 @@
     }
 
     /**
+     * 寮�濮嬬洃鍚拰鍙戣捣鍏ョ綉鍙婅璇佽姹�
+     *
+     * @param request  璁よ瘉璇锋眰淇℃伅
+     * @param callBack 缁撴灉鍥炶皟
+     */
+    public void startAuthenticateRequest(AuthenticateRequest request, HDLLinkCallBack callBack) {
+        HDLAuthSocket.getInstance().startAuthenticateRequest(request,callBack);
+    }
+
+    /**
      * 鍙戦�佸叆缃戝強璁よ瘉璇锋眰
      *
      * @param ip       缃戝叧IP
      * @param request  璁よ瘉璇锋眰淇℃伅
      * @param callBack 缁撴灉鍥炶皟
      */
-    public void sendAuthenticateRequest(String ip, AuthenticateRequest request, HDLAuthSocket.CallBack callBack) {
-        HDLAuthSocket.getInstance().sendAuthenticateRequest(ip,request,callBack);
+    public void sendAuthenticateRequest(String ip, AuthenticateRequest request, HDLLinkCallBack callBack) {
+        HDLAuthSocket.getInstance().sendAuthenticateRequest(ip, request, callBack);
+    }
+
+    //    /**
+//     * 寮�濮嬫悳绱㈡墍鏈夌綉鍏筹紝鏈夌綉鍏冲洖澶嶅氨鍥炶皟锛屼笂灞傝嚜宸卞仛鍘婚噸鍒ゆ柇
+//     *
+//     * @param callBack 鍥炶皟
+//     */
+//    public void startSearchAllGateway(HDLAuthSocket.SearchGatewayCallBack callBack) {
+//
+//    }
+//
+//    /**
+//     * 鏆傚仠鎼滅储缃戝叧
+//     */
+//    public void endSearchAllGateway() {
+//
+//    }
+
+    /***********************涓夋柟璁惧璇峰厛璁よ瘉鎴愬姛 鍐嶈皟鐢ㄤ笅闈㈢殑鎺ュ彛鍜岀綉鍏抽�氫俊****************************/
+    /**
+     * 缁勬挱鎼滅储鎸囧畾缃戝叧鏄惁鍦ㄧ嚎锛屾悳绱㈠埌鍒欒繑鍥炴寚瀹氱殑缃戝叧瀵硅薄
+     * @param callBack  鍥炶皟
+     */
+    public void searchGatewayMulticast(HDLAuthSocket.SearchGatewayCallBack callBack) {
+        HDLAuthSocket.getInstance().searchGatewayMulticast(callBack);
     }
 
     /**
-     * 鎼滅储鎸囧畾缃戝叧鏄惁鍦ㄧ嚎锛屾悳绱㈠埌鍒欒繑鍥炴寚瀹氱殑缃戝叧瀵硅薄
-     *
+     * 缁勬挱鎼滅储鎸囧畾缃戝叧鏄惁鍦ㄧ嚎锛屾悳绱㈠埌鍒欒繑鍥炴寚瀹氱殑缃戝叧瀵硅薄
      * @param callBack  鍥炶皟
      */
-    public void searchGateway(HDLAuthSocket.SearchGatewayCallBack callBack) {
-        HDLAuthSocket.getInstance().searchGateway(HDLLinkConfig.getInstance().getGatewayId(), callBack);
+    public void searchGatewayBroadcast(HDLAuthSocket.SearchGatewayCallBack callBack) {
+        HDLAuthSocket.getInstance().searchGatewayBroadcast(callBack);
+    }
+
+    /**
+     * 鑾峰彇璁惧鍒楄〃
+     */
+    public void getDeviceList(HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().getDeviceList(callBack);
+    }
+
+    /**
+     * 鑾峰彇鍔熻兘鍒楄〃
+     */
+    public void getFunctionList(HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().getFunctionList(callBack);
+    }
+
+    /**
+     * 鑾峰彇鍔熻兘灞炴��
+     *
+     * @param sids
+     * @param callBack
+     */
+    public void getFunctionAttribute(List<String> sids, HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().getFunctionAttribute(sids, callBack);
+    }
+
+    /**
+     * 璁惧鎺у埗
+     * @param request 鎺у埗鐘舵�佸弬鏁�
+     * @param callBack 缁撴灉鍥炶皟
+     */
+    public void propertyDown(List<DeviceControlRequest> request, HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().propertyDown(request, callBack);
+    }
+
+    /**
+     * 璇诲彇鐘舵��
+     * @param sids 璇锋眰鍙傛暟 鎸囧畾璇诲彇鐨勮澶噑id鍒楄〃
+     * @param callBack 鍥炶皟
+     */
+    public void propertyRead(List<String> sids, HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().propertyRead(sids, callBack);
+    }
+
+    /**
+     * 鑾峰彇鍦烘櫙鍒楄〃
+     */
+    public void getSceneList(HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().getSceneList(callBack);
+    }
+
+    /**
+     * 鍦烘櫙鎺у埗
+     * @param sids 鍦烘櫙sid鍒楄〃
+     * @param callBack 鍥炶皟
+     */
+    public void controlScene(List<String> sids, HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().controlScene(sids, callBack);
+    }
+
+    /**
+     * 閫氱敤UDP骞挎挱鍙戦�佹寚浠�
+     * 1绉掓病鍝嶅簲灏辫浠栭噸鏂板彂閫�,閲嶈瘯3娆�
+     * @param topic 鍙戦�佹暟鎹�
+     * @param bodyStr body鍐呭
+     * @param callBack 鍥炶皟
+     */
+    public void udpSendMsg(String topic, String bodyStr, HDLLinkResponseCallBack callBack) {
+        HDLAuthSocket.getInstance().udpSendMsg(topic, bodyStr, callBack);
+    }
+
+    /**
+     * 閫氱敤TCP鍙戦�佹寚浠�
+     * 1绉掓病鍝嶅簲灏辫浠栭噸鏂板彂閫�,閲嶈瘯3娆�
+     *
+     * @param topic    鍙戦�佹暟鎹�
+     * @param bodyStr  body鍐呭
+     * @param callBack 鍥炶皟
+     */
+    public void tcpSendMsg(String topic, String bodyStr, HDLLinkCallBack callBack) {
+        HDLSocket.getInstance().tcpSendMsg(topic, bodyStr, callBack);
     }
 }

--
Gitblit v1.8.0