26#include "json/value.h"
38 int AddSubscriber(std::function<
void(
const Json::Value&)> subscriber);
48 std::map<int, std::function<void(
const Json::Value&)>>
subscribers_;
Definition: shared_fd.h:124
Event event
Definition: kernel_log_server.cc:59
Definition: alloc_driver.h:20
Definition: kernel_log_events_handler.h:33
SharedFD kernel_log_fd_
Definition: kernel_log_events_handler.h:44
void ReadLoop()
Definition: kernel_log_events_handler.cpp:51
SharedFD eventfd_
Definition: kernel_log_events_handler.h:45
std::atomic< bool > running_
Definition: kernel_log_events_handler.h:46
int last_subscriber_id_
Definition: kernel_log_events_handler.h:49
KernelLogEventsHandler(SharedFD kernel_log_fd)
Definition: kernel_log_events_handler.cpp:35
std::list< Json::Value > last_events_
Definition: kernel_log_events_handler.h:51
std::thread read_thread_
Definition: kernel_log_events_handler.h:47
std::map< int, std::function< void(const Json::Value &)> > subscribers_
Definition: kernel_log_events_handler.h:48
void Unsubscribe(int subscriber_id)
Definition: kernel_log_events_handler.cpp:122
void DeliverEvent(const Json::Value &event)
Definition: kernel_log_events_handler.cpp:127
int AddSubscriber(std::function< void(const Json::Value &)> subscriber)
Definition: kernel_log_events_handler.cpp:110
std::mutex subscribers_mtx_
Definition: kernel_log_events_handler.h:50
~KernelLogEventsHandler()
Definition: kernel_log_events_handler.cpp:45