This directory is for components that have the Content Module as the
uppermost layer they depend on.  They may depend only on the Content
API (content/public) and on lower layers (e.g. base/, net/, ipc/
etc.).

These components are not part of the Content Module itself.  They are
built in a separate .gyp file (content_components.gyp in this
directory).

Components that have bits of code that need to live in different
processes (e.g. some code in the browser process, some in the renderer
process, etc.) should separate the code into different subdirectories.
Hence for a component named 'foo' you might end up with a structure
like the following:

content/components/foo          - DEPS, OWNERS, foo.gypi
content/components/foo/browser  - code that needs the browser process
content/components/foo/common   - for e.g. IPC constants and such
content/components/foo/renderer - code that needs renderer process

These subdirectories should have DEPS files with the relevant
restrictions in place, e.g. only content/components/foo/browser should
be allowed to #include from content/public/browser.

Note that there may also be an 'android' subdir, with a Java source
code structure underneath it where the package name is
org.chromium.content.component.foo, and with subdirs after 'foo'
to illustrate process, e.g. 'browser' or 'renderer':

content/components/foo/android/OWNERS, DEPS
content/components/foo/android/java/src/org/chromium/content/component/foo/browser/
content/components/foo/android/javatests/src/org/chromium/content/component/foo/browser/

Code in content/components/ should be placed in the content:: namespace.
