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

Side by Side Diff: chrome/browser/extensions/api/downloads/downloads_api.cc

Issue 10907151: Extensions Docs Server: Enum values do not show up if enum is a type (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: add back braces Created 8 years, 3 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/downloads/downloads_api.h" 5 #include "chrome/browser/extensions/api/downloads/downloads_api.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cctype> 8 #include <cctype>
9 #include <iterator> 9 #include <iterator>
10 #include <set> 10 #include <set>
(...skipping 408 matching lines...) Expand 10 before | Expand all | Expand 10 after
419 419
420 DownloadQuery query_out; 420 DownloadQuery query_out;
421 421
422 if (query_in.limit.get()) { 422 if (query_in.limit.get()) {
423 if (*query_in.limit.get() < 0) { 423 if (*query_in.limit.get() < 0) {
424 *error = download_extension_errors::kInvalidQueryLimit; 424 *error = download_extension_errors::kInvalidQueryLimit;
425 return; 425 return;
426 } 426 }
427 query_out.Limit(*query_in.limit.get()); 427 query_out.Limit(*query_in.limit.get());
428 } 428 }
429 if (query_in.state.get()) { 429 std::string state_string;
430 DownloadItem::DownloadState state = StateEnumFromString( 430 scoped_ptr<base::Value> state_value(
431 *query_in.state.get()); 431 extensions::api::downloads::CreateEnumValue(query_in.state));
432 if (state_value.get()) {
433 state_value->GetAsString(&state_string);
434 DownloadItem::DownloadState state = StateEnumFromString(state_string);
not at google - send to devlin 2012/09/14 01:44:51 if you generate a ToString as I suggested, this wo
cduvall 2012/09/17 22:07:46 Done.
432 if (state == DownloadItem::MAX_DOWNLOAD_STATE) { 435 if (state == DownloadItem::MAX_DOWNLOAD_STATE) {
433 *error = download_extension_errors::kInvalidStateError; 436 *error = download_extension_errors::kInvalidStateError;
434 return; 437 return;
435 } 438 }
436 query_out.AddFilter(state); 439 query_out.AddFilter(state);
437 } 440 }
438 if (query_in.danger.get()) { 441 std::string danger_string;
439 content::DownloadDangerType danger_type = 442 scoped_ptr<base::Value> danger_value(
440 DangerEnumFromString(*query_in.danger.get()); 443 extensions::api::downloads::CreateEnumValue(query_in.danger));
444 if (danger_value.get()) {
445 danger_value->GetAsString(&danger_string);
446 content::DownloadDangerType danger_type = DangerEnumFromString(
447 danger_string);
not at google - send to devlin 2012/09/14 01:44:51 etc
cduvall 2012/09/17 22:07:46 Done.
441 if (danger_type == content::DOWNLOAD_DANGER_TYPE_MAX) { 448 if (danger_type == content::DOWNLOAD_DANGER_TYPE_MAX) {
442 *error = download_extension_errors::kInvalidDangerTypeError; 449 *error = download_extension_errors::kInvalidDangerTypeError;
443 return; 450 return;
444 } 451 }
445 query_out.AddFilter(danger_type); 452 query_out.AddFilter(danger_type);
446 } 453 }
447 if (query_in.order_by.get()) { 454 if (query_in.order_by.get()) {
448 CompileDownloadQueryOrderBy(*query_in.order_by.get(), error, &query_out); 455 CompileDownloadQueryOrderBy(*query_in.order_by.get(), error, &query_out);
449 if (!error->empty()) 456 if (!error->empty())
450 return; 457 return;
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
565 ++iter) { 572 ++iter) {
566 const HeaderNameValuePair& name_value = **iter; 573 const HeaderNameValuePair& name_value = **iter;
567 if (!net::HttpUtil::IsSafeHeader(name_value.name)) { 574 if (!net::HttpUtil::IsSafeHeader(name_value.name)) {
568 error_ = download_extension_errors::kGenericError; 575 error_ = download_extension_errors::kGenericError;
569 return false; 576 return false;
570 } 577 }
571 download_params->add_request_header(name_value.name, name_value.value); 578 download_params->add_request_header(name_value.name, name_value.value);
572 } 579 }
573 } 580 }
574 581
575 if (options.method.get()) 582 if (options.method != extensions::api::downloads::HTTPMETHOD_NONE) {
576 download_params->set_method(*options.method.get()); 583 std::string method;
584 extensions::api::downloads::CreateEnumValue(options.method)->GetAsString(
585 &method);
586 download_params->set_method(method);
587 }
not at google - send to devlin 2012/09/14 01:44:51 etc
cduvall 2012/09/17 22:07:46 Done.
577 if (options.body.get()) 588 if (options.body.get())
578 download_params->set_post_body(*options.body.get()); 589 download_params->set_post_body(*options.body);
benjhayden 2012/09/14 13:17:48 Why remove the .get()? I think it's more explicit
cduvall 2012/09/17 22:07:46 Done.
579 download_params->set_callback(base::Bind( 590 download_params->set_callback(base::Bind(
580 &DownloadsDownloadFunction::OnStarted, this)); 591 &DownloadsDownloadFunction::OnStarted, this));
581 // Prevent login prompts for 401/407 responses. 592 // Prevent login prompts for 401/407 responses.
582 download_params->set_load_flags(net::LOAD_DO_NOT_PROMPT_FOR_LOGIN); 593 download_params->set_load_flags(net::LOAD_DO_NOT_PROMPT_FOR_LOGIN);
583 594
584 DownloadManager* manager = BrowserContext::GetDownloadManager( 595 DownloadManager* manager = BrowserContext::GetDownloadManager(
585 current_profile); 596 current_profile);
586 manager->DownloadUrl(download_params.Pass()); 597 manager->DownloadUrl(download_params.Pass());
587 RecordApiFunctions(DOWNLOADS_FUNCTION_DOWNLOAD); 598 RecordApiFunctions(DOWNLOADS_FUNCTION_DOWNLOAD);
588 return true; 599 return true;
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after
986 if (profile_->HasOffTheRecordProfile() && 997 if (profile_->HasOffTheRecordProfile() &&
987 !profile_->IsOffTheRecord()) { 998 !profile_->IsOffTheRecord()) {
988 DispatchEventInternal( 999 DispatchEventInternal(
989 profile_->GetOffTheRecordProfile(), 1000 profile_->GetOffTheRecordProfile(),
990 event_name, 1001 event_name,
991 json_args, 1002 json_args,
992 scoped_ptr<base::ListValue>(args->DeepCopy())); 1003 scoped_ptr<base::ListValue>(args->DeepCopy()));
993 } 1004 }
994 DispatchEventInternal(profile_, event_name, json_args, args.Pass()); 1005 DispatchEventInternal(profile_, event_name, json_args, args.Pass());
995 } 1006 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698