| OLD | NEW | 
|---|
| (Empty) |  | 
|  | 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 
|  | 2 // Use of this source code is governed by a BSD-style license that can be | 
|  | 3 // found in the LICENSE file. | 
|  | 4 | 
|  | 5 #include "mojo/apps/js/mojo_module.h" | 
|  | 6 | 
|  | 7 #include "gin/arguments.h" | 
|  | 8 #include "gin/converter.h" | 
|  | 9 #include "gin/object_template_builder.h" | 
|  | 10 #include "gin/per_isolate_data.h" | 
|  | 11 #include "mojo/apps/js/js_app.h" | 
|  | 12 #include "mojo/apps/js/mojo_module.h" | 
|  | 13 #include "mojo/bindings/js/handle.h" | 
|  | 14 #include "mojo/common/data_pipe_utils.h" | 
|  | 15 | 
|  | 16 namespace mojo { | 
|  | 17 namespace apps { | 
|  | 18 | 
|  | 19 namespace { | 
|  | 20 | 
|  | 21 gin::WrapperInfo g_wrapper_info = {gin::kEmbedderNativeGin}; | 
|  | 22 | 
|  | 23 }  // namespace | 
|  | 24 | 
|  | 25 const char Mojo::kModuleName[] = "mojo"; | 
|  | 26 | 
|  | 27 v8::Local<v8::Value> Mojo::GetModule(JSApp* js_app, v8::Isolate* isolate) { | 
|  | 28   gin::PerIsolateData* data = gin::PerIsolateData::From(isolate); | 
|  | 29   v8::Local<v8::ObjectTemplate> templ = | 
|  | 30       data->GetObjectTemplate(&g_wrapper_info); | 
|  | 31 | 
|  | 32   if (templ.IsEmpty()) { | 
|  | 33     templ = gin::ObjectTemplateBuilder(isolate) | 
|  | 34                 .SetMethod("connectToService", | 
|  | 35                            base::Bind(&JSApp::ConnectToService, | 
|  | 36                                       base::Unretained(js_app))) | 
|  | 37                 .SetMethod("quit", | 
|  | 38                            base::Bind(&JSApp::Quit, base::Unretained(js_app))) | 
|  | 39                 .Build(); | 
|  | 40     data->SetObjectTemplate(&g_wrapper_info, templ); | 
|  | 41   } | 
|  | 42 | 
|  | 43   return templ->NewInstance(); | 
|  | 44 } | 
|  | 45 | 
|  | 46 }  // namespace apps | 
|  | 47 }  // namespace mojo | 
| OLD | NEW | 
|---|