| 98 | } |
| 99 | |
| 100 | bool Processor::ProcessRecord(Record& record) |
| 101 | { |
| 102 | // Check if the logging processor started |
| 103 | if (!IsStarted()) |
| 104 | return true; |
| 105 | |
| 106 | // Filter the given logging record |
| 107 | if (!FilterRecord(record)) |
| 108 | return true; |
| 109 | |
| 110 | // Layout the given logging record |
| 111 | if (_layout && _layout->IsStarted()) |
| 112 | _layout->LayoutRecord(record); |
| 113 | |
| 114 | // Append the given logging record |
| 115 | for (auto& appender : _appenders) |
| 116 | if (appender && appender->IsStarted()) |
| 117 | appender->AppendRecord(record); |
| 118 | |
| 119 | // Process the given logging record with sub processors |
| 120 | for (auto& processor : _processors) |
| 121 | if (processor && processor->IsStarted() && !processor->ProcessRecord(record)) |
| 122 | return false; |
| 123 | |
| 124 | return true; |
| 125 | } |
| 126 | |
| 127 | void Processor::Flush() |
| 128 | { |
nothing calls this directly
no test coverage detected