error.cc 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. // Copyright 2017 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. #include "components/error_page/common/error.h"
  5. #include "net/base/net_errors.h"
  6. namespace error_page {
  7. const char Error::kNetErrorDomain[] = "net";
  8. const char Error::kHttpErrorDomain[] = "http";
  9. const char Error::kDnsProbeErrorDomain[] = "dnsprobe";
  10. Error Error::NetError(const GURL& url,
  11. int reason,
  12. int extended_reason,
  13. net::ResolveErrorInfo resolve_error_info,
  14. bool stale_copy_in_cache) {
  15. return Error(url, kNetErrorDomain, reason, extended_reason,
  16. std::move(resolve_error_info), stale_copy_in_cache);
  17. }
  18. Error Error::HttpError(const GURL& url, int http_status_code) {
  19. return Error(url, kHttpErrorDomain, http_status_code, 0,
  20. net::ResolveErrorInfo(net::OK), false);
  21. }
  22. Error Error::DnsProbeError(const GURL& url,
  23. int status,
  24. bool stale_copy_in_cache) {
  25. return Error(url, kDnsProbeErrorDomain, status, 0,
  26. net::ResolveErrorInfo(net::OK), stale_copy_in_cache);
  27. }
  28. Error::~Error() = default;
  29. Error::Error(const Error&) = default;
  30. Error& Error::operator=(const Error&) = default;
  31. Error::Error(const GURL& url,
  32. const std::string& domain,
  33. int reason,
  34. int extended_reason,
  35. net::ResolveErrorInfo resolve_error_info,
  36. bool stale_copy_in_cache)
  37. : url_(url),
  38. domain_(domain),
  39. reason_(reason),
  40. extended_reason_(extended_reason),
  41. resolve_error_info_(std::move(resolve_error_info)),
  42. stale_copy_in_cache_(stale_copy_in_cache) {}
  43. } // namespace error_page