1bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Copyright 2013 The Chromium Authors. All rights reserved. 2bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Use of this source code is governed by a BSD-style license that can be 3bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// found in the LICENSE file. 4bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 5bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#ifndef CONTENT_BROWSER_DOM_STORAGE_DOM_STORAGE_DATABASE_ADAPTER_H_ 6bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#define CONTENT_BROWSER_DOM_STORAGE_DOM_STORAGE_DATABASE_ADAPTER_H_ 7bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 8bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// Database interface used by DOMStorageArea. Abstracts the differences between 9bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// the per-origin DOMStorageDatabases for localStorage and 10bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch// SessionStorageDatabase which stores multiple origins. 11bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 12bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#include "content/common/content_export.h" 13bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#include "content/common/dom_storage/dom_storage_types.h" 14bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 15bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdochnamespace content { 16bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 17bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdochclass CONTENT_EXPORT DOMStorageDatabaseAdapter { 18bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch public: 19bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual ~DOMStorageDatabaseAdapter() {} 20bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual void ReadAllValues(DOMStorageValuesMap* result) = 0; 21bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual bool CommitChanges( 22bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch bool clear_all_first, const DOMStorageValuesMap& changes) = 0; 23bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual void DeleteFiles() {} 24bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch virtual void Reset() {} 25bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch}; 26bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 27bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch} // namespace content 28bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch 29bb1529ce867d8845a77ec7cdf3e3003ef1771a40Ben Murdoch#endif // CONTENT_BROWSER_DOM_STORAGE_DOM_STORAGE_DATABASE_ADAPTER_H_ 30