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 12 namespace content { 13 14 class SessionStorageDatabase; 15 16 class 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