| 20 | namespace Signals { |
| 21 | |
| 22 | Log::Log(DBus::Signals::Emit::Ptr emitter, |
| 23 | DBus::Signals::SubscriptionManager::Ptr subscr, |
| 24 | DBus::Signals::Target::Ptr subscr_tgt) |
| 25 | : DBus::Signals::Signal(emitter, "Log"), |
| 26 | target(subscr_tgt) |
| 27 | { |
| 28 | SetArguments(Events::Log::SignalDeclaration()); |
| 29 | |
| 30 | // Prepare proxying incoming StatusChange signals |
| 31 | if (subscr && subscr_tgt) |
| 32 | { |
| 33 | subscr->Subscribe(target, |
| 34 | "Log", |
| 35 | [=](DBus::Signals::Event::Ptr event) |
| 36 | { |
| 37 | try |
| 38 | { |
| 39 | Events::Log ev = Events::ParseLog(event->params); |
| 40 | (void)Send(ev); |
| 41 | } |
| 42 | catch (const DBus::Exception &ex) |
| 43 | { |
| 44 | std::cerr << "Log EXCEPTION:" |
| 45 | << ex.what() << std::endl; |
| 46 | } |
| 47 | }); |
| 48 | } |
| 49 | } |
| 50 | |
| 51 | |
| 52 | const std::string Log::GetSignature() const |