| Index: services/resource_coordinator/coordination_unit/coordination_unit_manager.h
|
| diff --git a/services/resource_coordinator/coordination_unit/coordination_unit_manager.h b/services/resource_coordinator/coordination_unit/coordination_unit_manager.h
|
| index 4b10fcd096f88ea691f16d897f47ca63694a5fce..d5588704e075e40f40b27611bffe2c8dd5118e78 100644
|
| --- a/services/resource_coordinator/coordination_unit/coordination_unit_manager.h
|
| +++ b/services/resource_coordinator/coordination_unit/coordination_unit_manager.h
|
| @@ -5,6 +5,9 @@
|
| #ifndef SERVICES_RESOURCE_COORDINATOR_COORDINATION_UNIT_COORDINATION_UNIT_MANAGER_H_
|
| #define SERVICES_RESOURCE_COORDINATOR_COORDINATION_UNIT_COORDINATION_UNIT_MANAGER_H_
|
|
|
| +#include <memory>
|
| +#include <vector>
|
| +
|
| #include "base/macros.h"
|
| #include "services/service_manager/public/cpp/binder_registry.h"
|
|
|
| @@ -14,8 +17,11 @@ class ServiceContextRefFactory;
|
|
|
| namespace resource_coordinator {
|
|
|
| +class CoordinationUnitImpl;
|
| +class CoordinationUnitGraphObserver;
|
| +
|
| // The CoordinationUnitManager is a singleton that encapsulates all
|
| -// aspects of Coordination Units within the ResourceCoordinatorService.
|
| +// aspects of Coordination Units within the resource_coordinator service.
|
| // All functionality for dealing with CoordinationUnits should be contained
|
| // within this class or classes that are owned by it
|
| class CoordinationUnitManager {
|
| @@ -25,8 +31,20 @@ class CoordinationUnitManager {
|
|
|
| void OnStart(service_manager::BinderRegistry* registry,
|
| service_manager::ServiceContextRefFactory* service_ref_factory);
|
| + void RegisterObserver(
|
| + std::unique_ptr<CoordinationUnitGraphObserver> observer);
|
| + void OnCoordinationUnitCreated(CoordinationUnitImpl* coordination_unit);
|
| + void OnCoordinationUnitWillBeDestroyed(
|
| + CoordinationUnitImpl* coordination_unit);
|
| +
|
| + std::vector<std::unique_ptr<CoordinationUnitGraphObserver>>&
|
| + observers_for_testing() {
|
| + return observers_;
|
| + }
|
|
|
| private:
|
| + std::vector<std::unique_ptr<CoordinationUnitGraphObserver>> observers_;
|
| +
|
| static void Create(
|
| service_manager::ServiceContextRefFactory* service_ref_factory);
|
|
|
|
|