Add support for notification generation pattern
[sim/o1-interface.git] / ntsimulator / inc / utils / utils.h
index c049c66..6208600 100644 (file)
                                                                                num++;\
                                                                                }
 
+typedef struct
+{
+       int normal;
+       int warning;
+       int minor;
+       int major;
+       int critical;
+} counterAlarms;
+
 void           set_curl_common_info_ves(CURL *curl);
 
 long           random_at_most(long max);
@@ -64,7 +73,7 @@ cJSON*        vesCreateFaultFields(char *alarm_condition, char *alarm_object, char *sev
 char*  readConfigFileInString(void);
 void   writeConfigFile(char *config);
 
-int    getFaultNotificationDelayPeriodFromConfigJson(void);
+int    getFaultNotificationDelayPeriodFromConfigJson(int *period_array, int *count);
 int    getVesHeartbeatPeriodFromConfigJson(void);
 char*  getVesAuthMethodFromConfigJson(void);
 char*  getVesIpFromConfigJson(void);
@@ -75,4 +84,15 @@ int  getVesAvailableFromConfigJson(void);
 
 void   generateRandomMacAddress(char *mac_address);
 
+int    writeSkeletonStatusFile(void);
+char*  readStatusFileInString(void);
+
+int     writeStatusNotificationCounters(counterAlarms ves_counter, counterAlarms netconf_counter);
+void    writeStatusFile(char *status);
+int     removeDeviceEntryFromStatusFile(char *deviceName);
+
+cJSON*  getDeviceListFromStatusFile(void);
+int     compute_notifications_count(counterAlarms *ves_counter, counterAlarms *netconf_counter);
+int     getDeviceCounters(char *containerId, counterAlarms *ves_counter, counterAlarms *netconf_counter);
+
 #endif /* EXAMPLES_NTSIMULATOR_UTILS_H_ */