#include "third_party/blink/renderer/modules/storage/storage_namespace.h"
#include <memory>
#include "base/feature_list.h"
#include "base/memory/ptr_util.h"
#include "base/memory/scoped_refptr.h"
#include "base/metrics/histogram_functions.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/public/platform/platform.h"
#include "third_party/blink/public/platform/web_security_origin.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/modules/storage/cached_storage_area.h"
#include "third_party/blink/renderer/modules/storage/inspector_dom_storage_agent.h"
#include "third_party/blink/renderer/modules/storage/storage_area.h"
#include "third_party/blink/renderer/modules/storage/storage_controller.h"
#include "third_party/blink/renderer/platform/weborigin/security_origin.h"
namespace blink {
const char StorageNamespace::kSupplementName[] = …;
StorageNamespace::StorageNamespace(StorageController* controller)
: … { … }
StorageNamespace::StorageNamespace(Page& page,
StorageController* controller,
const String& namespace_id)
: … { … }
void StorageNamespace::ProvideSessionStorageNamespaceTo(
Page& page,
const SessionStorageNamespaceId& namespace_id) { … }
scoped_refptr<CachedStorageArea> StorageNamespace::GetCachedArea(
LocalDOMWindow* local_dom_window,
mojo::PendingRemote<mojom::blink::StorageArea> storage_area,
StorageContext context) { … }
scoped_refptr<CachedStorageArea> StorageNamespace::CreateCachedAreaForPrerender(
LocalDOMWindow* local_dom_window,
mojo::PendingRemote<mojom::blink::StorageArea> storage_area) { … }
void StorageNamespace::EvictSessionStorageCachedData() { … }
void StorageNamespace::CloneTo(const String& target) { … }
size_t StorageNamespace::TotalCacheSize() const { … }
void StorageNamespace::CleanUpUnusedAreas() { … }
void StorageNamespace::AddInspectorStorageAgent(
InspectorDOMStorageAgent* agent) { … }
void StorageNamespace::RemoveInspectorStorageAgent(
InspectorDOMStorageAgent* agent) { … }
void StorageNamespace::Trace(Visitor* visitor) const { … }
void StorageNamespace::DidDispatchStorageEvent(
const BlinkStorageKey& storage_key,
const String& key,
const String& old_value,
const String& new_value) { … }
void StorageNamespace::BindStorageArea(
const BlinkStorageKey& storage_key,
const LocalFrameToken& local_frame_token,
mojo::PendingReceiver<mojom::blink::StorageArea> receiver) { … }
void StorageNamespace::ResetStorageAreaAndNamespaceConnections() { … }
void StorageNamespace::EnsureConnected() { … }
}