1 // Copyright 2015 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.
4 
5 #include "chrome/browser/prefs/pref_service_syncable_util.h"
6 
7 #include <utility>
8 
9 #include "chrome/browser/prefs/pref_service_incognito_whitelist.h"
10 #include "chrome/browser/profiles/profile.h"
11 #include "components/sync_preferences/pref_service_syncable.h"
12 
13 
PrefServiceSyncableFromProfile(Profile * profile)14 sync_preferences::PrefServiceSyncable* PrefServiceSyncableFromProfile(
15     Profile* profile) {
16   return static_cast<sync_preferences::PrefServiceSyncable*>(
17       profile->GetPrefs());
18 }
19 
20 std::unique_ptr<sync_preferences::PrefServiceSyncable>
CreateIncognitoPrefServiceSyncable(sync_preferences::PrefServiceSyncable * pref_service,PrefStore * incognito_extension_pref_store)21 CreateIncognitoPrefServiceSyncable(
22     sync_preferences::PrefServiceSyncable* pref_service,
23     PrefStore* incognito_extension_pref_store) {
24   return pref_service->CreateIncognitoPrefService(
25       incognito_extension_pref_store,
26       prefs::GetIncognitoPersistentPrefsWhitelist());
27 }
28