summaryrefslogtreecommitdiffstats
path: root/protos/backup.proto
blob: 09330ee06266a57aa15bdaa2e6bf556de7b1eb5f (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
115
116
117
118
119
120
121
122
123
/*
 * Copyright (C) 2013 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

syntax = "proto2";

package launcher_backup;

option java_package = "com.android.launcher3.backup";
option java_outer_classname = "BackupProtos";

message Key {
  enum Type {
    FAVORITE = 1;
    SCREEN = 2;
    ICON = 3;
    WIDGET = 4;
  }
  required Type type = 1;
  optional string name = 2;  // keep this short
  optional int64 id = 3;
  optional int64 checksum = 4;
}

message CheckedMessage {
  required bytes payload = 1;
  required int64 checksum = 2;
}

message DeviceProfieData {
  required float desktop_rows = 1;
  required float desktop_cols = 2;
  required float hotseat_count = 3;
  required int32 allapps_rank = 4;
}

message Journal {
  required int32 app_version = 1;

  // Time when the backup was created
  required int64 t = 2;

  // Total bytes written during the last backup
  // OBSOLETE: A state may contain entries which are already present in the backup
  // and were not written in the last backup
  optional int64 bytes = 3;

  // Total entries written during the last backup
  // OBSOLETE: A state may contain entries which are already present in the backup
  // and were not written in the last backup
  optional int32 rows = 4;

  // Valid keys for this state
  repeated Key key = 5;

  // Backup format version.
  optional int32 backup_version = 6 [default = 1];

  optional DeviceProfieData profile = 7;
}

message Favorite {
  // Type of the app, this target represents
  enum TargetType {
    TARGET_NONE = 0;
    TARGET_PHONE = 1;
    TARGET_MESSENGER = 2;
    TARGET_EMAIL = 3;
    TARGET_BROWSER = 4;
    TARGET_GALLERY = 5;
    TARGET_CAMERA = 6;
  }

  required int64 id = 1;
  required int32 itemType = 2;
  optional string title = 3;
  optional int32 container = 4;
  optional int32 screen = 5;
  optional int32 cellX = 6;
  optional int32 cellY = 7;
  optional int32 spanX = 8;
  optional int32 spanY = 9;
  optional int32 displayMode = 10;
  optional int32 appWidgetId = 11;
  optional string appWidgetProvider = 12;
  optional string intent = 13;
  optional string uri = 14;
  optional int32 iconType = 15;
  optional string iconPackage = 16;
  optional string iconResource = 17;
  optional bytes icon = 18;
  optional TargetType targetType = 19 [default = TARGET_NONE];
 }

message Screen {
  required int64 id = 1;
  optional int32 rank = 2;
 }

message Resource {
  required int32 dpi = 1;
  required bytes data = 2;
 }

message Widget {
  required string provider = 1;
  optional string label = 2;
  optional bool configure = 3;
  optional Resource icon = 4;
  optional Resource preview = 5;
 }