- add sources.
[platform/framework/web/crosswalk.git] / src / chrome / browser / sync_file_system / sync_service_state.h
1 // Copyright (c) 2013 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
5 #ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_SERVICE_STATE_H_
6 #define CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_SERVICE_STATE_H_
7
8 namespace sync_file_system {
9
10 // This enum is translated into syncFileSystem.ServiceStatus
11 // (defined in chrome/common/extensions/api/sync_file_system.idl).
12 // When you update this enum please consider updating the other enum in IDL.
13 enum SyncServiceState {
14   // The sync service is up and running, or has not seen any errors yet.
15   // The consumer of this service can make new requests while the
16   // service is in this state.
17   SYNC_SERVICE_RUNNING,
18
19   // The sync service is not synchronizing files because the remote service
20   // needs to be authenticated by the user to proceed.
21   // This state may be automatically resolved when the underlying
22   // network condition or service condition changes.
23   // The consumer of this service can still make new requests but
24   // they may fail (with recoverable error code).
25   SYNC_SERVICE_AUTHENTICATION_REQUIRED,
26
27   // The sync service is not synchronizing files because the remote service
28   // is (temporarily) unavailable due to some recoverable errors, e.g.
29   // network is offline, the remote service is down or not
30   // reachable etc. More details should be given by |description| parameter
31   // in OnSyncStateUpdated (which could contain service-specific details).
32   SYNC_SERVICE_TEMPORARY_UNAVAILABLE,
33
34   // The sync service is disabled by configuration change or due to some
35   // unrecoverable errors, e.g. local database corruption.
36   // Any new requests will immediately fail when the service is in
37   // this state.
38   SYNC_SERVICE_DISABLED,
39 };
40
41 }  // namespace sync_file_system
42
43 #endif  // CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_SERVICE_STATE_H_