summaryrefslogtreecommitdiffstats
path: root/chrome/renderer
diff options
context:
space:
mode:
authorthomasvl@chromium.org <thomasvl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-20 16:22:34 +0000
committerthomasvl@chromium.org <thomasvl@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-08-20 16:22:34 +0000
commit826161f8cb3f8963786aef897bbc8b90f0a43a92 (patch)
treeac2f47b87fa8a201bd1f3d0e267fa2b8adb9abe9 /chrome/renderer
parent1f79401611f73ac332233ce35ef1c29b7c7af0c2 (diff)
downloadchromium_src-826161f8cb3f8963786aef897bbc8b90f0a43a92.zip
chromium_src-826161f8cb3f8963786aef897bbc8b90f0a43a92.tar.gz
chromium_src-826161f8cb3f8963786aef897bbc8b90f0a43a92.tar.bz2
Revert 56862 - Add transaction coordinator. Allow idle transactions to be aborted when their parent JS context finishes executing.
This change depends on the following WebKit bug: https://bugs.webkit.org/show_bug.cgi?id=44101 Review URL: http://codereview.chromium.org/3165026 TBR=andreip@chromium.org Review URL: http://codereview.chromium.org/3107029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@56863 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer')
-rw-r--r--chrome/renderer/indexed_db_dispatcher.cc15
-rw-r--r--chrome/renderer/indexed_db_dispatcher.h7
-rw-r--r--chrome/renderer/renderer_webidbdatabase_impl.cc17
-rw-r--r--chrome/renderer/renderer_webidbdatabase_impl.h5
-rw-r--r--chrome/renderer/renderer_webidbfactory_impl.cc10
-rw-r--r--chrome/renderer/renderer_webidbfactory_impl.h3
-rw-r--r--chrome/renderer/renderer_webidbtransaction_impl.cc60
-rw-r--r--chrome/renderer/renderer_webidbtransaction_impl.h33
8 files changed, 1 insertions, 149 deletions
diff --git a/chrome/renderer/indexed_db_dispatcher.cc b/chrome/renderer/indexed_db_dispatcher.cc
index e79ed33..1087eec 100644
--- a/chrome/renderer/indexed_db_dispatcher.cc
+++ b/chrome/renderer/indexed_db_dispatcher.cc
@@ -51,8 +51,6 @@ bool IndexedDBDispatcher::OnMessageReceived(const IPC::Message& msg) {
OnSuccessSerializedScriptValue)
IPC_MESSAGE_HANDLER(ViewMsg_IDBCallbacksError,
OnError)
- IPC_MESSAGE_HANDLER(ViewMsg_IDBTransactionCallbacksAbort,
- OnAbort)
IPC_MESSAGE_UNHANDLED(handled = false)
IPC_END_MESSAGE_MAP()
return handled;
@@ -179,11 +177,6 @@ void IndexedDBDispatcher::RequestIDBObjectStoreOpenCursor(
new ViewHostMsg_IDBObjectStoreOpenCursor(params));
}
-void IndexedDBDispatcher::RequestIDBTransactionSetCallbacks(
- WebKit::WebIDBTransactionCallbacks* callbacks) {
- pending_transaction_callbacks_.AddWithID(callbacks, callbacks->id());
-}
-
void IndexedDBDispatcher::OnSuccessNull(int32 response_id) {
WebKit::WebIDBCallbacks* callbacks = pending_callbacks_.Lookup(response_id);
callbacks->onSuccess();
@@ -239,11 +232,3 @@ void IndexedDBDispatcher::OnError(int32 response_id, int code,
callbacks->onError(WebIDBDatabaseError(code, message));
pending_callbacks_.Remove(response_id);
}
-
-void IndexedDBDispatcher::OnAbort(int transaction_id) {
- WebKit::WebIDBTransactionCallbacks* callbacks =
- pending_transaction_callbacks_.Lookup(transaction_id);
- DCHECK(callbacks);
- callbacks->onAbort();
- pending_transaction_callbacks_.Remove(transaction_id);
-} \ No newline at end of file
diff --git a/chrome/renderer/indexed_db_dispatcher.h b/chrome/renderer/indexed_db_dispatcher.h
index c2602e0..5c04180 100644
--- a/chrome/renderer/indexed_db_dispatcher.h
+++ b/chrome/renderer/indexed_db_dispatcher.h
@@ -11,7 +11,6 @@
#include "ipc/ipc_message.h"
#include "third_party/WebKit/WebKit/chromium/public/WebIDBCallbacks.h"
#include "third_party/WebKit/WebKit/chromium/public/WebIDBDatabase.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebIDBTransactionCallbacks.h"
class IndexedDBKey;
class SerializedScriptValue;
@@ -70,9 +69,6 @@ class IndexedDBDispatcher {
const WebKit::WebIDBKeyRange& idb_key_range, unsigned short direction,
WebKit::WebIDBCallbacks* callbacks, int32 idb_object_store_id);
- void RequestIDBTransactionSetCallbacks(
- WebKit::WebIDBTransactionCallbacks* callbacks);
-
private:
// IDBCallback message handlers.
void OnSuccessNull(int32 response_id);
@@ -84,13 +80,10 @@ class IndexedDBDispatcher {
void OnSuccessSerializedScriptValue(int32 response_id,
const SerializedScriptValue& value);
void OnError(int32 response_id, int code, const string16& message);
- void OnAbort(int transaction_id);
// Careful! WebIDBCallbacks wraps non-threadsafe data types. It must be
// destroyed and used on the same thread it was created on.
IDMap<WebKit::WebIDBCallbacks, IDMapOwnPointer> pending_callbacks_;
- IDMap<WebKit::WebIDBTransactionCallbacks, IDMapOwnPointer>
- pending_transaction_callbacks_;
DISALLOW_COPY_AND_ASSIGN(IndexedDBDispatcher);
};
diff --git a/chrome/renderer/renderer_webidbdatabase_impl.cc b/chrome/renderer/renderer_webidbdatabase_impl.cc
index 7bfaf5c..0f07369 100644
--- a/chrome/renderer/renderer_webidbdatabase_impl.cc
+++ b/chrome/renderer/renderer_webidbdatabase_impl.cc
@@ -7,13 +7,11 @@
#include "chrome/common/render_messages.h"
#include "chrome/renderer/render_thread.h"
#include "chrome/renderer/indexed_db_dispatcher.h"
-#include "chrome/renderer/renderer_webidbtransaction_impl.h"
#include "third_party/WebKit/WebKit/chromium/public/WebString.h"
using WebKit::WebDOMStringList;
using WebKit::WebFrame;
using WebKit::WebIDBCallbacks;
-using WebKit::WebIDBTransaction;
using WebKit::WebString;
using WebKit::WebVector;
@@ -69,18 +67,3 @@ void RendererWebIDBDatabaseImpl::createObjectStore(
dispatcher->RequestIDBDatabaseCreateObjectStore(
name, key_path, auto_increment, callbacks, idb_database_id_);
}
-
-WebKit::WebIDBTransaction* RendererWebIDBDatabaseImpl::transaction(
- const WebDOMStringList& names, unsigned short mode,
- unsigned long timeout) {
- std::vector<string16> object_stores(names.length());
- for (unsigned int i = 0; i < names.length(); ++i) {
- object_stores.push_back(names.item(i));
- }
-
- int transaction_id;
- RenderThread::current()->Send(
- new ViewHostMsg_IDBDatabaseTransaction(
- idb_database_id_, object_stores, mode, timeout, &transaction_id));
- return new RendererWebIDBTransactionImpl(transaction_id);
-}
diff --git a/chrome/renderer/renderer_webidbdatabase_impl.h b/chrome/renderer/renderer_webidbdatabase_impl.h
index 2ce55b1..2105d3b 100644
--- a/chrome/renderer/renderer_webidbdatabase_impl.h
+++ b/chrome/renderer/renderer_webidbdatabase_impl.h
@@ -14,7 +14,6 @@ namespace WebKit {
class WebFrame;
class WebIDBCallbacks;
class WebString;
-class WebIDBTransaction;
}
class RendererWebIDBDatabaseImpl : public WebKit::WebIDBDatabase {
@@ -30,9 +29,7 @@ class RendererWebIDBDatabaseImpl : public WebKit::WebIDBDatabase {
virtual void createObjectStore(
const WebKit::WebString& name, const WebKit::WebString& key_path,
bool auto_increment, WebKit::WebIDBCallbacks* callbacks);
- virtual WebKit::WebIDBTransaction* transaction(
- const WebKit::WebDOMStringList& names,
- unsigned short mode, unsigned long timeout);
+
private:
int32 idb_database_id_;
};
diff --git a/chrome/renderer/renderer_webidbfactory_impl.cc b/chrome/renderer/renderer_webidbfactory_impl.cc
index f1dd4dd..2ccf84a 100644
--- a/chrome/renderer/renderer_webidbfactory_impl.cc
+++ b/chrome/renderer/renderer_webidbfactory_impl.cc
@@ -32,13 +32,3 @@ void RendererWebIDBFactoryImpl::open(
dispatcher->RequestIDBFactoryOpen(
name, description, callbacks, origin.databaseIdentifier(), web_frame);
}
-
-void RendererWebIDBFactoryImpl::abortPendingTransactions(
- const WebKit::WebVector<int>& pendingIDs) {
- std::vector<int> ids;
- for (size_t i = 0; i < pendingIDs.size(); ++i) {
- ids.push_back(pendingIDs[i]);
- }
- RenderThread::current()->Send(
- new ViewHostMsg_IDBFactoryAbortPendingTransactions(ids));
-}
diff --git a/chrome/renderer/renderer_webidbfactory_impl.h b/chrome/renderer/renderer_webidbfactory_impl.h
index e2f2b47..de71220 100644
--- a/chrome/renderer/renderer_webidbfactory_impl.h
+++ b/chrome/renderer/renderer_webidbfactory_impl.h
@@ -8,7 +8,6 @@
#include "third_party/WebKit/WebKit/chromium/public/WebIDBCallbacks.h"
#include "third_party/WebKit/WebKit/chromium/public/WebIDBFactory.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebVector.h"
namespace WebKit {
class WebDOMStringList;
@@ -28,8 +27,6 @@ class RendererWebIDBFactoryImpl : public WebKit::WebIDBFactory {
const WebKit::WebString& name, const WebKit::WebString& description,
WebKit::WebIDBCallbacks* callbacks,
const WebKit::WebSecurityOrigin& origin, WebKit::WebFrame* web_frame);
- virtual void abortPendingTransactions(
- const WebKit::WebVector<int>& pendingIDs);
};
#endif // CHROME_RENDERER_RENDERER_WEBIDBFACTORY_IMPL_H_
diff --git a/chrome/renderer/renderer_webidbtransaction_impl.cc b/chrome/renderer/renderer_webidbtransaction_impl.cc
deleted file mode 100644
index c998245..0000000
--- a/chrome/renderer/renderer_webidbtransaction_impl.cc
+++ /dev/null
@@ -1,60 +0,0 @@
-// Copyright (c) 2010 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.
-
-#include "chrome/renderer/renderer_WebIDBTransaction_impl.h"
-
-#include "chrome/common/render_messages.h"
-#include "chrome/renderer/render_thread.h"
-#include "chrome/renderer/indexed_db_dispatcher.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebIDBObjectStore.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebIDBTransactionCallbacks.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebString.h"
-
-using WebKit::WebIDBObjectStore;
-using WebKit::WebIDBTransactionCallbacks;
-using WebKit::WebString;
-
-RendererWebIDBTransactionImpl::RendererWebIDBTransactionImpl(
- int32 idb_transaction_id)
- : idb_transaction_id_(idb_transaction_id) {
-}
-
-RendererWebIDBTransactionImpl::~RendererWebIDBTransactionImpl() {
- RenderThread::current()->Send(new ViewHostMsg_IDBTransactionDestroyed(
- idb_transaction_id_));
-}
-
-int RendererWebIDBTransactionImpl::mode() const
-{
- // TODO: implement
- DCHECK(false);
- return 0;
-}
-
-WebIDBObjectStore* RendererWebIDBTransactionImpl::objectStore(
- const WebString& name)
-{
- // TODO: implement
- DCHECK(false);
- return 0;
-}
-
-void RendererWebIDBTransactionImpl::abort()
-{
- // TODO: implement
- DCHECK(false);
-}
-
-int RendererWebIDBTransactionImpl::id() const
-{
- return idb_transaction_id_;
-}
-
-void RendererWebIDBTransactionImpl::setCallbacks(
- WebIDBTransactionCallbacks* callbacks)
-{
- IndexedDBDispatcher* dispatcher =
- RenderThread::current()->indexed_db_dispatcher();
- dispatcher->RequestIDBTransactionSetCallbacks(callbacks);
-}
diff --git a/chrome/renderer/renderer_webidbtransaction_impl.h b/chrome/renderer/renderer_webidbtransaction_impl.h
deleted file mode 100644
index 4369104..0000000
--- a/chrome/renderer/renderer_webidbtransaction_impl.h
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright (c) 2010 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 CHROME_RENDERER_RENDERER_WEBIDBTRANSACTION_IMPL_H_
-#define CHROME_RENDERER_RENDERER_WEBIDBTRANSACTION_IMPL_H_
-#pragma once
-
-#include "base/basictypes.h"
-#include "third_party/WebKit/WebKit/chromium/public/WebIDBTransaction.h"
-
-namespace WebKit {
-class WebIDBObjectStore;
-class WebIDBTransactionCallbacks;
-class WebString;
-}
-
-class RendererWebIDBTransactionImpl : public WebKit::WebIDBTransaction {
- public:
- explicit RendererWebIDBTransactionImpl(int32 idb_transaction_id);
- virtual ~RendererWebIDBTransactionImpl();
-
- virtual int mode() const;
- virtual WebKit::WebIDBObjectStore* objectStore(const WebKit::WebString& name);
- virtual void abort();
- virtual int id() const;
- virtual void setCallbacks(WebKit::WebIDBTransactionCallbacks*);
-
- private:
- int32 idb_transaction_id_;
-};
-
-#endif // CHROME_RENDERER_RENDERER_WEBIDBTRANSACTION_IMPL_H_