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

Side by Side Diff: components/sync/api/entity_change.h

Issue 2222373003: [Sync] Adding storage key concept for ModelTypeServices. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Removing redundant hash value. Created 4 years, 4 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
« no previous file with comments | « components/sync/api/data_batch.h ('k') | components/sync/api/entity_change.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 #ifndef COMPONENTS_SYNC_API_ENTITY_CHANGE_H_ 5 #ifndef COMPONENTS_SYNC_API_ENTITY_CHANGE_H_
6 #define COMPONENTS_SYNC_API_ENTITY_CHANGE_H_ 6 #define COMPONENTS_SYNC_API_ENTITY_CHANGE_H_
7 7
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
11 #include "components/sync/api/entity_data.h" 11 #include "components/sync/api/entity_data.h"
12 #include "components/sync/base/sync_export.h" 12 #include "components/sync/base/sync_export.h"
13 13
14 namespace syncer_v2 { 14 namespace syncer_v2 {
15 15
16 class SYNC_EXPORT EntityChange { 16 class SYNC_EXPORT EntityChange {
17 public: 17 public:
18 enum ChangeType { ACTION_ADD, ACTION_UPDATE, ACTION_DELETE }; 18 enum ChangeType { ACTION_ADD, ACTION_UPDATE, ACTION_DELETE };
19 19
20 static EntityChange CreateAdd(std::string client_tag, EntityDataPtr data); 20 static EntityChange CreateAdd(const std::string& storage_key,
21 static EntityChange CreateUpdate(std::string client_tag, EntityDataPtr data); 21 EntityDataPtr data);
22 static EntityChange CreateDelete(std::string client_tag); 22 static EntityChange CreateUpdate(const std::string& storage_key,
23 EntityDataPtr data);
24 static EntityChange CreateDelete(const std::string& storage_key);
23 25
24 EntityChange(const EntityChange& other); 26 EntityChange(const EntityChange& other);
25 virtual ~EntityChange(); 27 virtual ~EntityChange();
26 28
27 std::string client_tag() const { return client_tag_; } 29 std::string storage_key() const { return storage_key_; }
28 ChangeType type() const { return type_; } 30 ChangeType type() const { return type_; }
29 const EntityData& data() const { return data_.value(); } 31 const EntityData& data() const { return data_.value(); }
30 32
31 private: 33 private:
32 EntityChange(std::string client_tag, ChangeType type, EntityDataPtr data); 34 EntityChange(const std::string& storage_key,
35 ChangeType type,
36 EntityDataPtr data);
33 37
34 std::string client_tag_; 38 std::string storage_key_;
35 ChangeType type_; 39 ChangeType type_;
36 EntityDataPtr data_; 40 EntityDataPtr data_;
37 }; 41 };
38 42
39 typedef std::vector<EntityChange> EntityChangeList; 43 typedef std::vector<EntityChange> EntityChangeList;
40 44
41 } // namespace syncer_v2 45 } // namespace syncer_v2
42 46
43 #endif // COMPONENTS_SYNC_API_ENTITY_CHANGE_H_ 47 #endif // COMPONENTS_SYNC_API_ENTITY_CHANGE_H_
OLDNEW
« no previous file with comments | « components/sync/api/data_batch.h ('k') | components/sync/api/entity_change.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698