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

Side by Side Diff: chrome/browser/sync/protocol/proto_value_conversions.h

Issue 9699057: [Sync] Move 'sync' target to sync/ (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address Tim's comments Created 8 years, 9 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
(Empty)
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.
4
5 // Keep this file in sync with the .proto files in this directory.
6
7 #ifndef CHROME_BROWSER_SYNC_PROTOCOL_PROTO_VALUE_CONVERSIONS_H_
8 #define CHROME_BROWSER_SYNC_PROTOCOL_PROTO_VALUE_CONVERSIONS_H_
9 #pragma once
10
11 namespace base {
12 class DictionaryValue;
13 }
14
15 namespace sync_pb {
16 class AppNotification;
17 class AppNotificationSettings;
18 class AppSettingSpecifics;
19 class AppSpecifics;
20 class AutofillProfileSpecifics;
21 class AutofillSpecifics;
22 class BookmarkSpecifics;
23 class DeviceInformation;
24 class EncryptedData;
25 class EntitySpecifics;
26 class ExtensionSettingSpecifics;
27 class ExtensionSpecifics;
28 class NigoriSpecifics;
29 class PasswordSpecifics;
30 class PasswordSpecificsData;
31 class PreferenceSpecifics;
32 class SearchEngineSpecifics;
33 class SessionHeader;
34 class SessionSpecifics;
35 class SessionTab;
36 class SessionWindow;
37 class TabNavigation;
38 class ThemeSpecifics;
39 class TypedUrlSpecifics;
40 } // namespace sync_pb
41
42 // Utility functions to convert sync protocol buffers to dictionaries.
43 // Each protocol field is mapped to a key of the same name. Repeated
44 // fields are mapped to array values and sub-messages are mapped to
45 // sub-dictionary values.
46 //
47 // TODO(akalin): Add has_* information.
48 //
49 // TODO(akalin): Improve enum support.
50
51 namespace browser_sync {
52
53 // Ownership of all returned DictionaryValues are transferred to the
54 // caller.
55
56 // TODO(akalin): Perhaps extend this to decrypt?
57 base::DictionaryValue* EncryptedDataToValue(
58 const sync_pb::EncryptedData& encrypted_data);
59
60 // Sub-protocol of AppSpecifics.
61 base::DictionaryValue* AppSettingsToValue(
62 const sync_pb::AppNotificationSettings& app_notification_settings);
63
64 // Sub-protocols of SessionSpecifics.
65
66 base::DictionaryValue* SessionHeaderToValue(
67 const sync_pb::SessionHeader& session_header);
68
69 base::DictionaryValue* SessionTabToValue(
70 const sync_pb::SessionTab& session_tab);
71
72 base::DictionaryValue* SessionWindowToValue(
73 const sync_pb::SessionWindow& session_window);
74
75 base::DictionaryValue* TabNavigationToValue(
76 const sync_pb::TabNavigation& tab_navigation);
77
78 // Sub-protocol of PasswordSpecifics.
79
80 base::DictionaryValue* PasswordSpecificsDataToValue(
81 const sync_pb::PasswordSpecificsData& password_specifics_data);
82
83 // Sub-protocol of NigoriSpecifics.
84
85 base::DictionaryValue* DeviceInformationToValue(
86 const sync_pb::DeviceInformation& device_information);
87
88 // Main *SpecificsToValue functions.
89
90 base::DictionaryValue* AppNotificationToValue(
91 const sync_pb::AppNotification& app_notification_specifics);
92
93 base::DictionaryValue* AppSettingSpecificsToValue(
94 const sync_pb::AppSettingSpecifics& app_setting_specifics);
95
96 base::DictionaryValue* AppSpecificsToValue(
97 const sync_pb::AppSpecifics& app_specifics);
98
99 base::DictionaryValue* AutofillSpecificsToValue(
100 const sync_pb::AutofillSpecifics& autofill_specifics);
101
102 base::DictionaryValue* AutofillProfileSpecificsToValue(
103 const sync_pb::AutofillProfileSpecifics& autofill_profile_specifics);
104
105 base::DictionaryValue* BookmarkSpecificsToValue(
106 const sync_pb::BookmarkSpecifics& bookmark_specifics);
107
108 base::DictionaryValue* ExtensionSettingSpecificsToValue(
109 const sync_pb::ExtensionSettingSpecifics& extension_setting_specifics);
110
111 base::DictionaryValue* ExtensionSpecificsToValue(
112 const sync_pb::ExtensionSpecifics& extension_specifics);
113
114 base::DictionaryValue* NigoriSpecificsToValue(
115 const sync_pb::NigoriSpecifics& nigori_specifics);
116
117 base::DictionaryValue* PasswordSpecificsToValue(
118 const sync_pb::PasswordSpecifics& password_specifics);
119
120 base::DictionaryValue* PreferenceSpecificsToValue(
121 const sync_pb::PreferenceSpecifics& password_specifics);
122
123 base::DictionaryValue* SearchEngineSpecificsToValue(
124 const sync_pb::SearchEngineSpecifics& search_engine_specifics);
125
126 base::DictionaryValue* SessionSpecificsToValue(
127 const sync_pb::SessionSpecifics& session_specifics);
128
129 base::DictionaryValue* ThemeSpecificsToValue(
130 const sync_pb::ThemeSpecifics& theme_specifics);
131
132 base::DictionaryValue* TypedUrlSpecificsToValue(
133 const sync_pb::TypedUrlSpecifics& typed_url_specifics);
134
135 // Any present extensions are mapped to sub-dictionary values with the
136 // key equal to the extension name.
137 base::DictionaryValue* EntitySpecificsToValue(
138 const sync_pb::EntitySpecifics& specifics);
139
140 } // namespace browser_sync
141
142 #endif // CHROME_BROWSER_SYNC_PROTOCOL_PROTO_VALUE_CONVERSIONS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698