OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_SYNCABLE_MODEL_NEUTRAL_MUTABLE_ENTRY_H_ | 5 #ifndef COMPONENTS_SYNC_SYNCABLE_MODEL_NEUTRAL_MUTABLE_ENTRY_H_ |
6 #define COMPONENTS_SYNC_SYNCABLE_MODEL_NEUTRAL_MUTABLE_ENTRY_H_ | 6 #define COMPONENTS_SYNC_SYNCABLE_MODEL_NEUTRAL_MUTABLE_ENTRY_H_ |
7 | 7 |
8 #include <stddef.h> | 8 #include <stddef.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 | 10 |
11 #include <string> | 11 #include <string> |
12 | 12 |
13 #include "base/macros.h" | 13 #include "base/macros.h" |
14 #include "components/sync/base/model_type.h" | 14 #include "components/sync/base/model_type.h" |
15 #include "components/sync/syncable/entry.h" | 15 #include "components/sync/syncable/entry.h" |
16 | 16 |
17 namespace syncer { | 17 namespace syncer { |
18 | |
19 class WriteNode; | 18 class WriteNode; |
20 | 19 |
21 namespace syncable { | 20 namespace syncable { |
22 | 21 |
23 class BaseWriteTransaction; | 22 class BaseWriteTransaction; |
24 | 23 |
25 enum CreateNewUpdateItem { CREATE_NEW_UPDATE_ITEM }; | 24 enum CreateNewUpdateItem { CREATE_NEW_UPDATE_ITEM }; |
26 | 25 |
27 enum CreateNewTypeRoot { CREATE_NEW_TYPE_ROOT }; | 26 enum CreateNewTypeRoot { CREATE_NEW_TYPE_ROOT }; |
28 | 27 |
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 // used its list of mutations by the time this function is called. | 98 // used its list of mutations by the time this function is called. |
100 void UpdateTransactionVersion(int64_t version); | 99 void UpdateTransactionVersion(int64_t version); |
101 | 100 |
102 protected: | 101 protected: |
103 explicit ModelNeutralMutableEntry(BaseWriteTransaction* trans); | 102 explicit ModelNeutralMutableEntry(BaseWriteTransaction* trans); |
104 | 103 |
105 void MarkDirty(); | 104 void MarkDirty(); |
106 | 105 |
107 private: | 106 private: |
108 friend class syncer::WriteNode; | 107 friend class syncer::WriteNode; |
109 friend class syncer::syncable::Directory; | 108 friend class Directory; |
110 | 109 |
111 // Don't allow creation on heap, except by sync API wrappers. | 110 // Don't allow creation on heap, except by sync API wrappers. |
112 void* operator new(size_t size) { return (::operator new)(size); } | 111 void* operator new(size_t size) { return (::operator new)(size); } |
113 | 112 |
114 // Kind of redundant. We should reduce the number of pointers | 113 // Kind of redundant. We should reduce the number of pointers |
115 // floating around if at all possible. Could we store this in Directory? | 114 // floating around if at all possible. Could we store this in Directory? |
116 // Scope: Set on construction, never changed after that. | 115 // Scope: Set on construction, never changed after that. |
117 BaseWriteTransaction* const base_write_transaction_; | 116 BaseWriteTransaction* const base_write_transaction_; |
118 | 117 |
119 DISALLOW_COPY_AND_ASSIGN(ModelNeutralMutableEntry); | 118 DISALLOW_COPY_AND_ASSIGN(ModelNeutralMutableEntry); |
120 }; | 119 }; |
121 | 120 |
122 } // namespace syncable | 121 } // namespace syncable |
123 } // namespace syncer | 122 } // namespace syncer |
124 | 123 |
125 #endif // COMPONENTS_SYNC_SYNCABLE_MODEL_NEUTRAL_MUTABLE_ENTRY_H_ | 124 #endif // COMPONENTS_SYNC_SYNCABLE_MODEL_NEUTRAL_MUTABLE_ENTRY_H_ |
OLD | NEW |