package com.hdl.linkpm.sdk.scene; import com.hdl.linkpm.sdk.core.callback.IDefaultCallBack; import com.hdl.linkpm.sdk.core.callback.IResponseCallBack; import com.hdl.linkpm.sdk.scene.bean.SceneInfoBean; import com.hdl.linkpm.sdk.scene.controller.HDLPMSceneController; import java.util.List; /** * Created by jlchen on 12/2/21. */ public class HDLLinkPMScene { //instance private volatile static HDLLinkPMScene instance; /** * getInstance * * @return HDLLinkPMScene */ public static synchronized HDLLinkPMScene getInstance() { if (instance == null) { synchronized (HDLLinkPMScene.class) { if (instance == null) { instance = new HDLLinkPMScene(); } } } return instance; } /***************5.场景增删改查管理***************/ /** * 全量同步场景 * * @param homeId 住宅id * @param sceneInfoBeanList 场景列表 * @param callBack * @return */ public void fullSyncSceneList(String homeId, List sceneInfoBeanList, IDefaultCallBack callBack) { HDLPMSceneController.getInstance().fullSyncSceneList(homeId, sceneInfoBeanList, callBack); } /** * 获取场景列表 * * @param homeId 住宅id * @param uid 房间uid,不传默认查全部 * @param callBack * @return */ public void getSceneList(String homeId, String uid, IResponseCallBack> callBack) { HDLPMSceneController.getInstance().getSceneList(homeId, uid, callBack); } /** * 删除场景 * * @param homeId 住宅id * @param sids 场景sid列表 * @param callBack * @return */ public void deleteScene(String homeId, List sids, IDefaultCallBack callBack) { HDLPMSceneController.getInstance().deleteScene(homeId, sids, callBack); } /** * 执行场景 * * @param homeId 住宅id * @param sids 场景IDs * @param callBack * @return */ public void controlScene(String homeId, List sids, IDefaultCallBack callBack) { HDLPMSceneController.getInstance().controlScene(homeId, sids, callBack); } }