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

Side by Side Diff: chrome/browser/extensions/api/management/management_api.cc

Issue 16915006: Convert most of extensions and some other random stuff to using the base namespace for Values. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 6 months 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) 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/management/management_api.h" 5 #include "chrome/browser/extensions/api/management/management_api.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after
308 IPC_BEGIN_MESSAGE_MAP(SafeManifestJSONParser, message) 308 IPC_BEGIN_MESSAGE_MAP(SafeManifestJSONParser, message)
309 IPC_MESSAGE_HANDLER(ChromeUtilityHostMsg_ParseJSON_Succeeded, 309 IPC_MESSAGE_HANDLER(ChromeUtilityHostMsg_ParseJSON_Succeeded,
310 OnJSONParseSucceeded) 310 OnJSONParseSucceeded)
311 IPC_MESSAGE_HANDLER(ChromeUtilityHostMsg_ParseJSON_Failed, 311 IPC_MESSAGE_HANDLER(ChromeUtilityHostMsg_ParseJSON_Failed,
312 OnJSONParseFailed) 312 OnJSONParseFailed)
313 IPC_MESSAGE_UNHANDLED(handled = false) 313 IPC_MESSAGE_UNHANDLED(handled = false)
314 IPC_END_MESSAGE_MAP() 314 IPC_END_MESSAGE_MAP()
315 return handled; 315 return handled;
316 } 316 }
317 317
318 void OnJSONParseSucceeded(const ListValue& wrapper) { 318 void OnJSONParseSucceeded(const base::ListValue& wrapper) {
319 CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO)); 319 CHECK(BrowserThread::CurrentlyOn(BrowserThread::IO));
320 const Value* value = NULL; 320 const Value* value = NULL;
321 CHECK(wrapper.Get(0, &value)); 321 CHECK(wrapper.Get(0, &value));
322 if (value->IsType(Value::TYPE_DICTIONARY)) 322 if (value->IsType(Value::TYPE_DICTIONARY))
323 parsed_manifest_.reset( 323 parsed_manifest_.reset(
324 static_cast<const DictionaryValue*>(value)->DeepCopy()); 324 static_cast<const base::DictionaryValue*>(value)->DeepCopy());
325 else 325 else
326 error_ = keys::kManifestParseError; 326 error_ = keys::kManifestParseError;
327 327
328 BrowserThread::PostTask( 328 BrowserThread::PostTask(
329 BrowserThread::UI, 329 BrowserThread::UI,
330 FROM_HERE, 330 FROM_HERE,
331 base::Bind(&SafeManifestJSONParser::ReportResultFromUIThread, this)); 331 base::Bind(&SafeManifestJSONParser::ReportResultFromUIThread, this));
332 } 332 }
333 333
334 void OnJSONParseFailed(const std::string& error) { 334 void OnJSONParseFailed(const std::string& error) {
(...skipping 16 matching lines...) Expand all
351 private: 351 private:
352 virtual ~SafeManifestJSONParser() {} 352 virtual ~SafeManifestJSONParser() {}
353 353
354 // The client who we'll report results back to. 354 // The client who we'll report results back to.
355 ManagementGetPermissionWarningsByManifestFunction* client_; 355 ManagementGetPermissionWarningsByManifestFunction* client_;
356 356
357 // Data to parse. 357 // Data to parse.
358 std::string manifest_; 358 std::string manifest_;
359 359
360 // Results of parsing. 360 // Results of parsing.
361 scoped_ptr<DictionaryValue> parsed_manifest_; 361 scoped_ptr<base::DictionaryValue> parsed_manifest_;
362 362
363 std::string error_; 363 std::string error_;
364 }; 364 };
365 365
366 } // namespace 366 } // namespace
367 367
368 bool ManagementGetPermissionWarningsByManifestFunction::RunImpl() { 368 bool ManagementGetPermissionWarningsByManifestFunction::RunImpl() {
369 scoped_ptr<management::GetPermissionWarningsByManifest::Params> params( 369 scoped_ptr<management::GetPermissionWarningsByManifest::Params> params(
370 management::GetPermissionWarningsByManifest::Params::Create(*args_)); 370 management::GetPermissionWarningsByManifest::Params::Create(*args_));
371 EXTENSION_FUNCTION_VALIDATE(params.get()); 371 EXTENSION_FUNCTION_VALIDATE(params.get());
372 372
373 scoped_refptr<SafeManifestJSONParser> parser = 373 scoped_refptr<SafeManifestJSONParser> parser =
374 new SafeManifestJSONParser(this, params->manifest_str); 374 new SafeManifestJSONParser(this, params->manifest_str);
375 parser->Start(); 375 parser->Start();
376 376
377 // Matched with a Release() in OnParseSuccess/Failure(). 377 // Matched with a Release() in OnParseSuccess/Failure().
378 AddRef(); 378 AddRef();
379 379
380 // Response is sent async in OnParseSuccess/Failure(). 380 // Response is sent async in OnParseSuccess/Failure().
381 return true; 381 return true;
382 } 382 }
383 383
384 void ManagementGetPermissionWarningsByManifestFunction::OnParseSuccess( 384 void ManagementGetPermissionWarningsByManifestFunction::OnParseSuccess(
385 DictionaryValue* parsed_manifest) { 385 base::DictionaryValue* parsed_manifest) {
386 CHECK(parsed_manifest); 386 CHECK(parsed_manifest);
387 387
388 scoped_refptr<Extension> extension = Extension::Create( 388 scoped_refptr<Extension> extension = Extension::Create(
389 base::FilePath(), Manifest::INVALID_LOCATION, *parsed_manifest, 389 base::FilePath(), Manifest::INVALID_LOCATION, *parsed_manifest,
390 Extension::NO_FLAGS, &error_); 390 Extension::NO_FLAGS, &error_);
391 if (!extension.get()) { 391 if (!extension.get()) {
392 OnParseFailure(keys::kExtensionCreateError); 392 OnParseFailure(keys::kExtensionCreateError);
393 return; 393 return;
394 } 394 }
395 395
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
669 extension = 669 extension =
670 content::Details<const UnloadedExtensionInfo>(details)->extension; 670 content::Details<const UnloadedExtensionInfo>(details)->extension;
671 break; 671 break;
672 default: 672 default:
673 NOTREACHED(); 673 NOTREACHED();
674 return; 674 return;
675 } 675 }
676 DCHECK(event_name); 676 DCHECK(event_name);
677 DCHECK(extension); 677 DCHECK(extension);
678 678
679 scoped_ptr<ListValue> args(new ListValue()); 679 scoped_ptr<base::ListValue> args(new base::ListValue());
680 if (event_name == events::kOnExtensionUninstalled) { 680 if (event_name == events::kOnExtensionUninstalled) {
681 args->Append(Value::CreateStringValue(extension->id())); 681 args->Append(Value::CreateStringValue(extension->id()));
682 } else { 682 } else {
683 scoped_ptr<management::ExtensionInfo> info = CreateExtensionInfo( 683 scoped_ptr<management::ExtensionInfo> info = CreateExtensionInfo(
684 *extension, ExtensionSystem::Get(profile)); 684 *extension, ExtensionSystem::Get(profile));
685 args->Append(info->ToValue().release()); 685 args->Append(info->ToValue().release());
686 } 686 }
687 687
688 scoped_ptr<Event> event(new Event(event_name, args.Pass())); 688 scoped_ptr<Event> event(new Event(event_name, args.Pass()));
689 ExtensionSystem::Get(profile)->event_router()->BroadcastEvent(event.Pass()); 689 ExtensionSystem::Get(profile)->event_router()->BroadcastEvent(event.Pass());
(...skipping 25 matching lines...) Expand all
715 ProfileKeyedAPIFactory<ManagementAPI>* ManagementAPI::GetFactoryInstance() { 715 ProfileKeyedAPIFactory<ManagementAPI>* ManagementAPI::GetFactoryInstance() {
716 return &g_factory.Get(); 716 return &g_factory.Get();
717 } 717 }
718 718
719 void ManagementAPI::OnListenerAdded(const EventListenerInfo& details) { 719 void ManagementAPI::OnListenerAdded(const EventListenerInfo& details) {
720 management_event_router_.reset(new ManagementEventRouter(profile_)); 720 management_event_router_.reset(new ManagementEventRouter(profile_));
721 ExtensionSystem::Get(profile_)->event_router()->UnregisterObserver(this); 721 ExtensionSystem::Get(profile_)->event_router()->UnregisterObserver(this);
722 } 722 }
723 723
724 } // namespace extensions 724 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698