#include "components/reduce_accept_language/browser/reduce_accept_language_service.h"
#include <string>
#include "base/json/json_reader.h"
#include "base/metrics/histogram_functions.h"
#include "base/metrics/histogram_macros.h"
#include "base/strings/string_split.h"
#include "base/time/time.h"
#include "components/content_settings/core/browser/content_settings_utils.h"
#include "components/content_settings/core/browser/host_content_settings_map.h"
#include "components/content_settings/core/common/content_settings_constraints.h"
#include "components/content_settings/core/common/content_settings_types.h"
#include "components/content_settings/core/common/content_settings_utils.h"
#include "components/language/core/browser/language_prefs.h"
#include "components/language/core/browser/pref_names.h"
#include "content/public/browser/browser_thread.h"
#include "content/public/browser/render_frame_host.h"
#include "content/public/browser/render_process_host.h"
#include "net/http/http_util.h"
#include "services/network/public/cpp/features.h"
#include "url/gurl.h"
#include "url/origin.h"
namespace reduce_accept_language {
namespace {
const char kReduceAcceptLanguageSettingKey[] = …;
}
ReduceAcceptLanguageService::ReduceAcceptLanguageService(
HostContentSettingsMap* settings_map,
PrefService* pref_service,
bool is_incognito)
: … { … }
ReduceAcceptLanguageService::~ReduceAcceptLanguageService() = default;
void ReduceAcceptLanguageService::Shutdown() { … }
std::optional<std::string> ReduceAcceptLanguageService::GetReducedLanguage(
const url::Origin& origin) { … }
std::vector<std::string> ReduceAcceptLanguageService::GetUserAcceptLanguages()
const { … }
void ReduceAcceptLanguageService::PersistReducedLanguage(
const url::Origin& origin,
const std::string& language) { … }
void ReduceAcceptLanguageService::ClearReducedLanguage(
const url::Origin& origin) { … }
void ReduceAcceptLanguageService::UpdateAcceptLanguage() { … }
}