Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / mojo / shell / context.h
index 6bfe1c3..3c33a75 100644 (file)
@@ -5,10 +5,11 @@
 #ifndef MOJO_SHELL_CONTEXT_H_
 #define MOJO_SHELL_CONTEXT_H_
 
+#include <string>
+
+#include "mojo/application_manager/application_manager.h"
 #include "mojo/shell/keep_alive.h"
-#include "mojo/shell/loader.h"
-#include "mojo/shell/service_manager.h"
-#include "mojo/shell/storage.h"
+#include "mojo/shell/mojo_url_resolver.h"
 #include "mojo/shell/task_runners.h"
 
 #if defined(OS_ANDROID)
 #endif  // defined(OS_ANDROID)
 
 namespace mojo {
+
+class Spy;
+
 namespace shell {
 
-class DynamicServiceLoader;
+class DynamicApplicationLoader;
 
+// The "global" context for the shell's main process.
 class Context {
  public:
   Context();
   ~Context();
 
-  TaskRunners* task_runners() { return &task_runners_; }
-  Storage* storage() { return &storage_; }
-  Loader* loader() { return &loader_; }
-  ServiceManager* service_manager() { return &service_manager_; }
+  void Init();
+
+  TaskRunners* task_runners() { return task_runners_.get(); }
+  ApplicationManager* application_manager() { return &application_manager_; }
   KeepAliveCounter* keep_alive_counter() { return &keep_alive_counter_; }
+  MojoURLResolver* mojo_url_resolver() { return &mojo_url_resolver_; }
 
 #if defined(OS_ANDROID)
-  jobject activity() const { return activity_.obj(); }
-  void set_activity(jobject activity) { activity_.Reset(NULL, activity); }
+  base::MessageLoop* ui_loop() const { return ui_loop_; }
+  void set_ui_loop(base::MessageLoop* ui_loop) { ui_loop_ = ui_loop; }
 #endif  // defined(OS_ANDROID)
 
  private:
-  TaskRunners task_runners_;
-  Storage storage_;
-  Loader loader_;
-  ServiceManager service_manager_;
-  scoped_ptr<DynamicServiceLoader> dynamic_service_loader_;
+  class NativeViewportApplicationLoader;
 
+  scoped_ptr<TaskRunners> task_runners_;
+  ApplicationManager application_manager_;
+  MojoURLResolver mojo_url_resolver_;
+  scoped_ptr<Spy> spy_;
 #if defined(OS_ANDROID)
-  base::android::ScopedJavaGlobalRef<jobject> activity_;
+  base::MessageLoop* ui_loop_;
 #endif  // defined(OS_ANDROID)
 
   KeepAliveCounter keep_alive_counter_;