CCError.m 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198
  1. //
  2. // CCError.m
  3. // Nextcloud iOS
  4. //
  5. // Created by Marino Faggiana on 04/02/16.
  6. // Copyright (c) 2017 Marino Faggiana. All rights reserved.
  7. //
  8. // Author Marino Faggiana <marino.faggiana@nextcloud.com>
  9. //
  10. // This program is free software: you can redistribute it and/or modify
  11. // it under the terms of the GNU General Public License as published by
  12. // the Free Software Foundation, either version 3 of the License, or
  13. // (at your option) any later version.
  14. //
  15. // This program is distributed in the hope that it will be useful,
  16. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  17. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  18. // GNU General Public License for more details.
  19. //
  20. // You should have received a copy of the GNU General Public License
  21. // along with this program. If not, see <http://www.gnu.org/licenses/>.
  22. //
  23. #import "CCError.h"
  24. @implementation CCError
  25. + (NSString *)manageErrorKCF:(NSInteger)errorCode withNumberError:(BOOL)withNumberError
  26. {
  27. switch (errorCode) {
  28. case kCFURLErrorCancelled: // -999
  29. return NSLocalizedString(@"_cancelled_by_user", nil);
  30. break;
  31. case kCFURLErrorTimedOut: // -1001
  32. return NSLocalizedString(@"_time_out_", nil);
  33. break;
  34. case kCFURLErrorCannotConnectToHost: // -1004
  35. return NSLocalizedString(@"_server_down_", nil);
  36. break;
  37. case kCFURLErrorNetworkConnectionLost: // -1005
  38. return NSLocalizedString(@"_not_possible_connect_to_server_", nil);
  39. break;
  40. case kCFURLErrorNotConnectedToInternet: // -1009
  41. return NSLocalizedString(@"_not_connected_internet_", nil);
  42. break;
  43. case kCFURLErrorBadServerResponse: // -1011
  44. return NSLocalizedString(@"_error_", nil);
  45. break;
  46. case kCFURLErrorUserCancelledAuthentication: // -1012
  47. return NSLocalizedString(@"_not_possible_connect_to_server_", nil);
  48. break;
  49. case kCFURLErrorUserAuthenticationRequired: // -1013
  50. return NSLocalizedString(@"_user_authentication_required_", nil);
  51. break;
  52. case kCFURLErrorSecureConnectionFailed: // -1200
  53. return NSLocalizedString(@"_ssl_connection_error_", nil);
  54. break;
  55. case kCFURLErrorServerCertificateUntrusted: // -1202
  56. return NSLocalizedString(@"_ssl_certificate_untrusted_", nil);
  57. break;
  58. case 101: // 101
  59. return NSLocalizedString(@"_forbidden_characters_from_server_", nil);
  60. break;
  61. case 400: // 400
  62. return NSLocalizedString(@"_bad_request_", nil);
  63. break;
  64. case 403: // 403
  65. return NSLocalizedString(@"_error_not_permission_", nil);
  66. break;
  67. case 404: // 404 Not Found. When for example we try to access a path that now not exist
  68. return NSLocalizedString(@"_error_path_", nil);
  69. break;
  70. case 423: // 423 WebDAV Locked : The resource that is being accessed is locked
  71. return NSLocalizedString(@"_webdav_locked_", nil);
  72. break;
  73. case 500:
  74. return NSLocalizedString(@"_internal_server_", nil);
  75. break;
  76. case 503:
  77. return NSLocalizedString(@"_server_error_retry_", nil);
  78. break;
  79. case 507:
  80. return NSLocalizedString(@"_user_over_quota_", nil);
  81. break;
  82. default:
  83. if (withNumberError) return [NSString stringWithFormat:@"%ld", (long)errorCode];
  84. else return [NSString stringWithFormat:@"Error code %ld", (long)errorCode];;
  85. break;
  86. }
  87. }
  88. + (NSString *)manageErrorDB:(NSInteger)errorCode
  89. {
  90. //DDLogError(@"Error code : %ld", (long)errorCode);
  91. NSString *errorKCF = [self manageErrorKCF:errorCode withNumberError:NO];
  92. if ([errorKCF length] > 0) return errorKCF;
  93. switch (errorCode) {
  94. case 304:
  95. return NSLocalizedString(@"_folder_contents_nochanged_", nil);
  96. break;
  97. case 400:
  98. return NSLocalizedString(@"_error_",nil);
  99. break;
  100. case 401:
  101. return NSLocalizedString(@"_reauthenticate_user_", nil);
  102. break;
  103. case 403:
  104. return NSLocalizedString(@"_file_already_exists_", nil);
  105. break;
  106. case 404:
  107. return NSLocalizedString(@"_file_folder_not_exists_", nil);
  108. break;
  109. case 405:
  110. return NSLocalizedString(@"_method_not_expected_", nil);
  111. break;
  112. case 406:
  113. return NSLocalizedString(@"_too_many_files_", nil);
  114. break;
  115. case 409:
  116. return NSLocalizedString(@"_file_already_exists_", nil);
  117. break;
  118. case 411:
  119. return NSLocalizedString(@"_too_many_files_", nil);
  120. break;
  121. case 415:
  122. return NSLocalizedString(@"_images_invalid_converted_", nil);
  123. break;
  124. case 429:
  125. return NSLocalizedString(@"_too_many_request_", nil);
  126. break;
  127. case 500:
  128. return NSLocalizedString(@"_internal_server_", nil);
  129. break;
  130. case 503:
  131. return NSLocalizedString(@"_server_error_retry_", nil);
  132. break;
  133. case 507:
  134. return NSLocalizedString(@"_user_over_quota_", nil);
  135. break;
  136. default:
  137. return [NSString stringWithFormat:@"Error code %ld", (long)errorCode];
  138. break;
  139. }
  140. }
  141. + (NSString *)manageErrorOC:(NSInteger)errorCode error:(NSError *)error
  142. {
  143. //DDLogError(@"Error code : %ld", (long)error.code);
  144. //DDLogError(@"Error http : %ld", (long)errorCode);
  145. NSString *errorHTTP;
  146. NSString *errorKCF = [self manageErrorKCF:error.code withNumberError:NO];
  147. switch (errorCode) {
  148. case 0 :
  149. errorHTTP = @"";
  150. break;
  151. case kOCErrorSharedAPIWrong: // 400
  152. errorHTTP = NSLocalizedString(@"_api_wrong_", nil);
  153. break;
  154. case kOCErrorServerUnauthorized: // 401
  155. errorHTTP = NSLocalizedString(@"_bad_username_password_", nil);
  156. break;
  157. case kOCErrorServerForbidden: // 403 Forbidden
  158. errorHTTP = NSLocalizedString(@"_error_not_permission_", nil);
  159. break;
  160. case kOCErrorServerPathNotFound: // 404 Not Found. When for example we try to access a path that now not exist
  161. errorHTTP = NSLocalizedString(@"_error_path_", nil);
  162. break;
  163. case kOCErrorServerMethodNotPermitted: // 405 Method not permitted
  164. errorHTTP = NSLocalizedString(@"_not_possible_create_folder_", nil);
  165. break;
  166. case kOCErrorProxyAuth: // 407 Error credential
  167. errorHTTP = NSLocalizedString(@"_error_proxy_auth_", nil);
  168. break;
  169. case kOCErrorServerTimeout: // 408 timeout
  170. errorHTTP = NSLocalizedString(@"_not_possible_connect_to_server_", nil);
  171. break;
  172. case 423: // 423 Locked
  173. errorHTTP = NSLocalizedString(@"_file_directory_locked_", nil);
  174. break;
  175. default: // Default
  176. errorHTTP = [NSString stringWithFormat:@"Error code %ld", (long)errorCode];
  177. break;
  178. }
  179. if (error.code == 0 && error.code == 0)
  180. return NSLocalizedString(@"_error_",nil);
  181. else if (error.code == errorCode)
  182. return [NSString stringWithFormat:@"%@", errorHTTP];
  183. else
  184. return [NSString stringWithFormat:@"%@ %@", errorKCF, errorHTTP];
  185. }
  186. @end