1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "base/prefs/scoped_user_pref_update.h"
7 #include "base/logging.h"
8 #include "base/prefs/pref_notifier.h"
9 #include "base/prefs/pref_service.h"
13 ScopedUserPrefUpdateBase::ScopedUserPrefUpdateBase(PrefService* service,
18 DCHECK(service_->CalledOnValidThread());
21 ScopedUserPrefUpdateBase::~ScopedUserPrefUpdateBase() {
25 base::Value* ScopedUserPrefUpdateBase::GetValueOfType(base::Value::Type type) {
26 DCHECK(CalledOnValidThread());
28 value_ = service_->GetMutableUserPref(path_.c_str(), type);
32 void ScopedUserPrefUpdateBase::Notify() {
34 service_->ReportUserPrefChanged(path_);