1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5#ifndef CONTENT_BROWSER_DOM_STORAGE_SESSION_STORAGE_DATABASE_ADAPTER_H_ 6#define CONTENT_BROWSER_DOM_STORAGE_SESSION_STORAGE_DATABASE_ADAPTER_H_ 7 8#include "base/memory/ref_counted.h" 9#include "content/browser/dom_storage/dom_storage_database_adapter.h" 10#include "url/gurl.h" 11 12namespace content { 13 14class SessionStorageDatabase; 15 16class SessionStorageDatabaseAdapter : public DOMStorageDatabaseAdapter { 17 public: 18 SessionStorageDatabaseAdapter(SessionStorageDatabase* db, 19 const std::string& permanent_namespace_id, 20 const GURL& origin); 21 virtual ~SessionStorageDatabaseAdapter(); 22 virtual void ReadAllValues(DOMStorageValuesMap* result) OVERRIDE; 23 virtual bool CommitChanges(bool clear_all_first, 24 const DOMStorageValuesMap& changes) OVERRIDE; 25 private: 26 scoped_refptr<SessionStorageDatabase> db_; 27 std::string permanent_namespace_id_; 28 GURL origin_; 29 30 DISALLOW_COPY_AND_ASSIGN(SessionStorageDatabaseAdapter); 31}; 32 33} // namespace content 34 35#endif // CONTENT_BROWSER_DOM_STORAGE_SESSION_STORAGE_DATABASE_ADAPTER_H_ 36