| OLD | NEW |
| 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 #ifndef SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_ | 5 #ifndef SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_ |
| 6 #define SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_ | 6 #define SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_ |
| 7 | 7 |
| 8 namespace syncer { | 8 namespace syncer { |
| 9 | 9 |
| 10 // This enum describes all the ways a SyncerCommand can fail. | 10 // This enum describes all the ways a SyncerCommand can fail. |
| 11 // | 11 // |
| 12 // SyncerCommands do many different things, but they share a common function | 12 // SyncerCommands do many different things, but they share a common function |
| 13 // signature. This enum, the return value for all SyncerCommands, must be able | 13 // signature. This enum, the return value for all SyncerCommands, must be able |
| 14 // to describe any possible failure for all SyncerComand. | 14 // to describe any possible failure for all SyncerComand. |
| 15 // | 15 // |
| 16 // For convenience, functions which are invoked only by SyncerCommands may also | 16 // For convenience, functions which are invoked only by SyncerCommands may also |
| 17 // return a SyncerError. It saves us having to write a conversion function, and | 17 // return a SyncerError. It saves us having to write a conversion function, and |
| 18 // it makes refactoring easier. | 18 // it makes refactoring easier. |
| 19 enum SyncerError { | 19 enum SyncerError { |
| 20 UNSET = 0, // Default value. | 20 UNSET = 0, // Default value. |
| 21 DIRECTORY_LOOKUP_FAILED, // Local directory lookup failure. | |
| 22 CANNOT_DO_WORK, // A model worker could not process a work item. | 21 CANNOT_DO_WORK, // A model worker could not process a work item. |
| 23 | 22 |
| 24 NETWORK_CONNECTION_UNAVAILABLE, // Connectivity failure. | 23 NETWORK_CONNECTION_UNAVAILABLE, // Connectivity failure. |
| 25 NETWORK_IO_ERROR, // Response buffer read error. | 24 NETWORK_IO_ERROR, // Response buffer read error. |
| 26 SYNC_SERVER_ERROR, // Non auth HTTP error. | 25 SYNC_SERVER_ERROR, // Non auth HTTP error. |
| 27 SYNC_AUTH_ERROR, // HTTP auth error. | 26 SYNC_AUTH_ERROR, // HTTP auth error. |
| 28 | 27 |
| 29 // Based on values returned by server. Most are defined in sync.proto. | 28 // Based on values returned by server. Most are defined in sync.proto. |
| 30 SERVER_RETURN_INVALID_CREDENTIAL, | 29 SERVER_RETURN_INVALID_CREDENTIAL, |
| 31 FIRST_SERVER_RETURN_VALUE = SERVER_RETURN_INVALID_CREDENTIAL, | 30 FIRST_SERVER_RETURN_VALUE = SERVER_RETURN_INVALID_CREDENTIAL, |
| 32 | 31 |
| 33 SERVER_RETURN_UNKNOWN_ERROR, | 32 SERVER_RETURN_UNKNOWN_ERROR, |
| 34 SERVER_RETURN_THROTTLED, | 33 SERVER_RETURN_THROTTLED, |
| 35 SERVER_RETURN_TRANSIENT_ERROR, | 34 SERVER_RETURN_TRANSIENT_ERROR, |
| 36 SERVER_RETURN_MIGRATION_DONE, | 35 SERVER_RETURN_MIGRATION_DONE, |
| 37 SERVER_RETURN_CLEAR_PENDING, | 36 SERVER_RETURN_CLEAR_PENDING, |
| 38 SERVER_RETURN_NOT_MY_BIRTHDAY, | 37 SERVER_RETURN_NOT_MY_BIRTHDAY, |
| 38 SERVER_RETURN_CONFLICT, |
| 39 SERVER_RESPONSE_VALIDATION_FAILED, | 39 SERVER_RESPONSE_VALIDATION_FAILED, |
| 40 | 40 |
| 41 SYNCER_OK | 41 SYNCER_OK |
| 42 }; | 42 }; |
| 43 | 43 |
| 44 const char * GetSyncerErrorString(SyncerError); | 44 const char * GetSyncerErrorString(SyncerError); |
| 45 | 45 |
| 46 // Helper to check that |error| is set to something (not UNSET) and is not | 46 // Helper to check that |error| is set to something (not UNSET) and is not |
| 47 // SYNCER_OK. | 47 // SYNCER_OK. |
| 48 bool SyncerErrorIsError(SyncerError error); | 48 bool SyncerErrorIsError(SyncerError error); |
| 49 | 49 |
| 50 } // namespace syncer | 50 } // namespace syncer |
| 51 | 51 |
| 52 #endif // SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_ | 52 #endif // SYNC_INTERNAL_API_PUBLIC_UTIL_SYNCER_ERROR_H_ |
| OLD | NEW |