Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / components / policy / core / common / policy_service_stub.h
1 // Copyright (c) 2012 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.
4
5 #ifndef COMPONENTS_POLICY_CORE_COMMON_POLICY_SERVICE_STUB_H_
6 #define COMPONENTS_POLICY_CORE_COMMON_POLICY_SERVICE_STUB_H_
7
8 #include "base/basictypes.h"
9 #include "components/policy/core/common/policy_map.h"
10 #include "components/policy/core/common/policy_service.h"
11 #include "components/policy/policy_export.h"
12
13 namespace policy {
14
15 // A stub implementation, that is used when ENABLE_CONFIGURATION_POLICY is not
16 // set. This allows client code to compile without requiring #ifdefs.
17 class POLICY_EXPORT PolicyServiceStub : public PolicyService {
18  public:
19   PolicyServiceStub();
20   virtual ~PolicyServiceStub();
21
22   virtual void AddObserver(PolicyDomain domain,
23                            Observer* observer) override;
24
25   virtual void RemoveObserver(PolicyDomain domain,
26                               Observer* observer) override;
27
28   virtual const PolicyMap& GetPolicies(
29       const PolicyNamespace& ns) const override;
30
31   virtual bool IsInitializationComplete(PolicyDomain domain) const override;
32
33   virtual void RefreshPolicies(const base::Closure& callback) override;
34  private:
35   const PolicyMap kEmpty_;
36
37   DISALLOW_COPY_AND_ASSIGN(PolicyServiceStub);
38 };
39
40 }  // namespace policy
41
42 #endif  // COMPONENTS_POLICY_CORE_COMMON_POLICY_SERVICE_STUB_H_