Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(15)

Side by Side Diff: services/service_manager/public/interfaces/service.mojom

Issue 2804373002: Eliminate Connector::Connect(), Connection, etc. (Closed)
Patch Set: . Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 module service_manager.mojom; 5 module service_manager.mojom;
6 6
7 import "services/service_manager/public/interfaces/connector.mojom"; 7 import "services/service_manager/public/interfaces/connector.mojom";
8 import "services/service_manager/public/interfaces/interface_provider.mojom"; 8 import "services/service_manager/public/interfaces/interface_provider.mojom";
9 import "services/service_manager/public/interfaces/interface_provider_spec.mojom "; 9 import "services/service_manager/public/interfaces/interface_provider_spec.mojom ";
10 import "services/service_manager/public/interfaces/service_control.mojom"; 10 import "services/service_manager/public/interfaces/service_control.mojom";
(...skipping 30 matching lines...) Expand all
41 // connector_request 41 // connector_request
42 // An optional Connector request for the service manager to bind, allowing 42 // An optional Connector request for the service manager to bind, allowing
43 // the initialized client to connect to others. 43 // the initialized client to connect to others.
44 // 44 //
45 // control_request 45 // control_request
46 // An optional associated ServiceControl request. 46 // An optional associated ServiceControl request.
47 // 47 //
48 OnStart(ServiceInfo info) => (Connector&? connector_request, 48 OnStart(ServiceInfo info) => (Connector&? connector_request,
49 associated ServiceControl&? control_request); 49 associated ServiceControl&? control_request);
50 50
51 // Called when another service attempts to open a connection to this
52 // service. A service implements this method to complete the exchange
53 // of interface implementations with the remote service. See also
54 // documentation in service_manager.mojom for Connect(). The service
55 // originating the request is referred to as the "source" and the one
56 // receiving the "target".
57 //
58 // The Service must respond to acknowledge receipt of the request.
59 //
60 // Parameters:
61 //
62 // source_info
63 // Contains the source identity and interface provider specs.
64 //
65 // interfaces
66 // A request for an InterfaceProvider by which the source service may
67 // seek to bind interface implementations exported by the target.
68 //
69 OnConnect(ServiceInfo source_info, InterfaceProvider&? interfaces) => ();
70
71 // Called when a request to bind an interface is received from another 51 // Called when a request to bind an interface is received from another
72 // ("source") service. This is the result of that service calling 52 // ("source") service. This is the result of that service calling
73 // BindInterface() on a Connector. By the time this method is called, the 53 // BindInterface() on a Connector. By the time this method is called, the
74 // service manager has already completed a policy check to determine that this 54 // service manager has already completed a policy check to determine that this
75 // interface can be bound. 55 // interface can be bound.
76 // 56 //
77 // The Service must respond to acknowledge receipt of the request. 57 // The Service must respond to acknowledge receipt of the request.
78 // 58 //
79 // Parameters: 59 // Parameters:
80 // 60 //
81 // source_info 61 // source_info
82 // Contains the source identity and interface provider specs. 62 // Contains the source identity and interface provider specs.
83 // 63 //
84 // interface_name 64 // interface_name
85 // The name of the interface to be bound. 65 // The name of the interface to be bound.
86 // 66 //
87 // interface_pipe 67 // interface_pipe
88 // The message pipe to bind the interface implementation to. 68 // The message pipe to bind the interface implementation to.
89 // 69 //
90 // TODO(beng): It occurs to me that |source_info| leaks all metadata about 70 // TODO(beng): It occurs to me that |source_info| leaks all metadata about
91 // the source's capability requirements to the target. This seems 71 // the source's capability requirements to the target. This seems
92 // undesirable. The metadata supplied here should be germane to 72 // undesirable. The metadata supplied here should be germane to
93 // fulfilling this request and no more. 73 // fulfilling this request and no more.
94 // TODO(beng): This should replace OnConnect().
95 OnBindInterface(ServiceInfo source_info, 74 OnBindInterface(ServiceInfo source_info,
96 string interface_name, 75 string interface_name,
97 handle<message_pipe> interface_pipe) => (); 76 handle<message_pipe> interface_pipe) => ();
98 }; 77 };
OLDNEW
« no previous file with comments | « services/service_manager/public/interfaces/connector.mojom ('k') | services/service_manager/service_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698