562935844@qq.com
2023-04-11 2574334327d47d5b0d62e1e9fe442a493bbcf2bd
HDLSDK/hdl-connect/src/main/java/com/hdl/sdk/connect/socket/HDLSocket.java
@@ -26,6 +26,7 @@
import com.hdl.sdk.connect.bean.request.DeviceAuthRequest;
import com.hdl.sdk.connect.bean.request.GatewayInfoRequest;
import com.hdl.sdk.connect.bean.request.ListOidRequest;
import com.hdl.sdk.connect.bean.request.ListOidRequest2;
import com.hdl.sdk.connect.bean.request.ListUploadRequest;
import com.hdl.sdk.connect.bean.response.AuthenticateResponse;
import com.hdl.sdk.connect.bean.response.BaseLocalResponse;
@@ -765,13 +766,13 @@
        final String msgId = IdUtils.getUUId();
        String time = String.valueOf(System.currentTimeMillis());
        final BaseLocalResponse<List<ListOidRequest>> data = new BaseLocalResponse<>();
        final BaseLocalResponse<List<ListOidRequest2>> data = new BaseLocalResponse<>();
        data.setId(msgId);
        data.setTime_stamp(time);
        final ListOidRequest request = new ListOidRequest();
        final ListOidRequest2 request = new ListOidRequest2();
        request.setOid(oid);
        List<ListOidRequest> list = new ArrayList<>();
        List<ListOidRequest2> list = new ArrayList<>();
        list.add(request);
        data.setObjects(list);
@@ -814,6 +815,64 @@
        }
    }
    /**
     * 通知删除并退网子设备拓扑关系
     *
     * @param oid      从网关(设备)oid
     * @param callBack 结果回调
     */
    public void deleteNetwork(String oid, HDLLinkCallBack callBack) {
        if (TextUtils.isEmpty(oid)) {
            callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_NULL_ERROR));
        }
        final String msgId = IdUtils.getUUId();
        String time = String.valueOf(System.currentTimeMillis());
        final BaseLocalResponse<List<ListOidRequest>> data = new BaseLocalResponse<>();
        data.setId(msgId);
        data.setTime_stamp(time);
        final ListOidRequest request = new ListOidRequest();
        request.setOid(oid);
        List<ListOidRequest> list = new ArrayList<>();
        list.add(request);
        data.setObjects(list);
        String topic = String.format(TopicConstant.DELETE_NOTIFY_REPLY, HDLLinkConfig.getInstance().getGatewayId());
        LinkRequest message = new LinkRequest(topic,
                GsonConvert.getGson().toJson(data));
//        String replyTopic = topic + "_reply";
        try {
            sendMsg(message.getSendBytes(), topic, callBack, new SendListener() {
                @Override
                public void onSucceed() {
                    if (callBack == null) return;
                    try {
                        callBack.onSuccess("退网成功");
                        HDLLinkConfig.getInstance().clearConfig();
                    } catch (Exception e) {
                        callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_DATA_ERROR));
                    }
                }
                @Override
                public void onError() {
                    if (callBack != null) {
                        callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_SEND_ERROR));
                    }
                }
            });
        } catch (Exception e) {
            if (callBack != null) {
                callBack.onError(HDLLinkException.getErrorWithCode(HDLLinkCode.HDL_SEND_ERROR));
            }
        }
    }
//    /**
//     * 清空缓存
//     */