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

Side by Side Diff: chrome/common/localized_error.cc

Issue 13270005: Display DNS probe results. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 7 years, 8 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
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/common/localized_error.h" 5 #include "chrome/common/localized_error.h"
6 6
7 #include "base/i18n/rtl.h" 7 #include "base/i18n/rtl.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/string16.h" 9 #include "base/string16.h"
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
11 #include "base/utf_string_conversions.h" 11 #include "base/utf_string_conversions.h"
12 #include "base/values.h" 12 #include "base/values.h"
13 #include "chrome/common/extensions/api/icons/icons_handler.h" 13 #include "chrome/common/extensions/api/icons/icons_handler.h"
14 #include "chrome/common/extensions/extension_constants.h" 14 #include "chrome/common/extensions/extension_constants.h"
15 #include "chrome/common/extensions/extension_icon_set.h" 15 #include "chrome/common/extensions/extension_icon_set.h"
16 #include "chrome/common/extensions/extension_set.h" 16 #include "chrome/common/extensions/extension_set.h"
17 #include "chrome/common/net/net_error_info.h"
17 #include "googleurl/src/gurl.h" 18 #include "googleurl/src/gurl.h"
18 #include "grit/chromium_strings.h" 19 #include "grit/chromium_strings.h"
19 #include "grit/generated_resources.h" 20 #include "grit/generated_resources.h"
20 #include "net/base/escape.h" 21 #include "net/base/escape.h"
21 #include "net/base/net_errors.h" 22 #include "net/base/net_errors.h"
22 #include "third_party/WebKit/Source/Platform/chromium/public/WebURLError.h" 23 #include "third_party/WebKit/Source/Platform/chromium/public/WebURLError.h"
23 #include "ui/base/l10n/l10n_util.h" 24 #include "ui/base/l10n/l10n_util.h"
24 #include "webkit/glue/webkit_glue.h" 25 #include "webkit/glue/webkit_glue.h"
25 26
26 #if defined(OS_WIN) 27 #if defined(OS_WIN)
(...skipping 316 matching lines...) Expand 10 before | Expand all | Expand 10 after
343 }, 344 },
344 {505, 345 {505,
345 IDS_ERRORPAGES_TITLE_LOAD_FAILED, 346 IDS_ERRORPAGES_TITLE_LOAD_FAILED,
346 IDS_ERRORPAGES_HEADING_HTTP_SERVER_ERROR, 347 IDS_ERRORPAGES_HEADING_HTTP_SERVER_ERROR,
347 IDS_ERRORPAGES_SUMMARY_WEBSITE_CANNOT_HANDLE, 348 IDS_ERRORPAGES_SUMMARY_WEBSITE_CANNOT_HANDLE,
348 IDS_ERRORPAGES_DETAILS_HTTP_VERSION_NOT_SUPPORTED, 349 IDS_ERRORPAGES_DETAILS_HTTP_VERSION_NOT_SUPPORTED,
349 SUGGEST_NONE, 350 SUGGEST_NONE,
350 }, 351 },
351 }; 352 };
352 353
354 const LocalizedErrorMap dns_probe_error_options[] = {
355 {chrome_common_net::DNS_PROBE_ERR_POSSIBLE,
356 IDS_ERRORPAGES_TITLE_NOT_AVAILABLE,
357 IDS_ERRORPAGES_HEADING_NOT_AVAILABLE,
358 IDS_ERRORPAGES_SUMMARY_DNS_PROBE_RUNNING,
359 IDS_ERRORPAGES_DETAILS_DNS_PROBE_RUNNING,
360 SUGGEST_NONE,
361 },
362 {chrome_common_net::DNS_PROBE_ERR_RUNNING,
363 IDS_ERRORPAGES_TITLE_NOT_AVAILABLE,
364 IDS_ERRORPAGES_HEADING_NOT_AVAILABLE,
365 IDS_ERRORPAGES_SUMMARY_DNS_PROBE_RUNNING,
366 IDS_ERRORPAGES_DETAILS_DNS_PROBE_RUNNING,
367 SUGGEST_NONE,
368 },
369 {chrome_common_net::DNS_PROBE_ERR_FINISHED +
370 chrome_common_net::DNS_PROBE_UNKNOWN,
371 IDS_ERRORPAGES_TITLE_NOT_AVAILABLE,
372 IDS_ERRORPAGES_HEADING_NOT_AVAILABLE,
373 IDS_ERRORPAGES_SUMMARY_NAME_NOT_RESOLVED,
374 IDS_ERRORPAGES_DETAILS_NAME_NOT_RESOLVED,
375 SUGGEST_RELOAD | SUGGEST_CHECK_CONNECTION | SUGGEST_DNS_CONFIG |
376 SUGGEST_FIREWALL_CONFIG | SUGGEST_PROXY_CONFIG,
377 },
378 {chrome_common_net::DNS_PROBE_ERR_FINISHED +
379 chrome_common_net::DNS_PROBE_NO_INTERNET,
380 IDS_ERRORPAGES_TITLE_NOT_AVAILABLE,
381 IDS_ERRORPAGES_HEADING_NOT_AVAILABLE,
382 IDS_ERRORPAGES_SUMMARY_INTERNET_DISCONNECTED,
383 IDS_ERRORPAGES_DETAILS_INTERNET_DISCONNECTED,
384 SUGGEST_RELOAD | SUGGEST_CHECK_CONNECTION | SUGGEST_FIREWALL_CONFIG,
385 },
386 {chrome_common_net::DNS_PROBE_ERR_FINISHED +
387 chrome_common_net::DNS_PROBE_BAD_CONFIG,
388 IDS_ERRORPAGES_TITLE_NOT_AVAILABLE,
389 IDS_ERRORPAGES_HEADING_NOT_AVAILABLE,
390 IDS_ERRORPAGES_SUMMARY_NAME_NOT_RESOLVED,
391 IDS_ERRORPAGES_DETAILS_NAME_NOT_RESOLVED,
392 SUGGEST_RELOAD | SUGGEST_DNS_CONFIG | SUGGEST_FIREWALL_CONFIG,
393 },
394 {chrome_common_net::DNS_PROBE_ERR_FINISHED +
395 chrome_common_net::DNS_PROBE_NXDOMAIN,
396 IDS_ERRORPAGES_TITLE_NOT_AVAILABLE,
397 IDS_ERRORPAGES_HEADING_NOT_AVAILABLE,
398 IDS_ERRORPAGES_SUMMARY_NAME_NOT_RESOLVED,
399 IDS_ERRORPAGES_DETAILS_NAME_NOT_RESOLVED,
400 SUGGEST_RELOAD | SUGGEST_HOSTNAME,
401 },
402 };
403
353 const char* HttpErrorToString(int status_code) { 404 const char* HttpErrorToString(int status_code) {
354 switch (status_code) { 405 switch (status_code) {
355 case 403: 406 case 403:
356 return "Forbidden"; 407 return "Forbidden";
357 case 410: 408 case 410:
358 return "Gone"; 409 return "Gone";
359 case 500: 410 case 500:
360 return "Internal Server Error"; 411 return "Internal Server Error";
361 case 501: 412 case 501:
362 return "Not Implemented"; 413 return "Not Implemented";
(...skipping 16 matching lines...) Expand all
379 int error_page_template; 430 int error_page_template;
380 const char* error_string; 431 const char* error_string;
381 if (error_domain == net::kErrorDomain) { 432 if (error_domain == net::kErrorDomain) {
382 error_page_template = IDS_ERRORPAGES_DETAILS_TEMPLATE; 433 error_page_template = IDS_ERRORPAGES_DETAILS_TEMPLATE;
383 error_string = net::ErrorToString(error_code); 434 error_string = net::ErrorToString(error_code);
384 DCHECK(error_code < 0); // Net error codes are negative. 435 DCHECK(error_code < 0); // Net error codes are negative.
385 error_code = -error_code; 436 error_code = -error_code;
386 } else if (error_domain == LocalizedError::kHttpErrorDomain) { 437 } else if (error_domain == LocalizedError::kHttpErrorDomain) {
387 error_page_template = IDS_ERRORPAGES_HTTP_DETAILS_TEMPLATE; 438 error_page_template = IDS_ERRORPAGES_HTTP_DETAILS_TEMPLATE;
388 error_string = HttpErrorToString(error_code); 439 error_string = HttpErrorToString(error_code);
440 } else if (error_domain == chrome_common_net::kDnsProbeErrorDomain) {
441 error_page_template = IDS_ERRORPAGES_DETAILS_TEMPLATE;
442 error_string = chrome_common_net::DnsProbeErrorToString(error_code);
389 } else { 443 } else {
390 NOTREACHED(); 444 NOTREACHED();
391 return string16(); 445 return string16();
392 } 446 }
393 return l10n_util::GetStringFUTF16( 447 return l10n_util::GetStringFUTF16(
394 error_page_template, 448 error_page_template,
395 base::IntToString16(error_code), 449 base::IntToString16(error_code),
396 ASCIIToUTF16(error_string), 450 ASCIIToUTF16(error_string),
397 details); 451 details);
398 } 452 }
(...skipping 11 matching lines...) Expand all
410 const LocalizedErrorMap* LookupErrorMap(const std::string& error_domain, 464 const LocalizedErrorMap* LookupErrorMap(const std::string& error_domain,
411 int error_code) { 465 int error_code) {
412 if (error_domain == net::kErrorDomain) { 466 if (error_domain == net::kErrorDomain) {
413 return FindErrorMapInArray(net_error_options, 467 return FindErrorMapInArray(net_error_options,
414 arraysize(net_error_options), 468 arraysize(net_error_options),
415 error_code); 469 error_code);
416 } else if (error_domain == LocalizedError::kHttpErrorDomain) { 470 } else if (error_domain == LocalizedError::kHttpErrorDomain) {
417 return FindErrorMapInArray(http_error_options, 471 return FindErrorMapInArray(http_error_options,
418 arraysize(http_error_options), 472 arraysize(http_error_options),
419 error_code); 473 error_code);
474 } else if (error_domain == chrome_common_net::kDnsProbeErrorDomain) {
475 return FindErrorMapInArray(dns_probe_error_options,
476 arraysize(dns_probe_error_options),
477 error_code);
420 } else { 478 } else {
421 NOTREACHED(); 479 NOTREACHED();
422 return NULL; 480 return NULL;
423 } 481 }
424 } 482 }
425 483
426 bool LocaleIsRTL() { 484 bool LocaleIsRTL() {
427 #if defined(TOOLKIT_GTK) 485 #if defined(TOOLKIT_GTK)
428 // base::i18n::IsRTL() uses the GTK text direction, which doesn't work within 486 // base::i18n::IsRTL() uses the GTK text direction, which doesn't work within
429 // the renderer sandbox. 487 // the renderer sandbox.
(...skipping 326 matching lines...) Expand 10 before | Expand all | Expand 10 after
756 #if defined(OS_CHROMEOS) 814 #if defined(OS_CHROMEOS)
757 GURL learn_more_url(kAppWarningLearnMoreUrl); 815 GURL learn_more_url(kAppWarningLearnMoreUrl);
758 DictionaryValue* suggest_learn_more = new DictionaryValue(); 816 DictionaryValue* suggest_learn_more = new DictionaryValue();
759 suggest_learn_more->SetString("msg", 817 suggest_learn_more->SetString("msg",
760 l10n_util::GetStringUTF16( 818 l10n_util::GetStringUTF16(
761 IDS_ERRORPAGES_SUGGESTION_LEARNMORE)); 819 IDS_ERRORPAGES_SUGGESTION_LEARNMORE));
762 suggest_learn_more->SetString("learnMoreUrl", learn_more_url.spec()); 820 suggest_learn_more->SetString("learnMoreUrl", learn_more_url.spec());
763 error_strings->Set("suggestionsLearnMore", suggest_learn_more); 821 error_strings->Set("suggestionsLearnMore", suggest_learn_more);
764 #endif // defined(OS_CHROMEOS) 822 #endif // defined(OS_CHROMEOS)
765 } 823 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698