●函数:
public Map<Integer, List<HDAlarmRecord>> queryAlarmRecords(List<Integer> alarmTagIDs, HdAlarmQuery alarmQuery, long resultPropMask) throws HDSdkException
●参数:
参数名称 |
数据类型 |
参数说明 |
默认值 |
alarmTagIDs |
List<Integer> |
所要查詢的报警点ID数组 |
|
alarmQuery |
HdAlarmQuery |
查询条件对象,包含了起止时间、恢复、报警类型、是否确认等 |
|
resultPropMask |
long |
所要返回的报警记录的属性掩码,请参照HDAlarmRecordPropMask类 |
|
●返回值
返回值类型 |
返回值说明 |
Map<Integer, List<HDAlarmRecord>> |
报警点ID与对应的报警记录列表的Map |
●异常:
当参数出现错误时,向上抛出IllegalArgumentException异常
当后台查询出错时,向上抛出HDSdkException异常
●说明:
该接口用于根据起止时间查询所有报警(确认/未确认;恢复/未恢复;注释/未注释;各个优先级;各个类型)。
可能需要先进行登录操作,请参考HDDataConnection类
●示例代码:
注: 标记为红色的代码行为当前接口的调用
import com.baosight.hdsdk.HDAlarmManager;
import com.baosight.hdsdk.HDConnectionFactory;
import com.baosight.hdsdk.HDServerFactory;
import com.baosight.hdsdk.domain.alarm.HDAlarmRecord;
import com.baosight.hdsdk.domain.data.HDDataConnection;
import com.baosight.hdsdk.domain.data.HDDataServer;
import com.baosight.hdsdk.exception.HDSdkException;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
public class IhdJavaSdkAlarm {
public static void main(String[] args) {
// 设置服务器信息
String serverIP = "168.2.237.1";
String bakIp = "168.2.237.2";
HDDataServer server = HDServerFactory.getHDDataServer(serverIP,5673,bakIp,5673);
HDDataConnection dataConn = null;
try {
dataConn = HDConnectionFactory.getHDDataConnection(server);
dataConn.loginToServer("admin", "admin");
HDAlarmManager am = new HDAlarmManager(dataConn);
List<Integer> alarmTagIDs = new ArrayList<>();
alarmTagIDs.add(1);
alarmTagIDs.add(2);
HdAlarmQuery hdAlarmQuery = new HdAlarmQuery();
hdAlarmQuery.nTypeMask = HDAlarmRecordPropMask.MASK_ALARM_TYPE_HIGH;
long resultPropMask = HDAlarmRecordPropMask.ALARM_PRIORITY_FIRST;
Map<Integer, List<HDAlarmRecord>> resultMap = am.queryAlarmRecords(alarmTagIDs, hdAlarmQuery, resultPropMask);
dataConn.dispose();
} catch (HDSdkException e) {
e.printStackTrace();
}
}
}