Line data Source code
1 : #ifndef OPMONLIB_SRC_NULLOPMONFACILITY_HPP_
2 : #define OPMONLIB_SRC_NULLOPMONFACILITY_HPP_
3 :
4 : #include "opmonlib/OpMonFacility.hpp"
5 : #include "opmonlib/Utils.hpp"
6 :
7 : namespace dunedaq {
8 :
9 55 : ERS_DECLARE_ISSUE(opmonlib, NullOpMonFacilityInvoked, "Something invoked a null OpMonFacility", ERS_EMPTY)
10 : }
11 :
12 : namespace dunedaq::opmonlib {
13 :
14 : class NullOpMonFacility : public OpMonFacility
15 : {
16 :
17 : public:
18 53 : NullOpMonFacility()
19 53 : : OpMonFacility("Null://")
20 : {
21 53 : ;
22 53 : }
23 :
24 1 : void publish(opmon::OpMonEntry&& e) const override
25 : {
26 1 : throw OpMonPublishFailure(ERS_HERE,
27 : get_URI(),
28 1 : e.measurement(),
29 1 : dunedaq::opmonlib::to_string(e.origin()),
30 3 : NullOpMonFacilityInvoked(ERS_HERE));
31 : }
32 : };
33 :
34 : } // namespace dunedaq::opmonlib
35 :
36 : #endif // OPMONLIB_SRC_NULLOPMONFACILITY_HPP_
|