| Index: chrome/browser/protector/protector_service.h
|
| diff --git a/chrome/browser/protector/protector_service.h b/chrome/browser/protector/protector_service.h
|
| index efb78430cd7993f293bab0a956804f1ffb8e2f05..120ed68b0939bb9e06f8db38a60ad232e429483a 100644
|
| --- a/chrome/browser/protector/protector_service.h
|
| +++ b/chrome/browser/protector/protector_service.h
|
| @@ -11,6 +11,7 @@
|
| #include "base/basictypes.h"
|
| #include "base/compiler_specific.h"
|
| #include "base/memory/linked_ptr.h"
|
| +#include "base/memory/scoped_ptr.h"
|
| #include "base/message_loop_helpers.h"
|
| #include "chrome/browser/profiles/profile_keyed_service.h"
|
| #include "chrome/browser/protector/base_setting_change.h"
|
| @@ -23,6 +24,7 @@ class TemplateURLService;
|
|
|
| namespace protector {
|
|
|
| +class ProtectedPrefsWatcher;
|
| class SettingsChangeGlobalError;
|
|
|
| // Presents a SettingChange to user and handles possible user actions.
|
| @@ -63,9 +65,11 @@ class ProtectorService : public ProfileKeyedService,
|
| Profile* profile() { return profile_; }
|
|
|
| private:
|
| + friend class ProtectedPrefsWatcherTest;
|
| friend class ProtectorServiceTest;
|
|
|
| - // Pair of error and corresponding change instance.
|
| + // Pair of error and corresponding change instance. linked_ptr is used because
|
| + // Item instances are stored in a std::vector and must be copyable.
|
| struct Item {
|
| Item();
|
| ~Item();
|
| @@ -113,6 +117,9 @@ class ProtectorService : public ProfileKeyedService,
|
| // Profile which settings we are protecting.
|
| Profile* profile_;
|
|
|
| + // Observes changes to protected prefs and updates the backup.
|
| + scoped_ptr<ProtectedPrefsWatcher> prefs_watcher_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ProtectorService);
|
| };
|
|
|
|
|