file_errors.cc 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  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
  3. // found in the LICENSE file.
  4. #include "components/drive/file_errors.h"
  5. #include "base/notreached.h"
  6. namespace drive {
  7. std::string FileErrorToString(FileError error) {
  8. switch (error) {
  9. case FILE_ERROR_OK:
  10. return "FILE_ERROR_OK";
  11. case FILE_ERROR_FAILED:
  12. return "FILE_ERROR_FAILED";
  13. case FILE_ERROR_IN_USE:
  14. return "FILE_ERROR_IN_USE";
  15. case FILE_ERROR_EXISTS:
  16. return "FILE_ERROR_EXISTS";
  17. case FILE_ERROR_NOT_FOUND:
  18. return "FILE_ERROR_NOT_FOUND";
  19. case FILE_ERROR_ACCESS_DENIED:
  20. return "FILE_ERROR_ACCESS_DENIED";
  21. case FILE_ERROR_TOO_MANY_OPENED:
  22. return "FILE_ERROR_TOO_MANY_OPENED";
  23. case FILE_ERROR_NO_MEMORY:
  24. return "FILE_ERROR_NO_MEMORY";
  25. case FILE_ERROR_NO_SERVER_SPACE:
  26. return "FILE_ERROR_NO_SERVER_SPACE";
  27. case FILE_ERROR_NOT_A_DIRECTORY:
  28. return "FILE_ERROR_NOT_A_DIRECTORY";
  29. case FILE_ERROR_INVALID_OPERATION:
  30. return "FILE_ERROR_INVALID_OPERATION";
  31. case FILE_ERROR_SECURITY:
  32. return "FILE_ERROR_SECURITY";
  33. case FILE_ERROR_ABORT:
  34. return "FILE_ERROR_ABORT";
  35. case FILE_ERROR_NOT_A_FILE:
  36. return "FILE_ERROR_NOT_A_FILE";
  37. case FILE_ERROR_NOT_EMPTY:
  38. return "FILE_ERROR_NOT_EMPTY";
  39. case FILE_ERROR_INVALID_URL:
  40. return "FILE_ERROR_INVALID_URL";
  41. case FILE_ERROR_NO_CONNECTION:
  42. return "FILE_ERROR_NO_CONNECTION";
  43. case FILE_ERROR_NO_LOCAL_SPACE:
  44. return "FILE_ERROR_NO_LOCAL_SPACE";
  45. case FILE_ERROR_SERVICE_UNAVAILABLE:
  46. return "FILE_ERROR_SERVICE_UNAVAILABLE";
  47. }
  48. NOTREACHED();
  49. return "";
  50. }
  51. base::File::Error FileErrorToBaseFileError(FileError error) {
  52. switch (error) {
  53. case FILE_ERROR_OK:
  54. return base::File::FILE_OK;
  55. case FILE_ERROR_FAILED:
  56. return base::File::FILE_ERROR_FAILED;
  57. case FILE_ERROR_IN_USE:
  58. return base::File::FILE_ERROR_IN_USE;
  59. case FILE_ERROR_EXISTS:
  60. return base::File::FILE_ERROR_EXISTS;
  61. case FILE_ERROR_NOT_FOUND:
  62. return base::File::FILE_ERROR_NOT_FOUND;
  63. case FILE_ERROR_ACCESS_DENIED:
  64. return base::File::FILE_ERROR_ACCESS_DENIED;
  65. case FILE_ERROR_TOO_MANY_OPENED:
  66. return base::File::FILE_ERROR_TOO_MANY_OPENED;
  67. case FILE_ERROR_NO_MEMORY:
  68. return base::File::FILE_ERROR_NO_MEMORY;
  69. case FILE_ERROR_NO_SERVER_SPACE:
  70. return base::File::FILE_ERROR_NO_SPACE;
  71. case FILE_ERROR_NOT_A_DIRECTORY:
  72. return base::File::FILE_ERROR_NOT_A_DIRECTORY;
  73. case FILE_ERROR_INVALID_OPERATION:
  74. return base::File::FILE_ERROR_INVALID_OPERATION;
  75. case FILE_ERROR_SECURITY:
  76. return base::File::FILE_ERROR_SECURITY;
  77. case FILE_ERROR_ABORT:
  78. return base::File::FILE_ERROR_ABORT;
  79. case FILE_ERROR_NOT_A_FILE:
  80. return base::File::FILE_ERROR_NOT_A_FILE;
  81. case FILE_ERROR_NOT_EMPTY:
  82. return base::File::FILE_ERROR_NOT_EMPTY;
  83. case FILE_ERROR_INVALID_URL:
  84. return base::File::FILE_ERROR_INVALID_URL;
  85. case FILE_ERROR_NO_CONNECTION:
  86. return base::File::FILE_ERROR_FAILED;
  87. case FILE_ERROR_NO_LOCAL_SPACE:
  88. return base::File::FILE_ERROR_FAILED;
  89. case FILE_ERROR_SERVICE_UNAVAILABLE:
  90. return base::File::FILE_ERROR_FAILED;
  91. }
  92. NOTREACHED();
  93. return base::File::FILE_ERROR_FAILED;
  94. }
  95. FileError GDataToFileError(google_apis::ApiErrorCode status) {
  96. switch (status) {
  97. case google_apis::HTTP_SUCCESS:
  98. case google_apis::HTTP_CREATED:
  99. case google_apis::HTTP_NO_CONTENT:
  100. return FILE_ERROR_OK;
  101. case google_apis::HTTP_UNAUTHORIZED:
  102. case google_apis::HTTP_FORBIDDEN:
  103. return FILE_ERROR_ACCESS_DENIED;
  104. case google_apis::HTTP_NOT_FOUND:
  105. case google_apis::HTTP_GONE:
  106. return FILE_ERROR_NOT_FOUND;
  107. case google_apis::HTTP_INTERNAL_SERVER_ERROR:
  108. case google_apis::HTTP_SERVICE_UNAVAILABLE:
  109. return FILE_ERROR_SERVICE_UNAVAILABLE;
  110. case google_apis::HTTP_NOT_IMPLEMENTED:
  111. return FILE_ERROR_INVALID_OPERATION;
  112. case google_apis::CANCELLED:
  113. return FILE_ERROR_ABORT;
  114. case google_apis::NO_CONNECTION:
  115. return FILE_ERROR_NO_CONNECTION;
  116. case google_apis::DRIVE_NO_SPACE:
  117. return FILE_ERROR_NO_SERVER_SPACE;
  118. default:
  119. return FILE_ERROR_FAILED;
  120. }
  121. }
  122. } // namespace drive