summaryrefslogtreecommitdiffstats
path: root/content/renderer/web_ui_extension_data.cc
diff options
context:
space:
mode:
authorshishir@chromium.org <shishir@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-27 21:03:21 +0000
committershishir@chromium.org <shishir@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-11-27 21:03:21 +0000
commit940ed1d3ca01d6fee795a585cedfb3759bee03ab (patch)
tree29b0d0a4fe405ba2cb0d29b9b66b774b7e08d6b1 /content/renderer/web_ui_extension_data.cc
parentbd7bfe2158b145e41b321a7d312869c87df7792b (diff)
downloadchromium_src-940ed1d3ca01d6fee795a585cedfb3759bee03ab.zip
chromium_src-940ed1d3ca01d6fee795a585cedfb3759bee03ab.tar.gz
chromium_src-940ed1d3ca01d6fee795a585cedfb3759bee03ab.tar.bz2
Replacing WebUIBindings use of CPPBoundClass with v8::Extension.
Currently WebUIBindings replace the entire chrome.* js namespace which will be fixed by this CL. Review URL: https://chromiumcodereview.appspot.com/10873038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@169747 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer/web_ui_extension_data.cc')
-rw-r--r--content/renderer/web_ui_extension_data.cc42
1 files changed, 42 insertions, 0 deletions
diff --git a/content/renderer/web_ui_extension_data.cc b/content/renderer/web_ui_extension_data.cc
new file mode 100644
index 0000000..80d570f
--- /dev/null
+++ b/content/renderer/web_ui_extension_data.cc
@@ -0,0 +1,42 @@
+// Copyright 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.
+
+#include "content/renderer/web_ui_extension_data.h"
+
+#include "content/common/view_messages.h"
+#include "content/public/renderer/render_view.h"
+
+namespace content {
+
+WebUIExtensionData::WebUIExtensionData(RenderView* render_view)
+ : RenderViewObserver(render_view),
+ RenderViewObserverTracker<WebUIExtensionData>(render_view) {
+}
+
+WebUIExtensionData::~WebUIExtensionData() {
+}
+
+std::string WebUIExtensionData::GetValue(const std::string& key) const {
+ std::map<std::string, std::string>::const_iterator it =
+ variable_map_.find(key);
+ if (it == variable_map_.end())
+ return std::string();
+ return it->second;
+}
+
+bool WebUIExtensionData::OnMessageReceived(const IPC::Message& message) {
+ bool handled = true;
+ IPC_BEGIN_MESSAGE_MAP(WebUIExtensionData, message)
+ IPC_MESSAGE_HANDLER(ViewMsg_SetWebUIProperty, OnSetWebUIProperty)
+ IPC_MESSAGE_UNHANDLED(handled = false)
+ IPC_END_MESSAGE_MAP()
+ return handled;
+}
+
+void WebUIExtensionData::OnSetWebUIProperty(const std::string& name,
+ const std::string& value) {
+ variable_map_[name] = value;
+}
+
+} // namespace content