Updating trunk VERSION from 2139.0 to 2140.0
[chromium-blink-merge.git] / sync / internal_api / public / util / syncer_error.cc
blob8130b1e712b1e1a5d5a6d0ae878a9aa8ec65e167
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.
5 #include "sync/internal_api/public/util/syncer_error.h"
7 #include "base/logging.h"
9 namespace syncer {
11 #define ENUM_CASE(x) case x: return #x; break;
12 const char* GetSyncerErrorString(SyncerError value) {
13 switch (value) {
14 ENUM_CASE(UNSET);
15 ENUM_CASE(CANNOT_DO_WORK);
16 ENUM_CASE(NETWORK_CONNECTION_UNAVAILABLE);
17 ENUM_CASE(NETWORK_IO_ERROR);
18 ENUM_CASE(SYNC_SERVER_ERROR);
19 ENUM_CASE(SYNC_AUTH_ERROR);
20 ENUM_CASE(SERVER_RETURN_INVALID_CREDENTIAL);
21 ENUM_CASE(SERVER_RETURN_UNKNOWN_ERROR);
22 ENUM_CASE(SERVER_RETURN_THROTTLED);
23 ENUM_CASE(SERVER_RETURN_TRANSIENT_ERROR);
24 ENUM_CASE(SERVER_RETURN_MIGRATION_DONE);
25 ENUM_CASE(SERVER_RETURN_CLEAR_PENDING);
26 ENUM_CASE(SERVER_RETURN_NOT_MY_BIRTHDAY);
27 ENUM_CASE(SERVER_RETURN_CONFLICT);
28 ENUM_CASE(SERVER_RESPONSE_VALIDATION_FAILED);
29 ENUM_CASE(SERVER_RETURN_DISABLED_BY_ADMIN);
30 ENUM_CASE(SERVER_RETURN_USER_ROLLBACK);
31 ENUM_CASE(SERVER_MORE_TO_DOWNLOAD);
32 ENUM_CASE(DATATYPE_TRIGGERED_RETRY);
33 ENUM_CASE(SYNCER_OK);
35 NOTREACHED();
36 return "INVALID";
38 #undef ENUM_CASE
40 bool SyncerErrorIsError(SyncerError error) {
41 return error != UNSET
42 && error != SYNCER_OK
43 && error != SERVER_MORE_TO_DOWNLOAD;
46 } // namespace syncer