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 MOJO_SHELL_DYNAMIC_SERVICE_LOADER_H_ | 5 #ifndef MOJO_SHELL_DYNAMIC_SERVICE_LOADER_H_ |
6 #define MOJO_SHELL_DYNAMIC_SERVICE_LOADER_H_ | 6 #define MOJO_SHELL_DYNAMIC_SERVICE_LOADER_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 19 matching lines...) Expand all Loading... |
30 scoped_ptr<DynamicServiceRunnerFactory> runner_factory); | 30 scoped_ptr<DynamicServiceRunnerFactory> runner_factory); |
31 virtual ~DynamicServiceLoader(); | 31 virtual ~DynamicServiceLoader(); |
32 | 32 |
33 // Initiates the dynamic load. If the URL has a mojo: scheme, then the name | 33 // Initiates the dynamic load. If the URL has a mojo: scheme, then the name |
34 // specified will be modified to the platform's naming scheme. Also, the | 34 // specified will be modified to the platform's naming scheme. Also, the |
35 // value specified to the --origin command line argument will be used as the | 35 // value specified to the --origin command line argument will be used as the |
36 // host/port. | 36 // host/port. |
37 virtual void LoadService(ServiceManager* manager, | 37 virtual void LoadService(ServiceManager* manager, |
38 const GURL& url, | 38 const GURL& url, |
39 ScopedShellHandle service_handle) OVERRIDE; | 39 ScopedShellHandle service_handle) OVERRIDE; |
| 40 virtual void OnServiceError(ServiceManager* manager, const GURL& url) |
| 41 OVERRIDE; |
40 | 42 |
41 private: | 43 private: |
42 class LoadContext; | 44 class LoadContext; |
43 | 45 |
44 void AppCompleted(const GURL& url); | 46 void AppCompleted(const GURL& url); |
45 | 47 |
46 Context* const context_; | 48 Context* const context_; |
47 scoped_ptr<DynamicServiceRunnerFactory> runner_factory_; | 49 scoped_ptr<DynamicServiceRunnerFactory> runner_factory_; |
48 | 50 |
49 typedef std::map<GURL, LoadContext*> LoadContextMap; | 51 typedef std::map<GURL, LoadContext*> LoadContextMap; |
50 LoadContextMap url_to_load_context_; | 52 LoadContextMap url_to_load_context_; |
51 | 53 |
52 DISALLOW_COPY_AND_ASSIGN(DynamicServiceLoader); | 54 DISALLOW_COPY_AND_ASSIGN(DynamicServiceLoader); |
53 }; | 55 }; |
54 | 56 |
55 } // namespace shell | 57 } // namespace shell |
56 } // namespace mojo | 58 } // namespace mojo |
57 | 59 |
58 #endif // MOJO_SHELL_DYNAMIC_SERVICE_LOADER_H_ | 60 #endif // MOJO_SHELL_DYNAMIC_SERVICE_LOADER_H_ |
OLD | NEW |