RTC Toolkit 5.1.0
Loading...
Searching...
No Matches
businessLogic.hpp
Go to the documentation of this file.
1
13#ifndef RTCTK_EXAMPLECUSTOM_BUSINESSLOGIC_HPP
14#define RTCTK_EXAMPLECUSTOM_BUSINESSLOGIC_HPP
15
16#include "customLifeCycle.hpp"
22
23namespace rtctk::exampleCustom {
24
25using namespace rtctk::componentFramework;
26
28
30public:
32
33 BusinessLogic(const std::string& name, ServiceContainer& services);
34 virtual ~BusinessLogic() = default;
35
36 void ActivityStarting(StopToken st) override;
37 void ActivityInitialising(StopToken st) override;
38 void ActivityEnabling(StopToken st) override;
39 void ActivityDisabling(StopToken st) override;
40
41 void ActivityGoingRunning(StopToken st) override;
42 void ActivityGoingIdle(StopToken st) override;
43 void ActivityRunning(StopToken st) override;
44 void ActivityRecovering(StopToken st) override;
45
46 void ActivityUpdating(StopToken st, const JsonPayload& arg) override;
47 bool GuardUpdatingAllowed(const JsonPayload& args) override;
48
49 void ActivityOptimising(StopToken st, const JsonPayload& arg) override;
50 bool GuardOptimisingAllowed(const JsonPayload& arg) override;
51
52 void ActivityFoo(StopToken st) override;
53 void ActivityBar(StopToken st, const JsonPayload& arg) override;
54
55private:
56 log4cplus::Logger& m_logger;
57 std::string m_name;
58 RuntimeRepoIf& m_rtr;
59 OldbIf& m_oldb;
60};
61
62} // namespace rtctk::exampleCustom
63
64#endif // RTCTK_EXAMPLECUSTOM_BUSINESSLOGIC_HPP
Base interface for all OLDB adapters.
Definition oldbIf.hpp:25
Base interface for all Runtime Configuration Repository adapters.
Definition runtimeRepoIf.hpp:27
Container class that holds services of any type.
Definition serviceContainer.hpp:39
Definition businessLogic.hpp:29
void ActivityGoingIdle(StopToken st) override
Definition businessLogic.cpp:67
bool GuardOptimisingAllowed(const JsonPayload &arg) override
Definition businessLogic.cpp:95
void ActivityEnabling(StopToken st) override
Definition businessLogic.cpp:55
bool GuardUpdatingAllowed(const JsonPayload &args) override
Definition businessLogic.cpp:86
void ActivityInitialising(StopToken st) override
Definition businessLogic.cpp:38
void ActivityRecovering(StopToken st) override
Definition businessLogic.cpp:78
void ActivityBar(StopToken st, const JsonPayload &arg) override
Definition businessLogic.cpp:104
void ActivityRunning(StopToken st) override
Definition businessLogic.cpp:71
void ActivityDisabling(StopToken st) override
Definition businessLogic.cpp:59
void ActivityStarting(StopToken st) override
Definition businessLogic.cpp:34
BusinessLogic(const std::string &name, ServiceContainer &services)
Definition businessLogic.cpp:25
void ActivityFoo(StopToken st) override
Definition businessLogic.cpp:100
void ActivityGoingRunning(StopToken st) override
Definition businessLogic.cpp:63
void ActivityOptimising(StopToken st, const JsonPayload &arg) override
Definition businessLogic.cpp:91
void ActivityUpdating(StopToken st, const JsonPayload &arg) override
Definition businessLogic.cpp:82
Definition customLifeCycle.hpp:31
Mixin layer that defines a custom life cycle extension.
Definition commandReplier.cpp:22
rad::StopToken StopToken
Definition stopToken.hpp:20
nlohmann::json JsonPayload
Type requirements:
Definition jsonPayload.hpp:25
elt::mal::future< std::string > InjectReqRepEvent(StateMachineEngine &engine)
Definition malEventInjector.hpp:23
Definition businessLogic.cpp:23
CustomLifeCycle< Optimisable< Runnable< RtcComponent > > > LifeCycle
Definition businessLogic.hpp:27
Header file for OldbIf, which defines the API for OldbAdapters.
Lifecycle Extension that makes an RTC Component 'Optimisable'.
Lifecycle of a basic 'RtcComponent'.
Lifecycle Extension that makes an RTC Component 'Runnable'.
Header file for RuntimeRepoIf, which defines the API for RuntimeRepoAdapters.
Definition customLifeCycle.hpp:27