7#include <unordered_set>
13class ComponentContext;
16class ComponentContextImpl;
44enum class ServiceLifetimeStage {
57 kOnAllComponentsLoadedIsRunning,
84 kOnAllComponentsAreStoppingIsRunning,
98std::string_view ToString(ServiceLifetimeStage);
106 explicit State(
const ComponentContext& cc)
noexcept;
112 bool IsAnyComponentInFatalState()
const;
116 ServiceLifetimeStage GetServiceLifetimeStage()
const;
127 bool HasDependencyOn(std::string_view component_name, std::string_view dependency)
const;
136 std::unordered_set<std::string_view> GetAllDependencies(std::string_view component_name)
const;
139 const impl::ComponentContextImpl& impl_;