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

Unified Diff: chrome/renderer/extensions/chrome_v8_extension.cc

Issue 9386001: Implement a module system for the extension bindings JS. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 9 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: chrome/renderer/extensions/chrome_v8_extension.cc
diff --git a/chrome/renderer/extensions/chrome_v8_extension.cc b/chrome/renderer/extensions/chrome_v8_extension.cc
index 120aaf1f8f40a053f7c8feac523ba7da26788b29..791b1f533c9a7b35e5d9c6615db39e4d86628f73 100644
--- a/chrome/renderer/extensions/chrome_v8_extension.cc
+++ b/chrome/renderer/extensions/chrome_v8_extension.cc
@@ -33,11 +33,6 @@ static base::LazyInstance<ChromeV8Extension::InstanceSet> g_instances =
// static
-base::StringPiece ChromeV8Extension::GetStringResource(int resource_id) {
- return ResourceBundle::GetSharedInstance().GetRawDataResource(resource_id);
-}
-
-// static
content::RenderView* ChromeV8Extension::GetCurrentRenderView() {
WebFrame* webframe = WebFrame::frameForCurrentContext();
DCHECK(webframe) << "RetrieveCurrentFrame called when not in a V8 context.";
@@ -53,27 +48,8 @@ content::RenderView* ChromeV8Extension::GetCurrentRenderView() {
return renderview;
}
-ChromeV8Extension::ChromeV8Extension(const char* name, int resource_id,
- ExtensionDispatcher* extension_dispatcher)
- : v8::Extension(name,
- GetStringResource(resource_id).data(),
- 0, // num dependencies
- NULL, // dependencies array
- GetStringResource(resource_id).size()), // source length
- extension_dispatcher_(extension_dispatcher) {
- g_instances.Get().insert(this);
-}
-
-ChromeV8Extension::ChromeV8Extension(const char* name, int resource_id,
- int dependency_count,
- const char** dependencies,
- ExtensionDispatcher* extension_dispatcher)
- : v8::Extension(name,
- GetStringResource(resource_id).data(),
- dependency_count,
- dependencies,
- GetStringResource(resource_id).size()),
- extension_dispatcher_(extension_dispatcher) {
+ChromeV8Extension::ChromeV8Extension(ExtensionDispatcher* extension_dispatcher)
+ : extension_dispatcher_(extension_dispatcher) {
g_instances.Get().insert(this);
}
@@ -86,19 +62,6 @@ const ChromeV8Extension::InstanceSet& ChromeV8Extension::GetAll() {
return g_instances.Get();
}
-void ChromeV8Extension::ContextWillBeReleased(ChromeV8Context* context) {
- handlers_.erase(context);
-}
-
-ChromeV8ExtensionHandler* ChromeV8Extension::GetHandler(
- ChromeV8Context* context) const {
- HandlerMap::const_iterator iter = handlers_.find(context);
- if (iter == handlers_.end())
- return NULL;
- else
- return iter->second.get();
-}
-
const Extension* ChromeV8Extension::GetExtensionForCurrentRenderView() const {
content::RenderView* renderview = GetCurrentRenderView();
if (!renderview)
@@ -152,61 +115,3 @@ bool ChromeV8Extension::CheckCurrentContextAccessToExtensionAPI(
return true;
}
-
-v8::Handle<v8::FunctionTemplate>
- ChromeV8Extension::GetNativeFunction(v8::Handle<v8::String> name) {
- if (name->Equals(v8::String::New("GetChromeHidden"))) {
- return v8::FunctionTemplate::New(GetChromeHidden);
- }
-
- if (name->Equals(v8::String::New("Print"))) {
- return v8::FunctionTemplate::New(Print);
- }
-
- return v8::FunctionTemplate::New(HandleNativeFunction,
- v8::External::New(this));
-}
-
-// static
-v8::Handle<v8::Value> ChromeV8Extension::HandleNativeFunction(
- const v8::Arguments& arguments) {
- ChromeV8Extension* self = GetFromArguments<ChromeV8Extension>(arguments);
- ChromeV8Context* context =
- self->extension_dispatcher()->v8_context_set().GetCurrent();
- CHECK(context) << "Unknown V8 context. Maybe a native function is getting "
- << "called during parse of a v8 extension, before the context "
- << "has been registered.";
-
- ChromeV8ExtensionHandler* handler = self->GetHandler(context);
- if (!handler) {
- handler = self->CreateHandler(context);
- if (handler)
- self->handlers_[context] = linked_ptr<ChromeV8ExtensionHandler>(handler);
- }
- CHECK(handler) << "No handler for v8 extension: " << self->name();
-
- std::string name = *v8::String::AsciiValue(arguments.Callee()->GetName());
- return handler->HandleNativeFunction(name, arguments);
-}
-
-ChromeV8ExtensionHandler* ChromeV8Extension::CreateHandler(
- ChromeV8Context* context) {
- return NULL;
-}
-
-v8::Handle<v8::Value> ChromeV8Extension::GetChromeHidden(
- const v8::Arguments& args) {
- return ChromeV8Context::GetOrCreateChromeHidden(v8::Context::GetCurrent());
-}
-
-v8::Handle<v8::Value> ChromeV8Extension::Print(const v8::Arguments& args) {
- if (args.Length() < 1)
- return v8::Undefined();
-
- std::vector<std::string> components;
- for (int i = 0; i < args.Length(); ++i)
- components.push_back(*v8::String::Utf8Value(args[i]->ToString()));
-
- LOG(ERROR) << JoinString(components, ',');
- return v8::Undefined();
-}
« no previous file with comments | « chrome/renderer/extensions/chrome_v8_extension.h ('k') | chrome/renderer/extensions/chrome_v8_extension_handler.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698