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

Side by Side Diff: services/shell/public/interfaces/capabilities.mojom

Issue 2419723002: Move services/shell to services/service_manager (Closed)
Patch Set: rebase Created 4 years, 2 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
(Empty)
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
3 // found in the LICENSE file.
4
5 module shell.mojom;
6
7 // Capabilities ----------------------------------------------------------------
8 //
9 // Services expose interfaces and capability classes to one another.
10 //
11 // In a CapabilitySpec, an interface is represented by its fully qualified name,
12 // which is serialized based on the interface name and module path:
13 // module::InterfaceName.
14 //
15 // A class is an alias to something, either a set of interface names granted
16 // with that class, or some behavior specific to the application that provides
17 // it.
18
19 // Defines a collection of interfaces. We don't represent this as a bare array
20 // in-situ in mojom because we rely on type maps to generate a set container in
21 // C++ which is unavailable for a bare array.
22 struct Interfaces {
23 array<string> interfaces;
24 };
25
26 // Defines a collection of classes. See note above about not just using a bare
27 // array.
28 struct Classes {
29 array<string> classes;
30 };
31
32 // Describes the capabilities offered and requested by an service.
33 // This struct is populated from the service manifest.
34 struct CapabilitySpec {
35 // The classes offered by this service, and for each class an array of
36 // interfaces. If no interfaces are granted with a class, the array will be
37 // empty.
38 // A map of class name -> array of interfaces. The array can be empty,
39 // non-empty, or ["*"], which means allow access to all interfaces.
40 map<string, Interfaces> provided;
41
42 // The services this service needs to speak to, and the classes it requires.
43 // A map of service name -> collection of required classes. "*" is also
44 // supported as the key, which supplies a set of classes required from all
45 // services in addition to specific ones specified.
46 map<string, Classes> required;
47 };
OLDNEW
« no previous file with comments | « services/shell/public/interfaces/OWNERS ('k') | services/shell/public/interfaces/connector.mojom » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698