1 #pragma once
2 
3 #include <string_view>
4 
5 namespace bios_bmc_smm_error_logger
6 {
7 namespace rde
8 {
9 
10 /**
11  * @brief Base class for publishing data to ExternalStorer.
12  */
13 class ExternalStorerInterface
14 {
15   public:
16     virtual ~ExternalStorerInterface() = default;
17 
18     /**
19      * @brief Publish JSON string to ExternalStorer.
20      *
21      * @param[in] jsonStr - a valid JSON string.
22      * @return true if successful.
23      */
24     virtual bool publishJson(std::string_view jsonStr) = 0;
25 };
26 
27 } // namespace rde
28 } // namespace bios_bmc_smm_error_logger
29