Index: gin/runner.cc |
diff --git a/gin/runner.cc b/gin/runner.cc |
index e8e4089d5fbc98df270179aa6e515c52add34a91..6f018b165b24b896c3584d0ecd174fe46506d772 100644 |
--- a/gin/runner.cc |
+++ b/gin/runner.cc |
@@ -4,106 +4,18 @@ |
#include "gin/runner.h" |
-#include "gin/converter.h" |
-#include "gin/per_context_data.h" |
-#include "gin/try_catch.h" |
- |
-using v8::Context; |
-using v8::HandleScope; |
-using v8::Isolate; |
-using v8::Object; |
-using v8::ObjectTemplate; |
-using v8::Script; |
- |
namespace gin { |
-RunnerDelegate::RunnerDelegate() { |
-} |
- |
-RunnerDelegate::~RunnerDelegate() { |
-} |
- |
-v8::Handle<ObjectTemplate> RunnerDelegate::GetGlobalTemplate(Runner* runner) { |
- return v8::Handle<ObjectTemplate>(); |
-} |
- |
-void RunnerDelegate::DidCreateContext(Runner* runner) { |
-} |
- |
-void RunnerDelegate::WillRunScript(Runner* runner) { |
-} |
- |
-void RunnerDelegate::DidRunScript(Runner* runner) { |
-} |
- |
-void RunnerDelegate::UnhandledException(Runner* runner, TryCatch& try_catch) { |
- CHECK(false) << try_catch.GetStackTrace(); |
-} |
- |
-Runner::Runner(RunnerDelegate* delegate, Isolate* isolate) |
- : ContextHolder(isolate), |
- delegate_(delegate), |
- weak_factory_(this) { |
- v8::Isolate::Scope isolate_scope(isolate); |
- HandleScope handle_scope(isolate); |
- v8::Handle<v8::Context> context = |
- Context::New(isolate, NULL, delegate_->GetGlobalTemplate(this)); |
- |
- SetContext(context); |
- PerContextData::From(context)->set_runner(this); |
- |
- v8::Context::Scope scope(context); |
- delegate_->DidCreateContext(this); |
+Runner::Runner() : weak_factory_(this) { |
} |
Runner::~Runner() { |
} |
-void Runner::Run(const std::string& source, const std::string& resource_name) { |
- TryCatch try_catch; |
- v8::Handle<Script> script = Script::New(StringToV8(isolate(), source), |
- StringToV8(isolate(), resource_name)); |
- if (try_catch.HasCaught()) { |
- delegate_->UnhandledException(this, try_catch); |
- return; |
- } |
- |
- Run(script); |
-} |
- |
-void Runner::Run(v8::Handle<Script> script) { |
- TryCatch try_catch; |
- delegate_->WillRunScript(this); |
- |
- script->Run(); |
- |
- delegate_->DidRunScript(this); |
- if (try_catch.HasCaught()) { |
- delegate_->UnhandledException(this, try_catch); |
- } |
-} |
- |
-v8::Handle<v8::Value> Runner::Call(v8::Handle<v8::Function> function, |
- v8::Handle<v8::Value> receiver, |
- int argc, |
- v8::Handle<v8::Value> argv[]) { |
- TryCatch try_catch; |
- delegate_->WillRunScript(this); |
- |
- v8::Handle<v8::Value> result = function->Call(receiver, argc, argv); |
- |
- delegate_->DidRunScript(this); |
- if (try_catch.HasCaught()) { |
- delegate_->UnhandledException(this, try_catch); |
- } |
- |
- return result; |
-} |
- |
Runner::Scope::Scope(Runner* runner) |
- : isolate_scope_(runner->isolate()), |
- handle_scope_(runner->isolate()), |
- scope_(runner->context()) { |
+ : isolate_scope_(runner->GetContextHolder()->isolate()), |
+ handle_scope_(runner->GetContextHolder()->isolate()), |
+ scope_(runner->GetContextHolder()->context()) { |
} |
Runner::Scope::~Scope() { |