| Index: services/README.md
|
| diff --git a/services/README.md b/services/README.md
|
| index b8e15401238c58c7676069bb75538198c09a9435..c386b42f008ab6b944c5af4a46191a0a13d8e449 100644
|
| --- a/services/README.md
|
| +++ b/services/README.md
|
| @@ -1,7 +1,8 @@
|
| -Chrome Foundation Services
|
| -====
|
| +# Chrome Foundation Services
|
|
|
| -### Overview
|
| +[TOC]
|
| +
|
| +## Overview
|
|
|
| This directory contains Chrome Foundation Services. If you think of Chrome as a
|
| "portable OS," Chrome Foundation Services can be thought of as that OS'
|
| @@ -13,48 +14,56 @@ Roughly each subdirectory here corresponds to a service that:
|
| * could logically run a standalone process for security/performance isolation
|
| benefits depending on the constraints of the host OS.
|
|
|
| -### Service Directory Structure
|
| +## Service Directory Structure
|
|
|
| Individual services are structured like so:
|
|
|
| - //services/foo/ <-- Implementation code, may have subdirs.
|
| - /public/
|
| - /cpp/ <-- C++ client libraries (optional)
|
| - /interfaces/ <-- Mojom interfaces
|
| +```
|
| +//services/foo/ <-- Implementation code, may have subdirs.
|
| + /public/
|
| + /cpp/ <-- C++ client libraries (optional)
|
| + /interfaces/ <-- Mojom interfaces
|
| +```
|
|
|
| -### Dependencies
|
| +## Dependencies
|
|
|
| Code within `//services` may only depend on each other via each other's
|
| -`/public/` directories, i.e. implementation code cannot be shared directly.
|
| +`/public/` directories, *i.e.* implementation code may not be shared directly.
|
|
|
| Service code should also take care to tightly limit the dependencies on static
|
| libraries from outside of `//services`. Dependencies to large platform
|
| layers like `//content`, `//chrome` or `//third_party/WebKit` must be avoided.
|
|
|
| -### Physical Packaging
|
| +## Physical Packaging
|
|
|
| Note that while it may be possible to build a discrete physical package (DSO)
|
| for each service, products consuming these services may package them
|
| differently, e.g. by combining them into a single package.
|
|
|
| -### Documentation
|
| +## Additional Documentation
|
|
|
| [High-level Design Doc](https://docs.google.com/document/d/15I7sQyQo6zsqXVNAlVd520tdGaS8FCicZHrN0yRu-oU)
|
| -[Homepage](https://sites.google.com/a/chromium.org/dev/servicification)
|
|
|
| -### Relationship to other top-level directories in //
|
| +[Servicification Homepage](https://sites.google.com/a/chromium.org/dev/servicification)
|
| +
|
| +## Relationship To Other Top-Level Directories
|
|
|
| Services can be thought of as integrators of library code from across the
|
| -Chromium repository, most commonly //base and //mojo (obviously) but for each
|
| -service also //components, //ui, etc in accordance with the functionality they
|
| -provide.
|
| +Chromium repository, most commonly `//base` and `//mojo` (obviously) but for
|
| +each service also `//components`, `//ui`, *etc.* in accordance with the
|
| +functionality they provide.
|
|
|
| -Not everything in //components is automatically a service in its own right.
|
| -Think of //components as sort of like a //lib. Individual //components can
|
| -define, implement and use mojom interfaces, but only //services have unique
|
| -identities with the Service Manager.
|
| +Not everything in `//components` is automatically a service in its own right.
|
| +Think of `//components` as sort of like a `//lib`. Individual `//components` can
|
| +define, implement and use Mojom interfaces, but only `//services` have unique
|
| +identities with the Service Manager and so only `//services` make it possible
|
| +for Mojom interfaces to be acquired.
|
|
|
| -### Adding a new service
|
| +## Adding a new service
|
|
|
| -Please start a thread on [services-dev](https://groups.google.com/a/chromium.org/forum/#!forum/services-dev)
|
| +See the [Service Manager documentation](/services/service_manager) for more
|
| +details regarding how to define a service and expose or consume interfaces to
|
| +and from other services.
|
|
|
| +Please start a thread on [services-dev@chromium.org](https://groups.google.com/a/chromium.org/forum/#!forum/services-dev)
|
| +if you want to introduce a new service.
|
|
|