
New API methods have been added to allow getting, setting, and clearing faults by providing both alarm_id and entity_instance_id. Changes in this commit: - For clear_fault operation, the query has been updated to allow the removal of multiple rows with a single query. The entity_instance_id parameter can now be a prefix, enabling the matching of multiple alarms with the same alarm_id. This change does not affect existing use cases. - New method get_faults_by_id_n_eid, This method allows API clients to retrieve a list of alarms that match an alarm_id and a prefix of entity_instance_id, thereby matching multiple alarms. - New method set_faults. This method accepts a list of alarms as a parameter and calls the same core set_fault function for each alarm. [PASS] Build and install packages [PASS] Remove several alarms that matches 'alarm_id', 'entity_instance_id=%' [PASS] Get list of alarms that match 'alarm_id' and 'entity_instance_id=%' [PASS] Verify that the new behavior for removing alarms does not affect previous use cases. [PASS] Test set_faults API function providing a list of alarms. Verify the alarms in the list are being created. [PASS] Enable debug mode to verify that queries are as expected. Story: 2011106 task: 50756 Change-Id: Ib9dcfa97960a5d50865133a61810681e5a09edbe Signed-off-by: fperez <fabrizio.perez@windriver.com>
41 lines
1.2 KiB
C++
41 lines
1.2 KiB
C++
//
|
|
// Copyright (c) 2014 Wind River Systems, Inc.
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
|
|
#ifndef FMMSGSERVER_H_
|
|
#define FMMSGSERVER_H_
|
|
|
|
#include <vector>
|
|
#include "fmSocket.h"
|
|
#include "fmMsg.h"
|
|
#include "fmDb.h"
|
|
|
|
class FmSocketServerProcessor : public FmSocketServer {
|
|
|
|
protected:
|
|
virtual void handle_socket_data(int fd,std::vector<char> &data,
|
|
CFmDBSession &sess);
|
|
|
|
virtual void handle_create_fault(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata, CFmDBSession &sess);
|
|
virtual void handle_delete_fault(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata, CFmDBSession &sess);
|
|
virtual void handle_delete_faults(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata,CFmDBSession &sess);
|
|
|
|
virtual void handle_get_fault(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata);
|
|
virtual void handle_get_faults(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata);
|
|
virtual void handle_get_faults_by_id(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata);
|
|
virtual void handle_get_faults_by_id_n_eid(int fd, SFmMsgHdrT *hdr,
|
|
std::vector<char> &rdata);
|
|
public:
|
|
void send_response(int fd, SFmMsgHdrT *hdr, void *data, size_t len);
|
|
};
|
|
|
|
#endif /* FMMSGSERVER_H_ */
|