blob: a53775b85477eedb91ab1aa02e5117c56acd52f5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
#pragma once
namespace ksys {
class Message;
class MessageProcessor {
public:
class Logger {
public:
Logger() = default;
virtual ~Logger() = default;
virtual void log(const Message& message, bool success) = 0;
};
/// @param logger Must be non null.
explicit MessageProcessor(Logger* logger);
virtual ~MessageProcessor();
virtual bool process(Message* message);
private:
Logger* mLogger{};
};
} // namespace ksys
|