| OLD | NEW | 
|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be | 
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. | 
| 4 | 4 | 
| 5 #ifndef GIN_MODULES_MODULE_REGISTRY_H_ | 5 #ifndef GIN_MODULES_MODULE_REGISTRY_H_ | 
| 6 #define GIN_MODULES_MODULE_REGISTRY_H_ | 6 #define GIN_MODULES_MODULE_REGISTRY_H_ | 
| 7 | 7 | 
| 8 #include <list> | 8 #include <list> | 
| 9 #include <map> | 9 #include <map> | 
| 10 #include <set> | 10 #include <set> | 
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 68   void AttemptToLoadMoreModules(v8::Isolate* isolate); | 68   void AttemptToLoadMoreModules(v8::Isolate* isolate); | 
| 69 | 69 | 
| 70   const std::set<std::string>& available_modules() const { | 70   const std::set<std::string>& available_modules() const { | 
| 71     return available_modules_; | 71     return available_modules_; | 
| 72   } | 72   } | 
| 73 | 73 | 
| 74   const std::set<std::string>& unsatisfied_dependencies() const { | 74   const std::set<std::string>& unsatisfied_dependencies() const { | 
| 75     return unsatisfied_dependencies_; | 75     return unsatisfied_dependencies_; | 
| 76   } | 76   } | 
| 77 | 77 | 
|  | 78   v8::Handle<v8::Value> GetModule(v8::Isolate* isolate, const std::string& id); | 
|  | 79 | 
| 78  private: | 80  private: | 
| 79   typedef ScopedVector<PendingModule> PendingModuleVector; | 81   typedef ScopedVector<PendingModule> PendingModuleVector; | 
| 80   typedef std::map<std::string, LoadModuleCallback> LoadModuleCallbackMap; | 82   typedef std::map<std::string, LoadModuleCallback> LoadModuleCallbackMap; | 
| 81 | 83 | 
| 82   explicit ModuleRegistry(v8::Isolate* isolate); | 84   explicit ModuleRegistry(v8::Isolate* isolate); | 
| 83 | 85 | 
| 84   void Load(v8::Isolate* isolate, scoped_ptr<PendingModule> pending); | 86   void Load(v8::Isolate* isolate, scoped_ptr<PendingModule> pending); | 
| 85   void RegisterModule(v8::Isolate* isolate, | 87   void RegisterModule(v8::Isolate* isolate, | 
| 86                       const std::string& id, | 88                       const std::string& id, | 
| 87                       v8::Handle<v8::Value> module); | 89                       v8::Handle<v8::Value> module); | 
| 88 | 90 | 
| 89   bool CheckDependencies(PendingModule* pending); | 91   bool CheckDependencies(PendingModule* pending); | 
| 90   bool AttemptToLoad(v8::Isolate* isolate, scoped_ptr<PendingModule> pending); | 92   bool AttemptToLoad(v8::Isolate* isolate, scoped_ptr<PendingModule> pending); | 
| 91 | 93 | 
| 92   v8::Handle<v8::Value> GetModule(v8::Isolate* isolate, const std::string& id); |  | 
| 93 |  | 
| 94   std::set<std::string> available_modules_; | 94   std::set<std::string> available_modules_; | 
| 95   std::set<std::string> unsatisfied_dependencies_; | 95   std::set<std::string> unsatisfied_dependencies_; | 
| 96 | 96 | 
| 97   LoadModuleCallbackMap waiting_callbacks_; | 97   LoadModuleCallbackMap waiting_callbacks_; | 
| 98 | 98 | 
| 99   PendingModuleVector pending_modules_; | 99   PendingModuleVector pending_modules_; | 
| 100   v8::Persistent<v8::Object> modules_; | 100   v8::Persistent<v8::Object> modules_; | 
| 101 | 101 | 
| 102   ObserverList<ModuleRegistryObserver> observer_list_; | 102   ObserverList<ModuleRegistryObserver> observer_list_; | 
| 103 | 103 | 
| 104   DISALLOW_COPY_AND_ASSIGN(ModuleRegistry); | 104   DISALLOW_COPY_AND_ASSIGN(ModuleRegistry); | 
| 105 }; | 105 }; | 
| 106 | 106 | 
| 107 }  // namespace gin | 107 }  // namespace gin | 
| 108 | 108 | 
| 109 #endif  // GIN_MODULES_MODULE_REGISTRY_H_ | 109 #endif  // GIN_MODULES_MODULE_REGISTRY_H_ | 
| OLD | NEW | 
|---|