summaryrefslogtreecommitdiffstats
path: root/sync/protocol/sync_enums.proto
blob: 01d117bfb601ad505ff33404e54c2febd3eb3993 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
// Copyright (c) 2012 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// Sync protocol for communication between sync client and server.

// Update proto_value_conversions{.h,.cc,_unittest.cc} if you change
// any fields in this file.

syntax = "proto2";

package sync_pb;

message SyncEnums {
  // These events are sent by |SyncManager| class. Note: In the code they each
  // of these events have some additional info but we are not sending them to
  // server.
  enum EventType {
    AUTH_ERROR = 1; // Auth error. Note this gets generated even during
                    // successful auth with the error set to none.
    UPDATED_TOKEN = 2; // Client received an updated token.
    PASSPHRASE_REQUIRED = 3; // Cryptographer needs passphrase.
    PASSPHRASE_ACCEPTED = 4; // Passphrase was accepted by cryptographer.
    INITIALIZATION_COMPLETE = 5; // Sync Initialization is complete.

    // |STOP_SYNCING_PERMANENTLY| event should never be seen by the server in
    // the absence of bugs.
    STOP_SYNCING_PERMANENTLY = 6; // Server sent stop syncing permanently.

    ENCRYPTED_TYPES_CHANGED = 9; // Set of encrypted types has changed.
    ENCRYPTION_COMPLETE = 7; // Client has finished encrypting all data.
    ACTIONABLE_ERROR = 8; // Client received an actionable error.
  }

  // See content/public/common/page_transition_types.h for detailed
  // information on the values of PageTransition and
  // PageTransitionRedirectType below.

  // Types of transitions between pages.
  enum PageTransition {
    LINK = 0;
    TYPED = 1;
    AUTO_BOOKMARK = 2;
    AUTO_SUBFRAME = 3;
    MANUAL_SUBFRAME = 4;
    GENERATED = 5;
    AUTO_TOPLEVEL = 6;
    FORM_SUBMIT = 7;
    RELOAD = 8;
    KEYWORD = 9;
    KEYWORD_GENERATED = 10;
    // The below two were mistakenly added but never properly used. They are
    // actually transition qualifiers, and are set independently of other
    // qualifiers and of the main transitions. See session_specifics.proto for
    // the list of synced transition qualifiers.
    // CHAIN_START = 12;     Deprecated.
    // CHAIN_END = 13;       Deprecated.
  }

  // Types of redirects that triggered a transition.
  enum PageTransitionRedirectType {
    CLIENT_REDIRECT = 1;
    SERVER_REDIRECT = 2;
  }

  enum ErrorType {
    SUCCESS            = 0;
    ACCESS_DENIED      = 1;   // Returned when the user doesn't have access to
                              // store (instead of HTTP 401).
    NOT_MY_BIRTHDAY    = 2;   // Returned when the server and client disagree on
                              // the store birthday.
    THROTTLED          = 3;   // Returned when the store has exceeded the
                              // allowed bandwidth utilization.
    AUTH_EXPIRED       = 4;   // Auth token or cookie has expired.
    USER_NOT_ACTIVATED = 5;   // User doesn't have the Chrome bit set on that
                              // Google Account.
    AUTH_INVALID       = 6;   // Auth token or cookie is otherwise invalid.
    CLEAR_PENDING      = 7;   // A clear of the user data is pending (e.g.
                              // initiated by privacy request).  Client should
                              // come back later.
    TRANSIENT_ERROR    = 8;   // A transient error occured (eg. backend
                              // timeout). Client should try again later.
    MIGRATION_DONE     = 9;   // Migration has finished for one or more data
                              // types.  Client should clear the cache for
                              // these data types only and then re-sync with
                              // a server.
    UNKNOWN            = 100; // Unknown value. This should never be explicitly
                              // used; it is the default value when an
                              // out-of-date client parses a value it doesn't
                              // recognize.
  }

  enum Action {
    UPGRADE_CLIENT              = 0; // Upgrade the client to latest version.
    CLEAR_USER_DATA_AND_RESYNC  = 1; // Clear user data from dashboard and
                                     // setup sync again.
    ENABLE_SYNC_ON_ACCOUNT      = 2; // The administrator needs to enable sync
                                     // on the account.
    STOP_AND_RESTART_SYNC       = 3; // Stop sync and set up sync again.
    DISABLE_SYNC_ON_CLIENT      = 4; // Wipe the client of all sync data and
                                     // stop syncing.
    UNKNOWN_ACTION              = 5; // This is the default.
  }

  enum DeviceType {
    TYPE_WIN = 1;
    TYPE_MAC = 2;
    TYPE_LINUX = 3;
    TYPE_CROS = 4;
    TYPE_OTHER = 5;
    TYPE_PHONE = 6;
    TYPE_TABLET = 7;
  }
}