summaryrefslogtreecommitdiffstats
path: root/chrome/renderer/renderer_webidbdatabase_impl.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/renderer/renderer_webidbdatabase_impl.cc')
-rw-r--r--chrome/renderer/renderer_webidbdatabase_impl.cc38
1 files changed, 38 insertions, 0 deletions
diff --git a/chrome/renderer/renderer_webidbdatabase_impl.cc b/chrome/renderer/renderer_webidbdatabase_impl.cc
index 1c8e114..8229cef 100644
--- a/chrome/renderer/renderer_webidbdatabase_impl.cc
+++ b/chrome/renderer/renderer_webidbdatabase_impl.cc
@@ -4,9 +4,14 @@
#include "chrome/renderer/renderer_webidbdatabase_impl.h"
+#include "chrome/common/render_messages.h"
#include "chrome/renderer/render_thread.h"
#include "chrome/renderer/indexed_db_dispatcher.h"
+using WebKit::WebDOMStringList;
+using WebKit::WebString;
+using WebKit::WebVector;
+
RendererWebIDBDatabaseImpl::RendererWebIDBDatabaseImpl(int32 idb_database_id)
: idb_database_id_(idb_database_id) {
}
@@ -16,3 +21,36 @@ RendererWebIDBDatabaseImpl::~RendererWebIDBDatabaseImpl() {
RenderThread::current()->indexed_db_dispatcher();
dispatcher->SendIDBDatabaseDestroyed(idb_database_id_);
}
+
+WebString RendererWebIDBDatabaseImpl::name() {
+ string16 result;
+ RenderThread::current()->Send(
+ new ViewHostMsg_IDBDatabaseName(idb_database_id_, &result));
+ return result;
+}
+
+WebString RendererWebIDBDatabaseImpl::description() {
+ string16 result;
+ RenderThread::current()->Send(
+ new ViewHostMsg_IDBDatabaseDescription(idb_database_id_, &result));
+ return result;
+}
+
+WebString RendererWebIDBDatabaseImpl::version() {
+ string16 result;
+ RenderThread::current()->Send(
+ new ViewHostMsg_IDBDatabaseVersion(idb_database_id_, &result));
+ return result;
+}
+
+WebDOMStringList RendererWebIDBDatabaseImpl::objectStores() {
+ std::vector<string16> result;
+ RenderThread::current()->Send(
+ new ViewHostMsg_IDBDatabaseObjectStores(idb_database_id_, &result));
+ WebDOMStringList webResult;
+ for (std::vector<string16>::const_iterator it = result.begin();
+ it != result.end(); ++it) {
+ webResult.append(*it);
+ }
+ return webResult;
+}