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

Side by Side Diff: chrome/browser/extensions/api/preference/preference_api.cc

Issue 11365181: Remove GetExtensionService from Profile. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: replace missing extension_system include Created 8 years 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/extensions/api/preference/preference_api.h" 5 #include "chrome/browser/extensions/api/preference/preference_api.h"
6 6
7 #include <map> 7 #include <map>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/memory/singleton.h" 10 #include "base/memory/singleton.h"
11 #include "base/stl_util.h" 11 #include "base/stl_util.h"
12 #include "base/stringprintf.h" 12 #include "base/stringprintf.h"
13 #include "base/values.h" 13 #include "base/values.h"
14 #include "chrome/browser/extensions/api/preference/preference_api_constants.h" 14 #include "chrome/browser/extensions/api/preference/preference_api_constants.h"
15 #include "chrome/browser/extensions/api/preference/preference_helpers.h" 15 #include "chrome/browser/extensions/api/preference/preference_helpers.h"
16 #include "chrome/browser/extensions/api/proxy/proxy_api.h" 16 #include "chrome/browser/extensions/api/proxy/proxy_api.h"
17 #include "chrome/browser/extensions/extension_prefs.h" 17 #include "chrome/browser/extensions/extension_prefs.h"
18 #include "chrome/browser/extensions/extension_prefs_scope.h" 18 #include "chrome/browser/extensions/extension_prefs_scope.h"
19 #include "chrome/browser/extensions/extension_service.h" 19 #include "chrome/browser/extensions/extension_service.h"
20 #include "chrome/browser/extensions/extension_system.h"
20 #include "chrome/browser/prefs/pref_service.h" 21 #include "chrome/browser/prefs/pref_service.h"
21 #include "chrome/browser/profiles/profile.h" 22 #include "chrome/browser/profiles/profile.h"
22 #include "chrome/common/chrome_notification_types.h" 23 #include "chrome/common/chrome_notification_types.h"
23 #include "chrome/common/extensions/permissions/api_permission.h" 24 #include "chrome/common/extensions/permissions/api_permission.h"
24 #include "chrome/common/pref_names.h" 25 #include "chrome/common/pref_names.h"
25 #include "content/public/browser/notification_details.h" 26 #include "content/public/browser/notification_details.h"
26 #include "content/public/browser/notification_source.h" 27 #include "content/public/browser/notification_source.h"
27 #include "extensions/common/error_utils.h" 28 #include "extensions/common/error_utils.h"
28 29
29 namespace keys = extensions::preference_api_constants; 30 namespace keys = extensions::preference_api_constants;
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after
268 bool rv = PrefMapping::GetInstance()->FindEventForBrowserPref( 269 bool rv = PrefMapping::GetInstance()->FindEventForBrowserPref(
269 browser_pref, &event_name, &permission); 270 browser_pref, &event_name, &permission);
270 DCHECK(rv); 271 DCHECK(rv);
271 272
272 ListValue args; 273 ListValue args;
273 DictionaryValue* dict = new DictionaryValue(); 274 DictionaryValue* dict = new DictionaryValue();
274 args.Append(dict); 275 args.Append(dict);
275 const PrefServiceBase::Preference* pref = 276 const PrefServiceBase::Preference* pref =
276 pref_service->FindPreference(browser_pref.c_str()); 277 pref_service->FindPreference(browser_pref.c_str());
277 CHECK(pref); 278 CHECK(pref);
278 ExtensionService* extension_service = profile_->GetExtensionService(); 279 ExtensionService* extension_service =
280 extensions::ExtensionSystem::Get(profile_)->extension_service();
279 PrefTransformerInterface* transformer = 281 PrefTransformerInterface* transformer =
280 PrefMapping::GetInstance()->FindTransformerForBrowserPref(browser_pref); 282 PrefMapping::GetInstance()->FindTransformerForBrowserPref(browser_pref);
281 Value* transformed_value = 283 Value* transformed_value =
282 transformer->BrowserToExtensionPref(pref->GetValue()); 284 transformer->BrowserToExtensionPref(pref->GetValue());
283 if (!transformed_value) { 285 if (!transformed_value) {
284 LOG(ERROR) << 286 LOG(ERROR) <<
285 ErrorUtils::FormatErrorMessage(kConversionErrorMessage, 287 ErrorUtils::FormatErrorMessage(kConversionErrorMessage,
286 pref->name()); 288 pref->name());
287 return; 289 return;
288 } 290 }
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
365 LOG(ERROR) << 367 LOG(ERROR) <<
366 ErrorUtils::FormatErrorMessage(kConversionErrorMessage, 368 ErrorUtils::FormatErrorMessage(kConversionErrorMessage,
367 pref->name()); 369 pref->name());
368 return false; 370 return false;
369 } 371 }
370 result->Set(keys::kValue, transformed_value); 372 result->Set(keys::kValue, transformed_value);
371 373
372 // Retrieve incognito status. 374 // Retrieve incognito status.
373 if (incognito) { 375 if (incognito) {
374 extensions::ExtensionPrefs* ep = 376 extensions::ExtensionPrefs* ep =
375 profile_->GetExtensionService()->extension_prefs(); 377 extensions::ExtensionSystem::Get(profile_)->extension_service()->
378 extension_prefs();
376 result->SetBoolean(keys::kIncognitoSpecific, 379 result->SetBoolean(keys::kIncognitoSpecific,
377 ep->HasIncognitoPrefValue(browser_pref)); 380 ep->HasIncognitoPrefValue(browser_pref));
378 } 381 }
379 382
380 SetResult(result.release()); 383 SetResult(result.release());
381 return true; 384 return true;
382 } 385 }
383 386
384 SetPreferenceFunction::~SetPreferenceFunction() { } 387 SetPreferenceFunction::~SetPreferenceFunction() { }
385 388
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
425 !profile_->HasOffTheRecordProfile()) { 428 !profile_->HasOffTheRecordProfile()) {
426 error_ = keys::kIncognitoSessionOnlyErrorMessage; 429 error_ = keys::kIncognitoSessionOnlyErrorMessage;
427 return false; 430 return false;
428 } 431 }
429 432
430 // Obtain pref. 433 // Obtain pref.
431 std::string browser_pref; 434 std::string browser_pref;
432 if (!ValidateBrowserPref(pref_key, &browser_pref)) 435 if (!ValidateBrowserPref(pref_key, &browser_pref))
433 return false; 436 return false;
434 extensions::ExtensionPrefs* prefs = 437 extensions::ExtensionPrefs* prefs =
435 profile_->GetExtensionService()->extension_prefs(); 438 extensions::ExtensionSystem::Get(profile_)->extension_service()->
439 extension_prefs();
436 const PrefService::Preference* pref = 440 const PrefService::Preference* pref =
437 prefs->pref_service()->FindPreference(browser_pref.c_str()); 441 prefs->pref_service()->FindPreference(browser_pref.c_str());
438 CHECK(pref); 442 CHECK(pref);
439 443
440 // Validate new value. 444 // Validate new value.
441 EXTENSION_FUNCTION_VALIDATE(value->GetType() == pref->GetType()); 445 EXTENSION_FUNCTION_VALIDATE(value->GetType() == pref->GetType());
442 PrefTransformerInterface* transformer = 446 PrefTransformerInterface* transformer =
443 PrefMapping::GetInstance()->FindTransformerForBrowserPref(browser_pref); 447 PrefMapping::GetInstance()->FindTransformerForBrowserPref(browser_pref);
444 std::string error; 448 std::string error;
445 bool bad_message = false; 449 bool bad_message = false;
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
501 error_ = "Can't modify regular settings from an incognito context."; 505 error_ = "Can't modify regular settings from an incognito context.";
502 return false; 506 return false;
503 } 507 }
504 } 508 }
505 509
506 std::string browser_pref; 510 std::string browser_pref;
507 if (!ValidateBrowserPref(pref_key, &browser_pref)) 511 if (!ValidateBrowserPref(pref_key, &browser_pref))
508 return false; 512 return false;
509 513
510 extensions::ExtensionPrefs* prefs = 514 extensions::ExtensionPrefs* prefs =
511 profile_->GetExtensionService()->extension_prefs(); 515 extensions::ExtensionSystem::Get(profile_)->extension_service()->
516 extension_prefs();
512 prefs->RemoveExtensionControlledPref(extension_id(), browser_pref, scope); 517 prefs->RemoveExtensionControlledPref(extension_id(), browser_pref, scope);
513 return true; 518 return true;
514 } 519 }
515 520
516 } // namespace extensions 521 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698