| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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 SHELL_DYNAMIC_APPLICATION_LOADER_H_ | 5 #ifndef SHELL_DYNAMIC_APPLICATION_LOADER_H_ |
| 6 #define SHELL_DYNAMIC_APPLICATION_LOADER_H_ | 6 #define SHELL_DYNAMIC_APPLICATION_LOADER_H_ |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 | 9 |
| 10 #include "base/callback.h" | 10 #include "base/callback.h" |
| (...skipping 22 matching lines...) Expand all Loading... |
| 33 Context* context, | 33 Context* context, |
| 34 scoped_ptr<DynamicServiceRunnerFactory> runner_factory); | 34 scoped_ptr<DynamicServiceRunnerFactory> runner_factory); |
| 35 ~DynamicApplicationLoader() override; | 35 ~DynamicApplicationLoader() override; |
| 36 | 36 |
| 37 void RegisterContentHandler(const std::string& mime_type, | 37 void RegisterContentHandler(const std::string& mime_type, |
| 38 const GURL& content_handler_url); | 38 const GURL& content_handler_url); |
| 39 | 39 |
| 40 // ApplicationLoader methods: | 40 // ApplicationLoader methods: |
| 41 void Load(ApplicationManager* manager, | 41 void Load(ApplicationManager* manager, |
| 42 const GURL& url, | 42 const GURL& url, |
| 43 ShellPtr shell, | 43 InterfaceRequest<Application> application_request, |
| 44 LoadCallback callback) override; | 44 LoadCallback callback) override; |
| 45 void OnApplicationError(ApplicationManager* manager, | 45 void OnApplicationError(ApplicationManager* manager, |
| 46 const GURL& url) override; | 46 const GURL& url) override; |
| 47 | 47 |
| 48 private: | 48 private: |
| 49 class Loader; | 49 class Loader; |
| 50 class LocalLoader; | 50 class LocalLoader; |
| 51 class NetworkLoader; | 51 class NetworkLoader; |
| 52 | 52 |
| 53 typedef std::map<std::string, GURL> MimeTypeToURLMap; | 53 typedef std::map<std::string, GURL> MimeTypeToURLMap; |
| 54 typedef base::Callback<void(Loader*)> LoaderCompleteCallback; | 54 typedef base::Callback<void(Loader*)> LoaderCompleteCallback; |
| 55 | 55 |
| 56 void LoaderComplete(Loader* loader); | 56 void LoaderComplete(Loader* loader); |
| 57 | 57 |
| 58 Context* const context_; | 58 Context* const context_; |
| 59 scoped_ptr<DynamicServiceRunnerFactory> runner_factory_; | 59 scoped_ptr<DynamicServiceRunnerFactory> runner_factory_; |
| 60 NetworkServicePtr network_service_; | 60 NetworkServicePtr network_service_; |
| 61 MimeTypeToURLMap mime_type_to_url_; | 61 MimeTypeToURLMap mime_type_to_url_; |
| 62 ScopedVector<Loader> loaders_; | 62 ScopedVector<Loader> loaders_; |
| 63 LoaderCompleteCallback loader_complete_callback_; | 63 LoaderCompleteCallback loader_complete_callback_; |
| 64 | 64 |
| 65 DISALLOW_COPY_AND_ASSIGN(DynamicApplicationLoader); | 65 DISALLOW_COPY_AND_ASSIGN(DynamicApplicationLoader); |
| 66 }; | 66 }; |
| 67 | 67 |
| 68 } // namespace shell | 68 } // namespace shell |
| 69 } // namespace mojo | 69 } // namespace mojo |
| 70 | 70 |
| 71 #endif // SHELL_DYNAMIC_APPLICATION_LOADER_H_ | 71 #endif // SHELL_DYNAMIC_APPLICATION_LOADER_H_ |
| OLD | NEW |