Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(427)

Side by Side Diff: chrome/browser/sync/protocol/session_specifics.proto

Issue 5705004: [SYNC] Sessions datatype refactor. Most things related to sessions under-the-... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Tests! And the refactors that helped them. And Rebase. And Comments. Created 9 years, 12 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 // Sync protocol datatype extension for sessions. 5 // Sync protocol datatype extension for sessions.
6 6
7 syntax = "proto2"; 7 syntax = "proto2";
8 8
9 option optimize_for = LITE_RUNTIME; 9 option optimize_for = LITE_RUNTIME;
10 option retain_unknown_fields = true; 10 option retain_unknown_fields = true;
11 11
12 package sync_pb; 12 package sync_pb;
13 13
14 import "sync.proto"; 14 import "sync.proto";
15 15
16 message SessionSpecifics {
17 // Unique id for the client.
18 optional string session_tag = 1;
19 optional SessionHeader header = 2;
20 optional SessionTab tab = 3;
21 }
16 // Properties of session sync objects. 22 // Properties of session sync objects.
17 message SessionSpecifics { 23 message SessionHeader {
18 // Unique id for the session.
19 optional string session_tag = 1;
20 // Each session is composed of windows. 24 // Each session is composed of windows.
21 repeated SessionWindow session_window = 2; 25 repeated SessionWindow window = 2;
22 } 26 }
23 message SessionWindow { 27 message SessionWindow {
28 // Unique (to the owner) id for this window.
tim (not reviewing) 2011/01/04 14:32:47 nit- indent
Nicolas Zea 2011/01/06 01:14:13 Done.
29 optional int32 window_id = 1;
24 // Index of the selected tab in tabs; -1 if no tab is selected. 30 // Index of the selected tab in tabs; -1 if no tab is selected.
25 optional int32 selected_tab_index = 2 [default = -1]; 31 optional int32 selected_tab_index = 2 [default = -1];
26 // Type of the browser. Currently we only store browsers of type 32 // Type of the browser. Currently we only store browsers of type
27 // TYPE_NORMAL and TYPE_POPUP. 33 // TYPE_NORMAL and TYPE_POPUP.
28 enum BrowserType { 34 enum BrowserType {
29 TYPE_NORMAL = 1; 35 TYPE_NORMAL = 1;
30 TYPE_POPUP = 2; 36 TYPE_POPUP = 2;
31 } 37 }
32 optional BrowserType browser_type = 3 [default = TYPE_NORMAL]; 38 optional BrowserType browser_type = 3 [default = TYPE_NORMAL];
33 // The tabs that compose a window. 39 // The tabs that compose a window (correspond to tab id's).
34 repeated SessionTab session_tab= 4; 40 repeated int32 tab = 4;
35 } 41 }
36 message SessionTab { 42 message SessionTab {
43 // Unique (to the owner) id for this tab.
44 optional int32 tab_id = 1;
45 // The unique id for the window this tab belongs to.
46 optional int32 window_id = 2;
37 // Visual index of the tab within its window. There may be gaps in these 47 // Visual index of the tab within its window. There may be gaps in these
38 // values. 48 // values.
39 optional int32 tab_visual_index = 2 [default = -1]; 49 optional int32 tab_visual_index = 3 [default = -1];
40 // Identifies the index of the current navigation in navigations. For 50 // Identifies the index of the current navigation in navigations. For
41 // example, if this is 2 it means the current navigation is navigations[2]. 51 // example, if this is 2 it means the current navigation is navigations[2].
42 optional int32 current_navigation_index = 3 [default = -1]; 52 optional int32 current_navigation_index = 4 [default = -1];
43 // True if the tab is pinned. 53 // True if the tab is pinned.
44 optional bool pinned = 4 [default = false]; 54 optional bool pinned = 5 [default = false];
45 // If non-empty, this tab is an app tab and this is the id of the extension. 55 // If non-empty, this tab is an app tab and this is the id of the extension.
46 optional string extension_app_id = 5; 56 optional string extension_app_id = 6;
47 // Tabs are navigated, and the navigation data is here. 57 // Tabs are navigated, and the navigation data is here.
48 repeated TabNavigation navigation = 6; 58 repeated TabNavigation navigation = 7;
49 } 59 }
50 message TabNavigation { 60 message TabNavigation {
51 // The index in the NavigationController. If this is -1, it means this 61 // The index in the NavigationController. If this is -1, it means this
52 // TabNavigation is bogus. 62 // TabNavigation is bogus.
53 optional int32 index = 1 [default = -1]; 63 optional int32 index = 1 [default = -1];
54 // The virtual URL, when nonempty, will override the actual URL of the page 64 // The virtual URL, when nonempty, will override the actual URL of the page
55 // when we display it to the user. 65 // when we display it to the user.
56 optional string virtual_url = 2; 66 optional string virtual_url = 2;
57 // The referring URL, which can be empty. 67 // The referring URL, which can be empty.
58 optional string referrer = 3; 68 optional string referrer = 3;
(...skipping 24 matching lines...) Expand all
83 CLIENT_REDIRECT = 1; 93 CLIENT_REDIRECT = 1;
84 SERVER_REDIRECT = 2; 94 SERVER_REDIRECT = 2;
85 } 95 }
86 optional PageTransition page_transition = 6 [default = TYPED]; 96 optional PageTransition page_transition = 6 [default = TYPED];
87 optional PageTransitionQualifier navigation_qualifier = 7; 97 optional PageTransitionQualifier navigation_qualifier = 7;
88 } 98 }
89 99
90 extend EntitySpecifics { 100 extend EntitySpecifics {
91 optional SessionSpecifics session = 50119; 101 optional SessionSpecifics session = 50119;
92 } 102 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698