summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/renderer_webidbindex_impl.cc
diff options
context:
space:
mode:
authorjorlow@chromium.org <jorlow@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-17 11:27:26 +0000
committerjorlow@chromium.org <jorlow@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2010-09-17 11:27:26 +0000
commite7fd1980c7fbe92aea58b6d7256770d7be9ac621 (patch)
treea5ad99c8f423f086d79bd1612ebf517434650ea4 /chrome/renderer/renderer_webidbindex_impl.cc
parent56d73f2dcb38999c4ec15f8a9c5236bf1ab5cf2d (diff)
downloadchromium_src-e7fd1980c7fbe92aea58b6d7256770d7be9ac621.zip
chromium_src-e7fd1980c7fbe92aea58b6d7256770d7be9ac621.tar.gz
chromium_src-e7fd1980c7fbe92aea58b6d7256770d7be9ac621.tar.bz2
Add IDBIndex plumbing (for IndexedDB).
BUG=none TEST=none Review URL: http://codereview.chromium.org/3442001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59780 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/renderer/renderer_webidbindex_impl.cc')
-rw-r--r--chrome/renderer/renderer_webidbindex_impl.cc43
1 files changed, 43 insertions, 0 deletions
diff --git a/chrome/renderer/renderer_webidbindex_impl.cc b/chrome/renderer/renderer_webidbindex_impl.cc
index 97e6409..5fa4115 100644
--- a/chrome/renderer/renderer_webidbindex_impl.cc
+++ b/chrome/renderer/renderer_webidbindex_impl.cc
@@ -4,6 +4,7 @@
#include "chrome/renderer/renderer_webidbindex_impl.h"
+#include "chrome/common/indexed_db_key.h"
#include "chrome/common/render_messages.h"
#include "chrome/renderer/render_thread.h"
#include "chrome/renderer/indexed_db_dispatcher.h"
@@ -30,6 +31,13 @@ WebString RendererWebIDBIndexImpl::name() const {
return result;
}
+WebString RendererWebIDBIndexImpl::storeName() const {
+ string16 result;
+ RenderThread::current()->Send(
+ new ViewHostMsg_IDBIndexStoreName(idb_index_id_, &result));
+ return result;
+}
+
WebString RendererWebIDBIndexImpl::keyPath() const {
NullableString16 result;
RenderThread::current()->Send(
@@ -43,3 +51,38 @@ bool RendererWebIDBIndexImpl::unique() const {
new ViewHostMsg_IDBIndexUnique(idb_index_id_, &result));
return result;
}
+
+void RendererWebIDBIndexImpl::openObjectCursor(
+ const WebKit::WebIDBKeyRange& range,
+ unsigned short direction,
+ WebKit::WebIDBCallbacks* callbacks) {
+ IndexedDBDispatcher* dispatcher =
+ RenderThread::current()->indexed_db_dispatcher();
+ dispatcher->RequestIDBIndexOpenObjectCursor(range, direction,
+ callbacks, idb_index_id_);
+}
+
+void RendererWebIDBIndexImpl::openCursor(
+ const WebKit::WebIDBKeyRange& range,
+ unsigned short direction,
+ WebKit::WebIDBCallbacks* callbacks) {
+ IndexedDBDispatcher* dispatcher =
+ RenderThread::current()->indexed_db_dispatcher();
+ dispatcher->RequestIDBIndexOpenCursor(range, direction,
+ callbacks, idb_index_id_);
+}
+
+void RendererWebIDBIndexImpl::getObject(const WebKit::WebIDBKey& key,
+ WebKit::WebIDBCallbacks* callbacks) {
+ IndexedDBDispatcher* dispatcher =
+ RenderThread::current()->indexed_db_dispatcher();
+ dispatcher->RequestIDBIndexGetObject(IndexedDBKey(key), callbacks,
+ idb_index_id_);
+}
+
+void RendererWebIDBIndexImpl::get(const WebKit::WebIDBKey& key,
+ WebKit::WebIDBCallbacks* callbacks) {
+ IndexedDBDispatcher* dispatcher =
+ RenderThread::current()->indexed_db_dispatcher();
+ dispatcher->RequestIDBIndexGet(IndexedDBKey(key), callbacks, idb_index_id_);
+}