Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(238)

Side by Side Diff: chrome/browser/prefs/pref_model_associator.cc

Issue 8568019: Introduce per-tab preferences service. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Single PrefService constructor Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/prefs/pref_model_associator.h" 5 #include "chrome/browser/prefs/pref_model_associator.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/json/json_reader.h" 8 #include "base/json/json_reader.h"
9 #include "base/json/json_value_serializer.h" 9 #include "base/json/json_value_serializer.h"
10 #include "base/location.h" 10 #include "base/location.h"
11 #include "base/logging.h" 11 #include "base/logging.h"
12 #include "base/utf_string_conversions.h" 12 #include "base/utf_string_conversions.h"
13 #include "base/values.h" 13 #include "base/values.h"
14 #include "chrome/browser/sync/api/sync_change.h" 14 #include "chrome/browser/sync/api/sync_change.h"
15 #include "chrome/browser/sync/protocol/preference_specifics.pb.h" 15 #include "chrome/browser/sync/protocol/preference_specifics.pb.h"
16 #include "chrome/common/chrome_notification_types.h" 16 #include "chrome/common/chrome_notification_types.h"
17 #include "chrome/common/pref_names.h" 17 #include "chrome/common/pref_names.h"
18 18
19 using syncable::PREFERENCES; 19 using syncable::PREFERENCES;
20 20
21 PrefModelAssociator::PrefModelAssociator() 21 PrefModelAssociator::PrefModelAssociator()
22 : models_associated_(false), 22 : models_associated_(false),
23 processing_syncer_changes_(false), 23 processing_syncer_changes_(false),
24 pref_service_(NULL), 24 pref_service_(NULL),
25 sync_processor_(NULL) { 25 sync_processor_(NULL) {
26 }
27
28 PrefModelAssociator::PrefModelAssociator(
29 PrefService* pref_service)
30 : models_associated_(false),
31 processing_syncer_changes_(false),
32 pref_service_(pref_service),
33 sync_processor_(NULL) {
34 DCHECK(CalledOnValidThread()); 26 DCHECK(CalledOnValidThread());
35 } 27 }
36 28
37 PrefModelAssociator::~PrefModelAssociator() { 29 PrefModelAssociator::~PrefModelAssociator() {
38 DCHECK(CalledOnValidThread()); 30 DCHECK(CalledOnValidThread());
39 sync_processor_ = NULL; 31 sync_processor_ = NULL;
40 pref_service_ = NULL; 32 pref_service_ = NULL;
41 } 33 }
42 34
43 void PrefModelAssociator::InitPrefAndAssociate( 35 void PrefModelAssociator::InitPrefAndAssociate(
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 return; 415 return;
424 } 416 }
425 changes.push_back(SyncChange(SyncChange::ACTION_UPDATE, sync_data)); 417 changes.push_back(SyncChange(SyncChange::ACTION_UPDATE, sync_data));
426 } 418 }
427 419
428 SyncError error = 420 SyncError error =
429 sync_processor_->ProcessSyncChanges(FROM_HERE, changes); 421 sync_processor_->ProcessSyncChanges(FROM_HERE, changes);
430 if (error.IsSet()) 422 if (error.IsSet())
431 StopSyncing(PREFERENCES); 423 StopSyncing(PREFERENCES);
432 } 424 }
425
426 void PrefModelAssociator::SetPrefService(PrefService* pref_service) {
427 DCHECK(pref_service_ == NULL);
428 pref_service = pref_service_;
429 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698