1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "chrome/browser/policy/schema_registry_service.h"
7 #include "base/logging.h"
8 #include "components/policy/core/common/policy_namespace.h"
9 #include "components/policy/core/common/schema.h"
13 SchemaRegistryService::SchemaRegistryService(
14 const Schema
& chrome_schema
,
15 CombinedSchemaRegistry
* global_registry
)
16 : global_registry_(global_registry
) {
17 if (chrome_schema
.valid())
18 RegisterComponent(PolicyNamespace(POLICY_DOMAIN_CHROME
, ""), chrome_schema
);
19 SetReady(POLICY_DOMAIN_CHROME
);
21 global_registry
->Track(this);
24 SchemaRegistryService::~SchemaRegistryService() {}
26 void SchemaRegistryService::Shutdown() {
27 if (global_registry_
) {
28 global_registry_
->Untrack(this);
29 global_registry_
= NULL
;
31 DCHECK(!HasObservers());