| | | | Browse by category |
Question
How can I implement Alarm Propagation at the level of the data model?
Answer
This sample provides new classes and interfaces for implementing alarm propagation at the level of the data model. A sample is provided for testing these new classes. Alarm propagation should be implemented in the back-end system or in the data model for the GUI. This sample shows how to do such alarm propagation at the point alarms are created. This should be sufficient for most (but not all) applications.
The sample includes an AlarmPropagationManger class to which you can add one or more type of PropagationPolicy. Three such policies are defined in the sample:
- Child-to-Parent- When a raw alarm is added to an object, this policy adds impact alarms to all of its ancestor objects.
- Node-to-Links - When a raw alarm is added to a node, this policy adds impact alarms to all attached links.
- Link-to-Nodes - When a raw alarm is added to a link, this policy adds impact alarms to all attached nodes.
In addition to these policies, the policy classes or interface provided in this sample can be extended to produce custom alarm propagation policies. You can add any number of policies to the same manager as long as your policy logic does not produce looping.