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.
4
5#ifndef CHROME_BROWSER_DOWNLOAD_DOWNLOAD_DIR_POLICY_HANDLER_H_
6#define CHROME_BROWSER_DOWNLOAD_DOWNLOAD_DIR_POLICY_HANDLER_H_
7
8#include "base/basictypes.h"
9#include "base/compiler_specific.h"
10#include "components/policy/core/browser/configuration_policy_handler.h"
11
12class PrefValueMap;
13
14namespace policy {
15class PolicyMap;
16}  // namespace policy
17
18// ConfigurationPolicyHandler for the DownloadDirectory policy.
19class DownloadDirPolicyHandler : public policy::TypeCheckingPolicyHandler {
20 public:
21  DownloadDirPolicyHandler();
22  virtual ~DownloadDirPolicyHandler();
23
24  // ConfigurationPolicyHandler methods:
25  virtual bool CheckPolicySettings(const policy::PolicyMap& policies,
26                                   policy::PolicyErrorMap* errors) OVERRIDE;
27
28  virtual void ApplyPolicySettingsWithParameters(
29      const policy::PolicyMap& policies,
30      const policy::PolicyHandlerParameters& parameters,
31      PrefValueMap* prefs) OVERRIDE;
32
33 private:
34  DISALLOW_COPY_AND_ASSIGN(DownloadDirPolicyHandler);
35};
36
37#endif  // CHROME_BROWSER_DOWNLOAD_DOWNLOAD_DIR_POLICY_HANDLER_H_
38