blob: 2ac9c76d7f712bd72982bb3f21aed4e4590db58b [file] [log] [blame]
// Copyright 2024 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_SEARCH_ENGINES_ENTERPRISE_SEARCH_AGGREGATOR_POLICY_HANDLER_H_
#define COMPONENTS_SEARCH_ENGINES_ENTERPRISE_SEARCH_AGGREGATOR_POLICY_HANDLER_H_
#include "components/policy/core/browser/configuration_policy_handler.h"
namespace policy {
// ConfigurationPolicyHandler for the EnterpriseSearchAggregatorSettings policy.
class SearchAggregatorPolicyHandler
: public SimpleSchemaValidatingPolicyHandler {
public:
// Fields in a search aggregator entry.
static const char kIconUrl[];
static const char kName[];
static const char kRequireShortcut[];
static const char kSearchUrl[];
static const char kShortcut[];
static const char kSuggestUrl[];
explicit SearchAggregatorPolicyHandler(Schema schema);
SearchAggregatorPolicyHandler(const SearchAggregatorPolicyHandler&) = delete;
SearchAggregatorPolicyHandler& operator=(
const SearchAggregatorPolicyHandler&) = delete;
~SearchAggregatorPolicyHandler() override;
// SimpleSchemaValidatingPolicyHandler methods:
bool CheckPolicySettings(const PolicyMap& policies,
PolicyErrorMap* errors) override;
void ApplyPolicySettings(const PolicyMap& policies,
PrefValueMap* prefs) override;
};
} // namespace policy
#endif // COMPONENTS_SEARCH_ENGINES_ENTERPRISE_SEARCH_AGGREGATOR_POLICY_HANDLER_H_