| Index: components/password_manager/core/browser/log_router.h
|
| diff --git a/components/password_manager/core/browser/log_router.h b/components/password_manager/core/browser/log_router.h
|
| index f959dbad20e0e1e5ef2a568b5c83a8f1d2a7a5a2..9044f2ad07e8fbad968252ca929ae27bec04db33 100644
|
| --- a/components/password_manager/core/browser/log_router.h
|
| +++ b/components/password_manager/core/browser/log_router.h
|
| @@ -8,22 +8,24 @@
|
| #include <set>
|
| #include <string>
|
|
|
| +#include "base/compiler_specific.h"
|
| #include "base/macros.h"
|
| #include "base/observer_list.h"
|
|
|
| namespace password_manager {
|
|
|
| +class LogManager;
|
| class LogReceiver;
|
| -class PasswordManagerClient;
|
|
|
| -// The router stands between PasswordManagerClient instances and log receivers.
|
| -// During the process of saving a password, the password manager code generates
|
| -// the log strings, and passes them to the router. The router distributes the
|
| -// logs to the receivers for displaying.
|
| +// The router stands between LogManager and LogReceiver instances. Both managers
|
| +// and receivers need to register (and unregister) with the router. After that,
|
| +// the following communication is enabled:
|
| +// * LogManagers are notified when logging starts or stops being possible
|
| +// * LogReceivers are sent logs routed through LogRouter
|
| class LogRouter {
|
| public:
|
| LogRouter();
|
| - virtual ~LogRouter();
|
| + ~LogRouter();
|
|
|
| // Passes logs to the router. Only call when there are receivers registered.
|
| void ProcessLog(const std::string& text);
|
| @@ -32,26 +34,26 @@ class LogRouter {
|
| // constructor of the registered object, because they do not call that object,
|
| // and the router only runs on a single thread.
|
|
|
| - // The clients must register to be notified about whether there are some
|
| - // receivers or not. RegisterClient adds |client| to the right observer list
|
| + // The managers must register to be notified about whether there are some
|
| + // receivers or not. RegisterManager adds |manager| to the right observer list
|
| // and returns true iff there are some receivers registered.
|
| - bool RegisterClient(PasswordManagerClient* client);
|
| - // Remove |client| from the observers list.
|
| - void UnregisterClient(PasswordManagerClient* client);
|
| + bool RegisterManager(LogManager* manager);
|
| + // Remove |manager| from the observers list.
|
| + void UnregisterManager(LogManager* manager);
|
|
|
| // The receivers must register to get updates with new logs in the future.
|
| // RegisterReceiver adds |receiver| to the right observer list, and returns
|
| // the logs accumulated so far. (It returns by value, not const ref, to
|
| // provide a snapshot as opposed to a link to |accumulated_logs_|.)
|
| - std::string RegisterReceiver(LogReceiver* receiver);
|
| + std::string RegisterReceiver(LogReceiver* receiver) WARN_UNUSED_RESULT;
|
| // Remove |receiver| from the observers list.
|
| void UnregisterReceiver(LogReceiver* receiver);
|
|
|
| private:
|
| - // Observer lists for clients and receivers. The |true| in the template
|
| + // Observer lists for managers and receivers. The |true| in the template
|
| // specialisation means that they will check that all observers were removed
|
| // on destruction.
|
| - base::ObserverList<PasswordManagerClient, true> clients_;
|
| + base::ObserverList<LogManager, true> managers_;
|
| base::ObserverList<LogReceiver, true> receivers_;
|
|
|
| // Logs accumulated since the first receiver was registered.
|
|
|