DTNMA Reference Tools v2.1.0 - 13.gc5c0bac
Delay-Tolerant Networking Management Architecture (DTNMA) Tool Suite
Loading...
Searching...
No Matches
alarms.c File Reference
#include "alarms.h"
#include "agent.h"
#include "eval.h"
#include "cace/ari/time_util.h"
#include "cace/util/logging.h"
#include "cace/util/defs.h"
+ Include dependency graph for alarms.c:

Enumerations

enum  alarm_table_col_e {
  ALARM_TABLE_COL_RESOURCE , ALARM_TABLE_COL_CATEGORY , ALARM_TABLE_COL_SEVERITY , ALARM_TABLE_COL_CREATED_AT ,
  ALARM_TABLE_COL_UPDATED_AT , ALARM_TABLE_COL_HISTORY , ALARM_TABLE_COL_MGR_STATE , ALARM_TABLE_COL_MGR_IDENT ,
  ALARM_TABLE_COL_MGR_TIME
}
 Table column index. More...
 

Functions

void refda_alarms_history_item_init (refda_alarms_history_item_t *obj)
 
void refda_alarms_history_item_deinit (refda_alarms_history_item_t *obj)
 
void refda_alarms_entry_init (refda_alarms_entry_t *obj)
 
void refda_alarms_entry_deinit (refda_alarms_entry_t *obj)
 
int refda_alarms_entry_key_cmp (const refda_alarms_entry_key_t *left, const refda_alarms_entry_key_t *right)
 
void refda_alarms_init (refda_alarms_t *obj)
 
void refda_alarms_deinit (refda_alarms_t *obj)
 
void refda_alarms_set_refs (refda_agent_t *agent, const cace_ari_t *resource, const cace_ari_t *category, refda_alarms_severity_t severity)
 Record a new alarm state in the Agent based on object references.
 
static cace_ari_translate_result_t alarm_list_filter_sub_label (cace_ari_t *out, const cace_ari_t *in, const cace_ari_translate_ctx_t *ctx)
 Translation helper function to substitute any LABEL value in the expression with corresponding data from an .
 
int refda_alarms_get_table (refda_runctx_t *runctx, cace_ari_t *out)
 Get a table representing the alarm list.
 
size_t refda_alarms_purge (refda_runctx_t *runctx, const cace_ari_t *filter)
 Purge the list of alarms based on filtered entries.
 
size_t refda_alarms_compress (refda_runctx_t *runctx, const cace_ari_t *filter)
 Compress the history on on filtered entries.
 
size_t refda_alarms_mgr_state (refda_runctx_t *runctx, const cace_ari_t *filter, refda_alarms_mgr_state_t state)
 Set the manager state on on filtered entries.
 

Enumeration Type Documentation

◆ alarm_table_col_e

Table column index.

Enumerator
ALARM_TABLE_COL_RESOURCE 
ALARM_TABLE_COL_CATEGORY 
ALARM_TABLE_COL_SEVERITY 
ALARM_TABLE_COL_CREATED_AT 
ALARM_TABLE_COL_UPDATED_AT 
ALARM_TABLE_COL_HISTORY 
ALARM_TABLE_COL_MGR_STATE 
ALARM_TABLE_COL_MGR_IDENT 
ALARM_TABLE_COL_MGR_TIME 

Function Documentation

◆ alarm_list_filter_sub_label()

◆ refda_alarms_compress()

size_t refda_alarms_compress ( refda_runctx_t runctx,
const cace_ari_t filter 
)

Compress the history on on filtered entries.

Parameters
[in]runctxThe context to evaluate expressions and the agent state to modify.
[in]filterThe expression to LABEL-substitute and evaluate for each alarm entry.

References refda_runctx_t::agent, refda_alarms_t::alarm_list, alarm_list_filter_sub_label(), refda_alarms_t::alarm_mutex, refda_agent_t::alarms, cace_amm_ari_is_truthy(), cace_ari_deinit(), CACE_ARI_INIT_UNDEFINED, cace_ari_translate(), CACE_LOG_CRIT, CACE_LOG_ERR, CHKRET, refda_alarms_entry_t::history, cace_ari_translator_t::map_ari, and refda_eval_target().

Referenced by refda_adm_ietf_alarms_ctrl_compress_alarms(), and test_refda_alarms_compress_all().

◆ refda_alarms_deinit()

◆ refda_alarms_entry_deinit()

◆ refda_alarms_entry_init()

◆ refda_alarms_entry_key_cmp()

int refda_alarms_entry_key_cmp ( const refda_alarms_entry_key_t left,
const refda_alarms_entry_key_t right 
)

◆ refda_alarms_get_table()

◆ refda_alarms_history_item_deinit()

void refda_alarms_history_item_deinit ( refda_alarms_history_item_t obj)

◆ refda_alarms_history_item_init()

◆ refda_alarms_init()

◆ refda_alarms_mgr_state()

◆ refda_alarms_purge()

size_t refda_alarms_purge ( refda_runctx_t runctx,
const cace_ari_t filter 
)

◆ refda_alarms_set_refs()

void refda_alarms_set_refs ( refda_agent_t agent,
const cace_ari_t resource,
const cace_ari_t category,
refda_alarms_severity_t  severity 
)