public class VesAlarm implements Cloneable, Serializable{
private String domain;
private String eventId;
- private String EventName;
+ private String eventName;
private String eventType;
- private Object internalHeaderFields;
+ //Temporarily make it transient cuz no details of this field is provided and it is not used for now.
+ transient private Object internalHeaderFields;
private Long lastEpochMicrosec;
private String nfcNamingCode;
private String nfNamingCode;
private Long faultFieldsVersion;
private String specificProblem;
private String vfStatus;
+ private String parentId;
+ private int alarmIsCleared = 0; //mark as 1 when alarm type is cleared, else mark as 0
+ private int rootFlag = 0; // mark as 1 when alarm is a root alarm , else mark as 0
@Override
public int hashCode() {
- return this.version.hashCode();
+ return (this.getSourceId() + this.eventName.replace("Cleared", "")).hashCode();
}
@Override
if (object == null || !(object instanceof VesAlarm)) {
return false;
}
- return this.version.equals(((VesAlarm) object).getVersion());
+ return this.eventName.replace("Cleared", "")
+ .equals(((VesAlarm) object).getEventName().replace("Cleared", ""))
+ && this.getSourceId().equals(((VesAlarm) object).getSourceId());
}
@Override
vesAlarm.setFaultFieldsVersion(this.getFaultFieldsVersion());
vesAlarm.setSpecificProblem(this.getSpecificProblem());
vesAlarm.setVfStatus(this.vfStatus);
+ vesAlarm.setAlarmIsCleared(this.alarmIsCleared);
+ vesAlarm.setRootFlag(this.rootFlag);
return vesAlarm;
}