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

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

Issue 2425563004: Support reading multiple InterfaceProviderSpecs from manifests (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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 "mojo/common/common_custom_types.mojom"; 7 import "mojo/common/common_custom_types.mojom";
8 import "services/service_manager/public/interfaces/interface_provider_spec.mojom "; 8 import "services/service_manager/public/interfaces/interface_provider_spec.mojom ";
9 9
10 // The result of a Resolve operation via Resolver. 10 // The result of a Resolve operation via Resolver.
11 struct ResolveResult { 11 struct ResolveResult {
12 // The mojo: name that was requested to be resolved. 12 // The mojo: name that was requested to be resolved.
13 string name; 13 string name;
14 14
15 // The mojo: name of the physical package supplying the requested name. This 15 // The mojo: name of the physical package supplying the requested name. This
16 // could be the same name that was passed, or the name of a package that 16 // could be the same name that was passed, or the name of a package that
17 // contains it. 17 // contains it.
18 string resolved_name; 18 string resolved_name;
19 19
20 // An additional piece of metadata that identifies what instance |name| should 20 // An additional piece of metadata that identifies what instance |name| should
21 // be run in. It's possible that |name| may provide several services that 21 // be run in. It's possible that |name| may provide several services that
22 // should be run as different instances. 22 // should be run as different instances.
23 string qualifier; 23 string qualifier;
24 24
25 // The set of capabilities provided and required by |name|. 25 // Contains the contents of the interface_provider_specs section in |name|'s
26 // TODO(beng): Fix comment. 26 // service manifest. If a manifest could be loaded, this map will contain at
27 InterfaceProviderSpec? connection_spec; 27 // least one key: |kServiceManager_ConnectorSpec| as defined in
28 // interface_provider_spec.mojom. If a manifest could not be loaded, this map
29 // will be empty.
30 map<string, InterfaceProviderSpec> interface_provider_specs;
28 31
29 // A path to the package file specified by |name|. 32 // A path to the package file specified by |name|.
30 mojo.common.mojom.FilePath package_path; 33 mojo.common.mojom.FilePath package_path;
31 }; 34 };
32 35
33 // Implemented exclusively for the Service Manager's use in resolving mojo: 36 // Implemented exclusively for the Service Manager's use in resolving mojo:
34 // names and reading static manifest information. 37 // names and reading static manifest information.
35 interface Resolver { 38 interface Resolver {
36 // Resolves |mojo_name| and returns a ResolveResult containing metadata from 39 // Resolves |mojo_name| and returns a ResolveResult containing metadata from
37 // the catalog that the Service Manager uses to run an instance of it. 40 // the catalog that the Service Manager uses to run an instance of it.
38 ResolveMojoName(string mojo_name) => (ResolveResult result); 41 ResolveMojoName(string mojo_name) => (ResolveResult result);
39 }; 42 };
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698