Password manager internals page service: introduction
Introduce a BrowserContextKeyedService to collect logs from the PasswordManagerClient instances, and distribute them to PasswordManagerInternalsUI instances for display. The service will also ensure that nothing is logged in Incognito profiles, and that logs are flushed as soon as no one is displaying them.
Except for checking the incognito bit, the whole functionality is implemented in the LogRouter class inside the password_manager component, for easy code sharing across platforms.
The service inherits from LogRouter, and adds nothing except for leveraging the BrowserContextKeyedServiceFactory framework to keep the functionality from OTR profiles.
This CL only introduces the service, it does not put it to use (outside tests) yet.
For that there will be another CL (https://codereview.chromium.org/
269513003, but WIP, not fit for (re)viewing yet).
Yet another CL deals with renaming PasswordManagerLogger to LogReceiver: https://codereview.chromium.org/
264793010/
Design doc: https://docs.google.com/document/d/1ArDhTo0w-8tOPiTwqM1gG6ZGqODo8UTpXlJjjnCNK4s/edit?usp=sharing#heading=h.cqh4wuj8j4yl
BUG=347927
Review URL: https://codereview.chromium.org/
262583007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@269686 0039d316-1c4b-4281-b951-d872f2087c98