| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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_INVALIDATION_PUBLIC_OBJECT_ID_INVALIDATION_MAP_H_ | 5 #ifndef COMPONENTS_INVALIDATION_PUBLIC_OBJECT_ID_INVALIDATION_MAP_H_ |
| 6 #define COMPONENTS_INVALIDATION_PUBLIC_OBJECT_ID_INVALIDATION_MAP_H_ | 6 #define COMPONENTS_INVALIDATION_PUBLIC_OBJECT_ID_INVALIDATION_MAP_H_ |
| 7 | 7 |
| 8 #include <map> | 8 #include <map> |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| 11 #include "components/invalidation/public/invalidation.h" | 11 #include "components/invalidation/public/invalidation.h" |
| 12 #include "components/invalidation/public/invalidation_export.h" | 12 #include "components/invalidation/public/invalidation_export.h" |
| 13 #include "components/invalidation/public/invalidation_util.h" | 13 #include "components/invalidation/public/invalidation_util.h" |
| 14 #include "components/invalidation/public/single_object_invalidation_set.h" | 14 #include "components/invalidation/public/single_object_invalidation_set.h" |
| 15 | 15 |
| 16 namespace syncer { | 16 namespace syncer { |
| 17 | 17 |
| 18 // A set of notifications with some helper methods to organize them by object ID | 18 // A set of notifications with some helper methods to organize them by object ID |
| 19 // and version number. | 19 // and version number. |
| 20 class INVALIDATION_EXPORT ObjectIdInvalidationMap { | 20 class INVALIDATION_EXPORT ObjectIdInvalidationMap { |
| 21 public: | 21 public: |
| 22 // Creates an invalidation map that includes an 'unknown version' | 22 // Creates an invalidation map that includes an 'unknown version' |
| 23 // invalidation for each specified ID in |ids|. | 23 // invalidation for each specified ID in |ids|. |
| 24 static ObjectIdInvalidationMap InvalidateAll(const ObjectIdSet& ids); | 24 static ObjectIdInvalidationMap InvalidateAll(const ObjectIdSet& ids); |
| 25 | 25 |
| 26 ObjectIdInvalidationMap(); | 26 ObjectIdInvalidationMap(); |
| 27 ObjectIdInvalidationMap(const ObjectIdInvalidationMap& other); |
| 27 ~ObjectIdInvalidationMap(); | 28 ~ObjectIdInvalidationMap(); |
| 28 | 29 |
| 29 // Returns set of ObjectIds for which at least one invalidation is present. | 30 // Returns set of ObjectIds for which at least one invalidation is present. |
| 30 ObjectIdSet GetObjectIds() const; | 31 ObjectIdSet GetObjectIds() const; |
| 31 | 32 |
| 32 // Returns true if this map contains no invalidations. | 33 // Returns true if this map contains no invalidations. |
| 33 bool Empty() const; | 34 bool Empty() const; |
| 34 | 35 |
| 35 // Returns true if both maps contain the same set of invalidations. | 36 // Returns true if both maps contain the same set of invalidations. |
| 36 bool operator==(const ObjectIdInvalidationMap& other) const; | 37 bool operator==(const ObjectIdInvalidationMap& other) const; |
| (...skipping 30 matching lines...) Expand all Loading... |
| 67 ObjectIdLessThan> IdToListMap; | 68 ObjectIdLessThan> IdToListMap; |
| 68 | 69 |
| 69 ObjectIdInvalidationMap(const IdToListMap& map); | 70 ObjectIdInvalidationMap(const IdToListMap& map); |
| 70 | 71 |
| 71 IdToListMap map_; | 72 IdToListMap map_; |
| 72 }; | 73 }; |
| 73 | 74 |
| 74 } // namespace syncer | 75 } // namespace syncer |
| 75 | 76 |
| 76 #endif // COMPONENTS_INVALIDATION_PUBLIC_OBJECT_ID_INVALIDATION_MAP_H_ | 77 #endif // COMPONENTS_INVALIDATION_PUBLIC_OBJECT_ID_INVALIDATION_MAP_H_ |
| OLD | NEW |