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 #include "mojo/application/application_runner_chromium.h" | 5 #include "mojo/application/application_runner_chromium.h" |
6 #include "mojo/public/c/system/main.h" | 6 #include "mojo/public/c/system/main.h" |
7 #include "mojo/public/cpp/application/application_connection.h" | 7 #include "mojo/public/cpp/application/application_connection.h" |
8 #include "mojo/public/cpp/application/application_delegate.h" | 8 #include "mojo/public/cpp/application/application_delegate.h" |
9 #include "mojo/services/view_manager/view_manager_init_service_context.h" | 9 #include "mojo/services/view_manager/view_manager_init_service_context.h" |
10 #include "mojo/services/view_manager/view_manager_init_service_impl.h" | 10 #include "mojo/services/view_manager/view_manager_init_service_impl.h" |
11 | 11 |
12 namespace mojo { | 12 namespace mojo { |
13 namespace service { | 13 namespace service { |
14 | 14 |
15 class ViewManagerApp : public ApplicationDelegate, | 15 class ViewManagerApp : public ApplicationDelegate, |
16 public InterfaceFactory<ViewManagerInitService> { | 16 public InterfaceFactory<ViewManagerInitService> { |
17 public: | 17 public: |
18 ViewManagerApp() {} | 18 ViewManagerApp() {} |
19 virtual ~ViewManagerApp() {} | 19 virtual ~ViewManagerApp() {} |
20 | 20 |
21 virtual bool ConfigureIncomingConnection( | 21 virtual bool ConfigureIncomingConnection( |
22 ApplicationConnection* connection) OVERRIDE { | 22 ApplicationConnection* connection) override { |
23 context_.ConfigureIncomingConnection(connection); | 23 context_.ConfigureIncomingConnection(connection); |
24 // TODO(sky): this needs some sort of authentication as well as making sure | 24 // TODO(sky): this needs some sort of authentication as well as making sure |
25 // we only ever have one active at a time. | 25 // we only ever have one active at a time. |
26 connection->AddService(this); | 26 connection->AddService(this); |
27 return true; | 27 return true; |
28 } | 28 } |
29 | 29 |
30 virtual void Create( | 30 virtual void Create( |
31 ApplicationConnection* connection, | 31 ApplicationConnection* connection, |
32 InterfaceRequest<ViewManagerInitService> request) OVERRIDE { | 32 InterfaceRequest<ViewManagerInitService> request) override { |
33 BindToRequest(new ViewManagerInitServiceImpl(connection, &context_), | 33 BindToRequest(new ViewManagerInitServiceImpl(connection, &context_), |
34 &request); | 34 &request); |
35 } | 35 } |
36 | 36 |
37 private: | 37 private: |
38 ViewManagerInitServiceContext context_; | 38 ViewManagerInitServiceContext context_; |
39 | 39 |
40 DISALLOW_COPY_AND_ASSIGN(ViewManagerApp); | 40 DISALLOW_COPY_AND_ASSIGN(ViewManagerApp); |
41 }; | 41 }; |
42 | 42 |
43 } // namespace service | 43 } // namespace service |
44 } // namespace mojo | 44 } // namespace mojo |
45 | 45 |
46 MojoResult MojoMain(MojoHandle shell_handle) { | 46 MojoResult MojoMain(MojoHandle shell_handle) { |
47 mojo::ApplicationRunnerChromium runner(new mojo::service::ViewManagerApp); | 47 mojo::ApplicationRunnerChromium runner(new mojo::service::ViewManagerApp); |
48 return runner.Run(shell_handle); | 48 return runner.Run(shell_handle); |
49 } | 49 } |
OLD | NEW |