Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(786)

Unified Diff: content/browser/in_process_webkit/indexed_db_dispatcher_host.h

Issue 17840006: Move IndexedDB files out of in_process_webkit (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/browser/in_process_webkit/indexed_db_dispatcher_host.h
diff --git a/content/browser/in_process_webkit/indexed_db_dispatcher_host.h b/content/browser/in_process_webkit/indexed_db_dispatcher_host.h
deleted file mode 100644
index 773c7b881fd6c7f8bfa212a9299d829c734f701d..0000000000000000000000000000000000000000
--- a/content/browser/in_process_webkit/indexed_db_dispatcher_host.h
+++ /dev/null
@@ -1,209 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#ifndef CONTENT_BROWSER_IN_PROCESS_WEBKIT_INDEXED_DB_DISPATCHER_HOST_H_
-#define CONTENT_BROWSER_IN_PROCESS_WEBKIT_INDEXED_DB_DISPATCHER_HOST_H_
-
-#include <map>
-#include <vector>
-
-#include "base/basictypes.h"
-#include "base/id_map.h"
-#include "content/public/browser/browser_message_filter.h"
-
-class GURL;
-struct IndexedDBDatabaseMetadata;
-struct IndexedDBHostMsg_DatabaseCount_Params;
-struct IndexedDBHostMsg_DatabaseCreateIndex_Params;
-struct IndexedDBHostMsg_DatabaseCreateObjectStore_Params;
-struct IndexedDBHostMsg_DatabaseCreateTransaction_Params;
-struct IndexedDBHostMsg_DatabaseDeleteRange_Params;
-struct IndexedDBHostMsg_DatabaseGet_Params;
-struct IndexedDBHostMsg_DatabaseOpenCursor_Params;
-struct IndexedDBHostMsg_DatabasePut_Params;
-struct IndexedDBHostMsg_DatabaseSetIndexKeys_Params;
-struct IndexedDBHostMsg_FactoryDeleteDatabase_Params;
-struct IndexedDBHostMsg_FactoryGetDatabaseNames_Params;
-struct IndexedDBHostMsg_FactoryOpen_Params;
-
-namespace content {
-class IndexedDBContextImpl;
-class IndexedDBKey;
-class IndexedDBKeyPath;
-class IndexedDBKeyRange;
-class WebIDBCursorImpl;
-class WebIDBDatabaseImpl;
-struct IndexedDBDatabaseMetadata;
-
-// Handles all IndexedDB related messages from a particular renderer process.
-class IndexedDBDispatcherHost : public BrowserMessageFilter {
- public:
- // Only call the constructor from the UI thread.
- IndexedDBDispatcherHost(int ipc_process_id,
- IndexedDBContextImpl* indexed_db_context);
-
- static ::IndexedDBDatabaseMetadata ConvertMetadata(
- const content::IndexedDBDatabaseMetadata& metadata);
-
- // BrowserMessageFilter implementation.
- virtual void OnChannelClosing() OVERRIDE;
- virtual void OnDestruct() const OVERRIDE;
- virtual base::TaskRunner* OverrideTaskRunnerForMessage(
- const IPC::Message& message) OVERRIDE;
- virtual bool OnMessageReceived(const IPC::Message& message,
- bool* message_was_ok) OVERRIDE;
-
- void FinishTransaction(int64 host_transaction_id, bool committed);
-
- // A shortcut for accessing our context.
- IndexedDBContextImpl* Context() { return indexed_db_context_.get(); }
-
- // The various IndexedDBCallbacks children call these methods to add the
- // results into the applicable map. See below for more details.
- int32 Add(WebIDBCursorImpl* idb_cursor);
- int32 Add(WebIDBDatabaseImpl* idb_database,
- int32 ipc_thread_id,
- const GURL& origin_url);
-
- void RegisterTransactionId(int64 host_transaction_id, const GURL& origin_url);
-
- WebIDBCursorImpl* GetCursorFromId(int32 ipc_cursor_id);
-
- int64 HostTransactionId(int64 transaction_id);
- int64 RendererTransactionId(int64 host_transaction_id);
-
- private:
- // Friends to enable OnDestruct() delegation.
- friend class BrowserThread;
- friend class base::DeleteHelper<IndexedDBDispatcherHost>;
-
- virtual ~IndexedDBDispatcherHost();
-
- // Message processing. Most of the work is delegated to the dispatcher hosts
- // below.
- void OnIDBFactoryGetDatabaseNames(
- const IndexedDBHostMsg_FactoryGetDatabaseNames_Params& p);
- void OnIDBFactoryOpen(const IndexedDBHostMsg_FactoryOpen_Params& p);
-
- void OnIDBFactoryDeleteDatabase(
- const IndexedDBHostMsg_FactoryDeleteDatabase_Params& p);
-
- void ResetDispatcherHosts();
-
- // Helper templates.
- template <class ReturnType>
- ReturnType* GetOrTerminateProcess(IDMap<ReturnType, IDMapOwnPointer>* map,
- int32 ipc_return_object_id);
-
- template <typename ObjectType>
- void DestroyObject(IDMap<ObjectType, IDMapOwnPointer>* map,
- int32 ipc_object_id);
-
- // Used in nested classes.
- typedef std::map<int32, GURL> WebIDBObjectIDToURLMap;
-
- typedef std::map<int64, GURL> TransactionIDToURLMap;
- typedef std::map<int64, uint64> TransactionIDToSizeMap;
- typedef std::map<int64, int64> TransactionIDToDatabaseIDMap;
-
- class DatabaseDispatcherHost {
- public:
- explicit DatabaseDispatcherHost(IndexedDBDispatcherHost* parent);
- ~DatabaseDispatcherHost();
-
- void CloseAll();
- bool OnMessageReceived(const IPC::Message& message, bool* msg_is_ok);
- void Send(IPC::Message* message);
-
- void OnCreateObjectStore(
- const IndexedDBHostMsg_DatabaseCreateObjectStore_Params& params);
- void OnDeleteObjectStore(int32 ipc_database_id,
- int64 transaction_id,
- int64 object_store_id);
- void OnCreateTransaction(
- const IndexedDBHostMsg_DatabaseCreateTransaction_Params&);
- void OnOpen(int32 ipc_database_id,
- int32 ipc_thread_id,
- int32 ipc_callbacks_id);
- void OnClose(int32 ipc_database_id);
- void OnDestroyed(int32 ipc_database_id);
-
- void OnGet(const IndexedDBHostMsg_DatabaseGet_Params& params);
- void OnPut(const IndexedDBHostMsg_DatabasePut_Params& params);
- void OnSetIndexKeys(
- const IndexedDBHostMsg_DatabaseSetIndexKeys_Params& params);
- void OnSetIndexesReady(int32 ipc_database_id,
- int64 transaction_id,
- int64 object_store_id,
- const std::vector<int64>& ids);
- void OnOpenCursor(const IndexedDBHostMsg_DatabaseOpenCursor_Params& params);
- void OnCount(const IndexedDBHostMsg_DatabaseCount_Params& params);
- void OnDeleteRange(
- const IndexedDBHostMsg_DatabaseDeleteRange_Params& params);
- void OnClear(int32 ipc_thread_id,
- int32 ipc_callbacks_id,
- int32 ipc_database_id,
- int64 transaction_id,
- int64 object_store_id);
- void OnCreateIndex(
- const IndexedDBHostMsg_DatabaseCreateIndex_Params& params);
- void OnDeleteIndex(int32 ipc_database_id,
- int64 transaction_id,
- int64 object_store_id,
- int64 index_id);
-
- void OnAbort(int32 ipc_database_id, int64 transaction_id);
- void OnCommit(int32 ipc_database_id, int64 transaction_id);
- IndexedDBDispatcherHost* parent_;
- IDMap<WebIDBDatabaseImpl, IDMapOwnPointer> map_;
- WebIDBObjectIDToURLMap database_url_map_;
- TransactionIDToSizeMap transaction_size_map_;
- TransactionIDToURLMap transaction_url_map_;
- TransactionIDToDatabaseIDMap transaction_database_map_;
- };
-
- class CursorDispatcherHost {
- public:
- explicit CursorDispatcherHost(IndexedDBDispatcherHost* parent);
- ~CursorDispatcherHost();
-
- bool OnMessageReceived(const IPC::Message& message, bool* msg_is_ok);
- void Send(IPC::Message* message);
-
- void OnAdvance(int32 ipc_object_store_id,
- int32 ipc_thread_id,
- int32 ipc_callbacks_id,
- unsigned long count);
- void OnContinue(int32 ipc_object_store_id,
- int32 ipc_thread_id,
- int32 ipc_callbacks_id,
- const IndexedDBKey& key);
- void OnPrefetch(int32 ipc_cursor_id,
- int32 ipc_thread_id,
- int32 ipc_callbacks_id,
- int n);
- void OnPrefetchReset(int32 ipc_cursor_id,
- int used_prefetches,
- int unused_prefetches);
- void OnDestroyed(int32 ipc_cursor_id);
-
- IndexedDBDispatcherHost* parent_;
- IDMap<WebIDBCursorImpl, IDMapOwnPointer> map_;
- };
-
- scoped_refptr<IndexedDBContextImpl> indexed_db_context_;
-
- // Only access on IndexedDB thread.
- scoped_ptr<DatabaseDispatcherHost> database_dispatcher_host_;
- scoped_ptr<CursorDispatcherHost> cursor_dispatcher_host_;
-
- // Used to dispatch messages to the correct view host.
- int ipc_process_id_;
-
- DISALLOW_IMPLICIT_CONSTRUCTORS(IndexedDBDispatcherHost);
-};
-
-} // namespace content
-
-#endif // CONTENT_BROWSER_IN_PROCESS_WEBKIT_INDEXED_DB_DISPATCHER_HOST_H_

Powered by Google App Engine
This is Rietveld 408576698