Chromium Code Reviews| Index: sync/notifier/object_id_invalidation_map.h |
| diff --git a/sync/notifier/object_id_invalidation_map.h b/sync/notifier/object_id_invalidation_map.h |
| index bb97fb3b1337f63a9ee7b7200c6095d6da53a823..3af93f675a17ff4daa981bbb074e3f8cd9981349 100644 |
| --- a/sync/notifier/object_id_invalidation_map.h |
| +++ b/sync/notifier/object_id_invalidation_map.h |
| @@ -1,4 +1,4 @@ |
| -// Copyright 2012 The Chromium Authors. All rights reserved. |
| +// Copyright 2013 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| @@ -6,40 +6,46 @@ |
| #define SYNC_NOTIFIER_OBJECT_ID_INVALIDATION_MAP_H_ |
| #include <map> |
| -#include <string> |
| +#include <vector> |
| -#include "base/basictypes.h" |
| -#include "base/memory/scoped_ptr.h" |
| -#include "google/cacheinvalidation/include/types.h" |
| #include "sync/base/sync_export.h" |
| #include "sync/internal_api/public/base/invalidation.h" |
| #include "sync/notifier/invalidation_util.h" |
| - |
| -namespace base { |
| -class ListValue; |
| -} // namespace base |
| +#include "sync/notifier/ordered_invalidation_list.h" |
| namespace syncer { |
| -typedef std::map<invalidation::ObjectId, |
| - Invalidation, |
| - ObjectIdLessThan> ObjectIdInvalidationMap; |
| +class SYNC_EXPORT ObjectIdInvalidationMap { |
|
tim (not reviewing)
2013/09/20 21:53:46
What is this class supposed to do? Looking at it
rlarocque
2013/09/23 18:38:19
This class is supposed to be a container for many
tim (not reviewing)
2013/09/24 21:16:54
I see. So it's returning a subset / projection of
rlarocque
2013/09/25 00:40:00
GetSubsetWithObjectIds() makes sense to me.
|
| + public: |
| + static ObjectIdInvalidationMap InvalidateAll(const ObjectIdSet& ids); |
| + |
| + ObjectIdInvalidationMap(); |
| + ~ObjectIdInvalidationMap(); |
| + |
| + ObjectIdSet GetObjectIds() const; |
| + bool Empty() const; |
| + bool operator==(const ObjectIdInvalidationMap& other) const; |
| + |
| + void Insert(const Invalidation& invalidation); |
| + |
| + ObjectIdInvalidationMap WithObjects(const ObjectIdSet& ids) const; |
|
tim (not reviewing)
2013/09/20 21:53:46
Are there any basic tests for this filtering?
rlarocque
2013/09/23 18:38:19
No, there are no tests for any part of this class.
tim (not reviewing)
2013/09/24 21:16:54
Great!
|
| + const OrderedInvalidationList& ForObject(invalidation::ObjectId id) const; |
| + void GetAllInvalidations(std::vector<syncer::Invalidation>* out) const; |
| + |
| + scoped_ptr<base::ListValue> ToValue() const; |
| + bool ResetFromValue(const base::ListValue& value); |
| -// Converts between ObjectIdInvalidationMaps and ObjectIdSets. |
| -ObjectIdSet ObjectIdInvalidationMapToSet( |
| - const ObjectIdInvalidationMap& invalidation_map); |
| -SYNC_EXPORT ObjectIdInvalidationMap ObjectIdSetToInvalidationMap( |
| - const ObjectIdSet& ids, int64 version, const std::string& payload); |
| + std::string ToString() const; |
| -SYNC_EXPORT bool ObjectIdInvalidationMapEquals( |
| - const ObjectIdInvalidationMap& invalidation_map1, |
| - const ObjectIdInvalidationMap& invalidation_map2); |
| + private: |
| + typedef std::map<invalidation::ObjectId, |
| + OrderedInvalidationList, |
| + ObjectIdLessThan> IdToListMap; |
| -scoped_ptr<base::ListValue> ObjectIdInvalidationMapToValue( |
| - const ObjectIdInvalidationMap& invalidation_map); |
| + ObjectIdInvalidationMap(const IdToListMap& map); |
| -bool ObjectIdInvalidationMapFromValue(const base::ListValue& value, |
| - ObjectIdInvalidationMap* out); |
| + IdToListMap map_; |
| +}; |
| } // namespace syncer |