lintel 0.2.0
Loading...
Searching...
No Matches
SingleInstanceBootstrapPlugin.h
Go to the documentation of this file.
1#ifndef LINTEL_SINGLEINSTANCEBOOTSTRAPPLUGIN_H
2#define LINTEL_SINGLEINSTANCEBOOTSTRAPPLUGIN_H
3
4#include <memory>
5
11
12namespace lintel {
28{
29private:
33 class Lock;
34
35 std::shared_ptr<DatabaseConnectionEntry> m_connectionEntry;
36 std::shared_ptr<Configuration> m_configuration;
37 std::shared_ptr<ProcessName> m_processName;
38 std::unique_ptr<Lock> m_fileLock;
39
42 void acquireLock();
43
44public:
50 SingleInstanceBootstrapPlugin(const std::shared_ptr<DatabaseConnectionConfigurations> &connectionConfigurations,
51 std::shared_ptr<Configuration> configuration,
52 std::shared_ptr<ProcessName> processName);
53
55
57 void onStart() override;
58
61};
62
63}// namespace lintel
64#endif// LINTEL_SINGLEINSTANCEBOOTSTRAPPLUGIN_H
Definition BootstrapPlugin.h:9
Definition BootstrapSequence.h:13
Definition SingleInstanceBootstrapPlugin.h:28
BootstrapSequence getPriority() override
SingleInstanceBootstrapPlugin(const std::shared_ptr< DatabaseConnectionConfigurations > &connectionConfigurations, std::shared_ptr< Configuration > configuration, std::shared_ptr< ProcessName > processName)
Definition BaseFeature.h:6