diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2017-05-04 14:30:24 +0200 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2017-05-04 14:30:24 +0200 |
commit | c3ca3db96ee29df4b3ba5d4285a4be3187198e41 (patch) | |
tree | 3cb7423147c42a5d62fce7154745f015db7bd96b /filedistribution | |
parent | a4ac50b4cfaa24f0d3252b6c536b55f95d1a2e5a (diff) |
incompleteConfig -> isConfigComplete and invert logic and move to Main.
Diffstat (limited to 'filedistribution')
-rw-r--r-- | filedistribution/src/apps/filedistributor/filedistributor.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/filedistribution/src/apps/filedistributor/filedistributor.cpp b/filedistribution/src/apps/filedistributor/filedistributor.cpp index aac12610bd1..222f157b8e4 100644 --- a/filedistribution/src/apps/filedistributor/filedistributor.cpp +++ b/filedistribution/src/apps/filedistributor/filedistributor.cpp @@ -177,14 +177,11 @@ public: } } - bool incompleteConfig() { + bool isConfigComplete() { LockGuard guard(_configMutex); - return ! (_zooKeepersConfig && _fileDistributorConfig && _rpcConfig); + return (_zooKeepersConfig && _fileDistributorConfig && _rpcConfig); } void createComponents(const config::ConfigUri & configUri) { - while (incompleteConfig()) { - std::this_thread::sleep_for(10ms); - } LockGuard guard(_configMutex); _components.reset( new Components(configUri, @@ -259,8 +256,7 @@ bool exists(const std::string& optionName, const boost::program_options::variabl return map.find(optionName) != map.end(); } -void ensureExists(const std::string& optionName, const boost::program_options::variables_map& map \ - ) { +void ensureExists(const std::string& optionName, const boost::program_options::variables_map& map ) { if (!exists(optionName, map)) { throw ProgramOptionException("Error: Missing option " + optionName); } @@ -284,6 +280,9 @@ FileDistributorApplication::Main() { configFetcher.subscribeGenerationChanges(&distributor); configFetcher.start(); + while (! distributor.isConfigComplete() ) { + std::this_thread::sleep_for(10ms); + } distributor.run(_configUri); EV_STOPPING(programName, "Clean exit"); |