package com.hdl.linkpm.sdk.workbench.databackup; import com.hdl.linkpm.sdk.core.bean.PageInfoListBean; import com.hdl.linkpm.sdk.core.callback.IDefaultCallBack; import com.hdl.linkpm.sdk.core.callback.IResponseCallBack; import com.hdl.linkpm.sdk.workbench.databackup.bean.BackupListBean; import com.hdl.linkpm.sdk.workbench.databackup.bean.GatewayBackupBean; import com.hdl.linkpm.sdk.workbench.databackup.controller.DataBackupController; import java.util.List; /** * Created by hxb on 2022/2/23. */ public class HDLPMDataBackup { //instance private volatile static HDLPMDataBackup instance; /** * getInstance * * @return HDLPMDataBackup */ public static synchronized HDLPMDataBackup getInstance() { if (instance == null) { synchronized (HDLPMDataBackup.class) { if (instance == null) { instance = new HDLPMDataBackup(); } } } return instance; } /***************备份文件上传下载***************/ /** * 上传备份文件 * * @param homeId 住宅id * @param data 文件 备份文件数据 * @param callBack * @return */ public void databackupUpload(String homeId, byte[] data, IDefaultCallBack callBack) { DataBackupController.getInstance().dataBackupUpload(homeId, data, callBack); } /** * 删除备份数据 * * @param homeId 住宅id * @param callBack * @return */ public void databackDel(String homeId, IDefaultCallBack callBack) { DataBackupController.getInstance().databackDel(homeId, callBack); } /** * 获取下载最新路径 * * @param homeId 住宅id * @param filePath * @param callBack * @return */ public void databackDownload(String homeId, String filePath, IDefaultCallBack callBack) { DataBackupController.getInstance().databackDownload(homeId, filePath, callBack); } /** * 获取云端备份列表 * * @param userId 用户id * @param pageNo 开始索引 * @param pageSize 页面大小 * @param callBack * @return */ public void databackList(String userId, int pageNo, int pageSize, IResponseCallBack> callBack) { DataBackupController.getInstance().databackList(userId, pageNo, pageSize, callBack); } /** * 获取网关最新的三份备份数据 * * @param homeId 住宅Id * @param gatewayId 云端上网关gatewayId * @param callBack 回调 */ public void getGatewayBackupDataList(String homeId, String gatewayId, IResponseCallBack> callBack) { DataBackupController.getInstance().getGatewayBackupDataList(homeId, gatewayId, callBack); } /** * 获取调试完成的备份文件回复 * * @param homeId 住宅Id * @param gatewayId 云端上网关gatewayId * @param callBack 回调 */ public void getDebugGatewayBackupDataList(String homeId, String gatewayId, IResponseCallBack callBack) { DataBackupController.getInstance().getDebugGatewayBackupDataList(homeId, gatewayId, callBack); } /** * 调试宝选择网关恢复的备份文件 * * @param homeId 住宅Id * @param gatewayId 云端上网关gatewayId * @param recordId 备份记录id * @param callBack 回调 */ public void getGatewayBackupRecover(String homeId, String gatewayId,long recordId, IResponseCallBack callBack) { DataBackupController.getInstance().getGatewayBackupRecover(homeId, gatewayId,recordId, callBack); } /** * 网关替换 * * @param homeId 住宅Id * @param gatewayId 云端上网关gatewayId * @param newMac newMac 新网关mac * @param callBack 回调 */ public void getGatewayReplace(String homeId, String gatewayId,String newMac, IResponseCallBack callBack) { DataBackupController.getInstance().getGatewayReplace(homeId, gatewayId,newMac, callBack); } }