23 #ifndef __PLUGINS_MONGODB_LOG_MONGODB_LOG_BB_THREAD_H_ 24 #define __PLUGINS_MONGODB_LOG_MONGODB_LOG_BB_THREAD_H_ 26 #include <core/threading/thread.h> 27 #include <aspect/logging.h> 28 #include <aspect/configurable.h> 29 #include <aspect/clock.h> 30 #include <aspect/blackboard.h> 31 #include <plugins/mongodb/aspect/mongodb.h> 33 #include <blackboard/interface_observer.h> 34 #include <blackboard/interface_listener.h> 35 #include <core/utils/lock_map.h> 36 #include <core/utils/lock_set.h> 62 protected:
virtual void run() { Thread::run(); }
71 mongo::DBClientBase *mongodb,
72 std::string &database,
89 mongo::DBClientBase *mongodb_;
91 std::string collection_;
92 std::string &database_;
100 std::string database_;
103 std::vector<std::string> excludes_;
virtual void run()
Stub to see name in backtrace for easier debugging.
Thread aspect to access to BlackBoard.
Thread aspect that allows to obtain the current time from the clock.
virtual void loop()
Code to execute in the thread.
mongo::DBClientBase * mongodb_client
MongoDB client to use to interact with the database.
A class for handling time.
virtual ~MongoLogBlackboardThread()
Destructor.
Thread class encapsulation of pthreads.
Base class for all Fawkes BlackBoard interfaces.
Logger * logger
This is the Logger member used to access the logger.
Thread aspect to access MongoDB.
Thread aspect to log output.
BlackBoard interface observer.
Thread aspect to access configuration data.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
The BlackBoard abstract class.
virtual void bb_interface_created(const char *type, const char *id)
BlackBoard interface created notification.
MongoLogBlackboardThread()
Constructor.
BlackBoard interface listener.
BlackBoard * blackboard
This is the BlackBoard instance you can use to interact with the BlackBoard.