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

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

Issue 2480603004: Service Manager: Implement graceful service termination (Closed)
Patch Set: Created 4 years, 1 month 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 11
11 // Metadata describing an instance of a service. 12 // Metadata describing an instance of a service.
12 struct ServiceInfo { 13 struct ServiceInfo {
13 // The service's identity. 14 // The service's identity.
14 Identity identity; 15 Identity identity;
15 16
16 // The service's interface provider specs, from its manifest. 17 // The service's interface provider specs, from its manifest.
17 map<string, InterfaceProviderSpec> interface_provider_specs; 18 map<string, InterfaceProviderSpec> interface_provider_specs;
18 }; 19 };
19 20
(...skipping 14 matching lines...) Expand all
34 // * The user associated with this instance in the service manager. This 35 // * The user associated with this instance in the service manager. This
35 // will never be kInheritUserID. 36 // will never be kInheritUserID.
36 // * The instance group this instance belongs to. 37 // * The instance group this instance belongs to.
37 // 38 //
38 // Response parameters: 39 // Response parameters:
39 // 40 //
40 // connector_request 41 // connector_request
41 // An optional Connector request for the service manager to bind, allowing 42 // An optional Connector request for the service manager to bind, allowing
42 // the initialized client to connect to others. 43 // the initialized client to connect to others.
43 // 44 //
44 OnStart(ServiceInfo info) => (Connector&? connector_request); 45 // control_request
46 // An optional associated ServiceControl request.
47 //
48 OnStart(ServiceInfo info) => (Connector&? connector_request,
49 associated ServiceControl&? control_request);
45 50
46 // Called when another service attempts to open a connection to this 51 // Called when another service attempts to open a connection to this
47 // service. A service implements this method to complete the exchange 52 // service. A service implements this method to complete the exchange
48 // of interface implementations with the remote service. See also 53 // of interface implementations with the remote service. See also
49 // documentation in service_manager.mojom for Connect(). The service 54 // documentation in service_manager.mojom for Connect(). The service
50 // originating the request is referred to as the "source" and the one 55 // originating the request is referred to as the "source" and the one
51 // receiving the "target". 56 // receiving the "target".
52 // 57 //
58 // The Service must respond to acknowledge receipt of the request.
59 //
53 // Parameters: 60 // Parameters:
54 // 61 //
55 // source_info 62 // source_info
56 // Contains the source identity and interface provider specs. 63 // Contains the source identity and interface provider specs.
57 // 64 //
58 // interfaces 65 // interfaces
59 // A request for an InterfaceProvider by which the source service may 66 // A request for an InterfaceProvider by which the source service may
60 // seek to bind interface implementations exported by the target. 67 // seek to bind interface implementations exported by the target.
61 // 68 //
62 OnConnect(ServiceInfo source_info, 69 OnConnect(ServiceInfo source_info, InterfaceProvider&? interfaces) => ();
63 InterfaceProvider&? interfaces);
64 }; 70 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698