thresholdalarmpropagator.java
来自「全面实现ilog地功能,没有使用第三方lib.」· Java 代码 · 共 42 行
JAVA
42 行
/* * This source code is part of TWaver 1.3.1 * * SERVA Software PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * Copyright 2000-2005 SERVA Software, Inc. All rights reserved. */package demo.alarm;
import java.util.Iterator;
import twaver.AlarmSeverity;
import twaver.Element;
import twaver.SummingAlarmPropagator;
public class ThresholdAlarmPropagator extends SummingAlarmPropagator{
/**
* propagate the element's alarm state to its parent
* @param element the element that cause propagate
* @param parent the parent that need to be propagate
*/
protected void propagateToParent(Element element, Element parent){
// figure out parent's highest prop severity
AlarmSeverity result = null;
Iterator it = parent.children();
while (it.hasNext()) {
Element child = (Element) it.next();
int count = child.getAlarmState().getAlarmCount(AlarmSeverity.CRITICAL);
if (count >= 3) {
result = AlarmSeverity.CRITICAL;
break;
}
if(child.getAlarmState().getPropagateSeverity() == AlarmSeverity.CRITICAL){
result = AlarmSeverity.CRITICAL;
break;
}
}
// propagate this result to parent.
parent.getAlarmState().setPropagateSeverity(result);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?