aboutsummaryrefslogtreecommitdiffstats
path: root/configd/src/apps/sentinel/config-owner.h
diff options
context:
space:
mode:
Diffstat (limited to 'configd/src/apps/sentinel/config-owner.h')
-rw-r--r--configd/src/apps/sentinel/config-owner.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/configd/src/apps/sentinel/config-owner.h b/configd/src/apps/sentinel/config-owner.h
index 2850e6b3904..7b79f65b1de 100644
--- a/configd/src/apps/sentinel/config-owner.h
+++ b/configd/src/apps/sentinel/config-owner.h
@@ -5,6 +5,7 @@
#include <vespa/config-sentinel.h>
#include <vespa/config-model.h>
#include <vespa/config/config.h>
+#include <optional>
using cloud::config::SentinelConfig;
using cloud::config::ModelConfig;
@@ -21,10 +22,14 @@ class ConfigOwner {
private:
ConfigSubscriber _subscriber;
ConfigHandle<SentinelConfig>::UP _sentinelHandle;
-
+
int64_t _currGeneration = -1;
std::unique_ptr<SentinelConfig> _currConfig;
+ ConfigSubscriber _modelSubscriber;
+ ConfigHandle<ModelConfig>::UP _modelHandle;
+ std::unique_ptr<ModelConfig> _modelConfig;
+
ConfigOwner(const ConfigOwner&) = delete;
ConfigOwner& operator =(const ConfigOwner&) = delete;
@@ -37,7 +42,7 @@ public:
bool hasConfig() const { return _currConfig.get() != nullptr; }
const SentinelConfig& getConfig() const { return *_currConfig; }
int64_t getGeneration() const { return _currGeneration; }
- static std::unique_ptr<ModelConfig> fetchModelConfig(std::chrono::milliseconds timeout);
+ std::optional<ModelConfig> getModelConfig();
};
}