Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

com::cosylab::acs::laser::dao::ACSAlarmDAOImpl Class Reference

Collaboration diagram for com::cosylab::acs::laser::dao::ACSAlarmDAOImpl:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ACSAlarmDAOImpl (Logger log)
List< FaultFamily > loadAlarms () throws Exception
Alarm findAlarm (String alarmId)
Alarm getAlarm (String alarmId)
String[] findAlarmIdsByPriority (Integer priority)
String findLaserSurveillanceAlarmId ()
void deleteAlarm (Alarm alarm)
void saveMemberAlarms (String member)
void saveAlarm (Alarm alarm)
void updateAlarm (Alarm alarm)
void updateStatus (Status status)
Collection search (String select_sql)
Collection archiveSearch (String select_sql)
Building findBuilding (String building)
void setConfAccessor (ConfigurationAccessor conf)
void setSurveillanceAlarmId (String surveillanceAlarmId)
void setResponsiblePersonDAO (ResponsiblePersonDAO responsiblePersonDAO)
String[] getAllAlarmIDs ()
HashMap< String, SourcegetSources ()

Package Functions

Building loadBuilding (String buildingID)

Static Package Functions

AlarmRefMatcher toMatcher (AlarmDefinition def)
String memberFromAlarmID (String alarmId)
String encodeToXML (Alarm alarm)
String encodeToXML (StringBuffer result, Alarm alarm)

Package Attributes

Logger logger
ConfigurationAccessor conf
String surveillanceAlarmId
ResponsiblePersonDAO responsiblePersonDAO

Static Package Attributes

final HardcodedBuilding theBuilding = HardcodedBuilding.instance
final HardcodedLocation theLocation = HardcodedLocation.instance

Private Member Functions

void generateAlarmsMap (Vector< FaultFamily > families)
void loadReductionRules ()
void saveAllIDs ()

Private Attributes

HashMap< String, AlarmalarmDefs = new HashMap<StringAlarm>()
HashMap< String, SourcesrcDefs = new HashMap<String Source>()

Static Private Attributes

final String ALARM_DEFINITION_PATH = "/Alarms/AlarmDefinitions"
final String REDUCTION_DEFINITION_PATH = "/Alarms/Administrative/ReductionDefinitions"
final String XML_DOCUMENT_TYPE = "AlarmDefinitions"
final String DEFAULT_FM = "*"

Detailed Description

Read alarms from the CDB.

CDB contains one file per each possible FF and one entry per each FC and FM. It is possible to specify a default member to be used when the administrator did not specify the member.

The alarms are stored in an HashMap having the triplet as key. The default member has a triplet with a "*" replacing its name.

The sources are defined together with an alarm definition so they are read here and requested by the ACSSourceDAOImpl at startup (instead of being read again from CDB).

The initialization of the alarms is not completely done by loadAlarms because not all the info are available at this time. In fact the categories are assigned to alarms by ACSCategoryDAOImpl

See also:
ACSSourceDAOImpl

ACSCategoryDAOImpl

Author:
acaproni


Constructor & Destructor Documentation

com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::ACSAlarmDAOImpl Logger  log  )  [inline]
 

Constructor

Parameters:
log The log (not null)
 


Member Function Documentation

Collection com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::archiveSearch String  select_sql  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::deleteAlarm Alarm  alarm  )  [inline]
 

String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::encodeToXML StringBuffer  result,
Alarm  alarm
[inline, static, package]
 

String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::encodeToXML Alarm  alarm  )  [inline, static, package]
 

Alarm com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::findAlarm String  alarmId  )  [inline]
 

String [] com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::findAlarmIdsByPriority Integer  priority  )  [inline]
 

Building com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::findBuilding String  building  )  [inline]
 

String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::findLaserSurveillanceAlarmId  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::generateAlarmsMap Vector< FaultFamily >  families  )  [inline, private]
 

Generate the alarms from the definition of the fault families. The alarms will be added into the HashMap with their triplet as key. The default item has FM="*".

The sources read from the families are also added to the HashMap of the sources

Parameters:
families The FF read from the CDB

Alarm com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::getAlarm String  alarmId  )  [inline]
 

Get an alarm from the cache.

Get an alarm from the cache. If the alarm with the given triplet is not in the cache then it looks for a default alarm before returning null.

If a default alarm is found, then a new alarm is created by cloning the default alarm. The triplet of this new alarm is set to be equal to the passed alarm ID.

Parameters:
alarmId The ID of the alarm
Returns:
An alarm with the given ID if it exists in the CDB If an alarm with the give ID does not exist but a matching default alarm is defined then it return a clone of the default alarm null If the alarm is not defined in the CDB and a default alarm does not exist

String [] com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::getAllAlarmIDs  )  [inline]
 

HashMap<String,Source> com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::getSources  )  [inline]
 

Getter method

Returns:
The sources

List<FaultFamily> com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::loadAlarms  )  throws Exception [inline]
 

Load alarms from CDB.

Read the alarms by the alarm definitions file of the CDB. The initialization of the alarms is not complete at this stage. In fact the categories are assigned to alarms when reading the categories from the CDB by ACSCategoryDAOImpl

Exceptions:
Exception In case of error while parsing XML definition files
See also:
ACSCategoryDAOImpl

Building com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::loadBuilding String  buildingID  )  [inline, package]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::loadReductionRules  )  [inline, private]
 

Load the reduction rules from the CDB.

Read the reduction rules from the CDB and set up the alarms accordingly

String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::memberFromAlarmID String  alarmId  )  [inline, static, package]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::saveAlarm Alarm  alarm  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::saveAllIDs  )  [inline, private]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::saveMemberAlarms String  member  )  [inline]
 

Collection com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::search String  select_sql  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::setConfAccessor ConfigurationAccessor  conf  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::setResponsiblePersonDAO ResponsiblePersonDAO  responsiblePersonDAO  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::setSurveillanceAlarmId String  surveillanceAlarmId  )  [inline]
 

AlarmRefMatcher com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::toMatcher AlarmDefinition  def  )  [inline, static, package]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::updateAlarm Alarm  alarm  )  [inline]
 

void com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::updateStatus Status  status  )  [inline]
 


Member Data Documentation

final String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::ALARM_DEFINITION_PATH = "/Alarms/AlarmDefinitions" [static, private]
 

HashMap<String,Alarm> com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::alarmDefs = new HashMap<StringAlarm>() [private]
 

The alarms read out the CDB The CDB contains fault families. The alarms are generated from the fault families.

ConfigurationAccessor com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::conf [package]
 

final String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::DEFAULT_FM = "*" [static, private]
 

Logger com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::logger [package]
 

final String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::REDUCTION_DEFINITION_PATH = "/Alarms/Administrative/ReductionDefinitions" [static, private]
 

ResponsiblePersonDAO com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::responsiblePersonDAO [package]
 

HashMap<String, Source> com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::srcDefs = new HashMap<String Source>() [private]
 

Source are defined together with alarms This HashMap contains all the sources read from CDB

String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::surveillanceAlarmId [package]
 

final HardcodedBuilding com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::theBuilding = HardcodedBuilding.instance [static, package]
 

final HardcodedLocation com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::theLocation = HardcodedLocation.instance [static, package]
 

final String com::cosylab::acs::laser::dao::ACSAlarmDAOImpl::XML_DOCUMENT_TYPE = "AlarmDefinitions" [static, private]
 


The documentation for this class was generated from the following file:
Generated on Thu Apr 30 03:10:13 2009 for ACS Java API by doxygen 1.3.8