#include "components/content_settings/core/browser/content_settings_partitioned_origin_value_map.h"
#include <memory>
#include "base/memory/scoped_refptr.h"
#include "base/synchronization/lock.h"
#include "base/time/default_clock.h"
#include "base/values.h"
#include "components/content_settings/core/browser/content_settings_origin_value_map.h"
#include "components/content_settings/core/browser/content_settings_rule.h"
#include "components/content_settings/core/common/content_settings_partition_key.h"
#include "components/content_settings/core/common/content_settings_types.h"
#include "url/gurl.h"
namespace content_settings {
namespace {
class RuleIteratorWrapper : public RuleIterator { … };
}
std::unique_ptr<RuleIterator>
PartitionedOriginValueMap::GetRuleIterator(
ContentSettingsType content_type,
const PartitionKey& partition_key) const NO_THREAD_SAFETY_ANALYSIS { … }
std::unique_ptr<Rule> PartitionedOriginValueMap::GetRule(
const GURL& primary_url,
const GURL& secondary_url,
ContentSettingsType content_type,
const PartitionKey& partition_key) const { … }
size_t PartitionedOriginValueMap::size() const { … }
PartitionedOriginValueMap::PartitionedOriginValueMap()
: … { … }
PartitionedOriginValueMap::~PartitionedOriginValueMap() =
default;
const base::Value* PartitionedOriginValueMap::GetValue(
const GURL& primary_url,
const GURL& secondary_url,
ContentSettingsType content_type,
const PartitionKey& partition_key) const { … }
bool PartitionedOriginValueMap::SetValue(
const ContentSettingsPattern& primary_pattern,
const ContentSettingsPattern& secondary_pattern,
ContentSettingsType content_type,
base::Value value,
const RuleMetaData& metadata,
const PartitionKey& partition_key) { … }
bool PartitionedOriginValueMap::DeleteValue(
const ContentSettingsPattern& primary_pattern,
const ContentSettingsPattern& secondary_pattern,
ContentSettingsType content_type,
const PartitionKey& partition_key) { … }
void PartitionedOriginValueMap::DeleteValues(
ContentSettingsType content_type,
const PartitionKey& partition_key) { … }
void PartitionedOriginValueMap::clear() { … }
void PartitionedOriginValueMap::SetClockForTesting(base::Clock* clock) { … }
}