| Index: gin/modules/module_runner_delegate.cc
|
| diff --git a/gin/modules/module_runner_delegate.cc b/gin/modules/module_runner_delegate.cc
|
| index e029a93fda8c0feed797ffc1124dd1f474e976df..50b9f5e71db7859ae3382f2139eed3a84e691c33 100644
|
| --- a/gin/modules/module_runner_delegate.cc
|
| +++ b/gin/modules/module_runner_delegate.cc
|
| @@ -15,6 +15,11 @@ ModuleRunnerDelegate::ModuleRunnerDelegate(const base::FilePath& module_base)
|
| ModuleRunnerDelegate::~ModuleRunnerDelegate() {
|
| }
|
|
|
| +void ModuleRunnerDelegate::AddBuiltinModule(const std::string& id,
|
| + ModuleTemplateGetter templ) {
|
| + builtin_modules_[id] = templ;
|
| +}
|
| +
|
| v8::Handle<v8::ObjectTemplate> ModuleRunnerDelegate::GetGlobalTemplate(
|
| Runner* runner) {
|
| v8::Handle<v8::ObjectTemplate> templ = v8::ObjectTemplate::New();
|
| @@ -22,6 +27,19 @@ v8::Handle<v8::ObjectTemplate> ModuleRunnerDelegate::GetGlobalTemplate(
|
| return templ;
|
| }
|
|
|
| +void ModuleRunnerDelegate::DidCreateContext(Runner* runner) {
|
| + RunnerDelegate::DidCreateContext(runner);
|
| +
|
| + v8::Handle<v8::Context> context = runner->context();
|
| + ModuleRegistry* registry = ModuleRegistry::From(context);
|
| +
|
| + for (BuiltinModuleMap::const_iterator it = builtin_modules_.begin();
|
| + it != builtin_modules_.end(); ++it) {
|
| + registry->AddBuiltinModule(runner->isolate(), it->first,
|
| + it->second(runner->isolate()));
|
| + }
|
| +}
|
| +
|
| void ModuleRunnerDelegate::DidRunScript(Runner* runner,
|
| v8::Handle<v8::Script> script) {
|
| ModuleRegistry* registry = ModuleRegistry::From(runner->context());
|
|
|