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 #include "sync/test/fake_server/fake_server.h" | 5 #include "sync/test/fake_server/fake_server.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 #include <limits> | 10 #include <limits> |
(...skipping 173 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
184 | 184 |
185 bool FakeServer::CreatePermanentBookmarkFolder(const std::string& server_tag, | 185 bool FakeServer::CreatePermanentBookmarkFolder(const std::string& server_tag, |
186 const std::string& name) { | 186 const std::string& name) { |
187 DCHECK(thread_checker_.CalledOnValidThread()); | 187 DCHECK(thread_checker_.CalledOnValidThread()); |
188 scoped_ptr<FakeServerEntity> entity = | 188 scoped_ptr<FakeServerEntity> entity = |
189 PermanentEntity::Create(syncer::BOOKMARKS, server_tag, name, | 189 PermanentEntity::Create(syncer::BOOKMARKS, server_tag, name, |
190 ModelTypeToRootTag(syncer::BOOKMARKS)); | 190 ModelTypeToRootTag(syncer::BOOKMARKS)); |
191 if (!entity) | 191 if (!entity) |
192 return false; | 192 return false; |
193 | 193 |
194 SaveEntity(entity.Pass()); | 194 SaveEntity(std::move(entity)); |
195 return true; | 195 return true; |
196 } | 196 } |
197 | 197 |
198 bool FakeServer::CreateDefaultPermanentItems() { | 198 bool FakeServer::CreateDefaultPermanentItems() { |
199 // Permanent folders are always required for Bookmarks (hierarchical | 199 // Permanent folders are always required for Bookmarks (hierarchical |
200 // structure) and Nigori (data stored in permanent root folder). | 200 // structure) and Nigori (data stored in permanent root folder). |
201 ModelTypeSet permanent_folder_types = | 201 ModelTypeSet permanent_folder_types = |
202 ModelTypeSet(syncer::BOOKMARKS, syncer::NIGORI); | 202 ModelTypeSet(syncer::BOOKMARKS, syncer::NIGORI); |
203 | 203 |
204 for (ModelTypeSet::Iterator it = permanent_folder_types.First(); it.Good(); | 204 for (ModelTypeSet::Iterator it = permanent_folder_types.First(); it.Good(); |
205 it.Inc()) { | 205 it.Inc()) { |
206 ModelType model_type = it.Get(); | 206 ModelType model_type = it.Get(); |
207 | 207 |
208 scoped_ptr<FakeServerEntity> top_level_entity = | 208 scoped_ptr<FakeServerEntity> top_level_entity = |
209 PermanentEntity::CreateTopLevel(model_type); | 209 PermanentEntity::CreateTopLevel(model_type); |
210 if (!top_level_entity) { | 210 if (!top_level_entity) { |
211 return false; | 211 return false; |
212 } | 212 } |
213 SaveEntity(top_level_entity.Pass()); | 213 SaveEntity(std::move(top_level_entity)); |
214 | 214 |
215 if (model_type == syncer::BOOKMARKS) { | 215 if (model_type == syncer::BOOKMARKS) { |
216 if (!CreatePermanentBookmarkFolder(kBookmarkBarFolderServerTag, | 216 if (!CreatePermanentBookmarkFolder(kBookmarkBarFolderServerTag, |
217 kBookmarkBarFolderName)) | 217 kBookmarkBarFolderName)) |
218 return false; | 218 return false; |
219 if (!CreatePermanentBookmarkFolder(kOtherBookmarksFolderServerTag, | 219 if (!CreatePermanentBookmarkFolder(kOtherBookmarksFolderServerTag, |
220 kOtherBookmarksFolderName)) | 220 kOtherBookmarksFolderName)) |
221 return false; | 221 return false; |
222 } | 222 } |
223 } | 223 } |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
401 } | 401 } |
402 } | 402 } |
403 | 403 |
404 if (!entity) { | 404 if (!entity) { |
405 // TODO(pvalenzuela): Add logging so that it is easier to determine why | 405 // TODO(pvalenzuela): Add logging so that it is easier to determine why |
406 // creation failed. | 406 // creation failed. |
407 return string(); | 407 return string(); |
408 } | 408 } |
409 | 409 |
410 const std::string id = entity->GetId(); | 410 const std::string id = entity->GetId(); |
411 SaveEntity(entity.Pass()); | 411 SaveEntity(std::move(entity)); |
412 BuildEntryResponseForSuccessfulCommit(id, entry_response); | 412 BuildEntryResponseForSuccessfulCommit(id, entry_response); |
413 return id; | 413 return id; |
414 } | 414 } |
415 | 415 |
416 void FakeServer::BuildEntryResponseForSuccessfulCommit( | 416 void FakeServer::BuildEntryResponseForSuccessfulCommit( |
417 const std::string& entity_id, | 417 const std::string& entity_id, |
418 sync_pb::CommitResponse_EntryResponse* entry_response) { | 418 sync_pb::CommitResponse_EntryResponse* entry_response) { |
419 EntityMap::const_iterator iter = entities_.find(entity_id); | 419 EntityMap::const_iterator iter = entities_.find(entity_id); |
420 CHECK(iter != entities_.end()); | 420 CHECK(iter != entities_.end()); |
421 const FakeServerEntity& entity = *iter->second; | 421 const FakeServerEntity& entity = *iter->second; |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
524 if (!dictionary->GetList(ModelTypeToString(entity.GetModelType()), | 524 if (!dictionary->GetList(ModelTypeToString(entity.GetModelType()), |
525 &list_value)) { | 525 &list_value)) { |
526 return scoped_ptr<base::DictionaryValue>(); | 526 return scoped_ptr<base::DictionaryValue>(); |
527 } | 527 } |
528 // TODO(pvalenzuela): Store more data for each entity so additional | 528 // TODO(pvalenzuela): Store more data for each entity so additional |
529 // verification can be performed. One example of additional verification | 529 // verification can be performed. One example of additional verification |
530 // is checking the correctness of the bookmark hierarchy. | 530 // is checking the correctness of the bookmark hierarchy. |
531 list_value->Append(new base::StringValue(entity.GetName())); | 531 list_value->Append(new base::StringValue(entity.GetName())); |
532 } | 532 } |
533 | 533 |
534 return dictionary.Pass(); | 534 return dictionary; |
535 } | 535 } |
536 | 536 |
537 std::vector<sync_pb::SyncEntity> FakeServer::GetSyncEntitiesByModelType( | 537 std::vector<sync_pb::SyncEntity> FakeServer::GetSyncEntitiesByModelType( |
538 ModelType model_type) { | 538 ModelType model_type) { |
539 std::vector<sync_pb::SyncEntity> sync_entities; | 539 std::vector<sync_pb::SyncEntity> sync_entities; |
540 DCHECK(thread_checker_.CalledOnValidThread()); | 540 DCHECK(thread_checker_.CalledOnValidThread()); |
541 for (EntityMap::const_iterator it = entities_.begin(); it != entities_.end(); | 541 for (EntityMap::const_iterator it = entities_.begin(); it != entities_.end(); |
542 ++it) { | 542 ++it) { |
543 const FakeServerEntity& entity = *it->second; | 543 const FakeServerEntity& entity = *it->second; |
544 if (!IsDeletedOrPermanent(entity) && entity.GetModelType() == model_type) { | 544 if (!IsDeletedOrPermanent(entity) && entity.GetModelType() == model_type) { |
545 sync_pb::SyncEntity sync_entity; | 545 sync_pb::SyncEntity sync_entity; |
546 entity.SerializeAsProto(&sync_entity); | 546 entity.SerializeAsProto(&sync_entity); |
547 sync_entities.push_back(sync_entity); | 547 sync_entities.push_back(sync_entity); |
548 } | 548 } |
549 } | 549 } |
550 return sync_entities; | 550 return sync_entities; |
551 } | 551 } |
552 | 552 |
553 void FakeServer::InjectEntity(scoped_ptr<FakeServerEntity> entity) { | 553 void FakeServer::InjectEntity(scoped_ptr<FakeServerEntity> entity) { |
554 DCHECK(thread_checker_.CalledOnValidThread()); | 554 DCHECK(thread_checker_.CalledOnValidThread()); |
555 SaveEntity(entity.Pass()); | 555 SaveEntity(std::move(entity)); |
556 } | 556 } |
557 | 557 |
558 bool FakeServer::ModifyEntitySpecifics( | 558 bool FakeServer::ModifyEntitySpecifics( |
559 const std::string& id, | 559 const std::string& id, |
560 const sync_pb::EntitySpecifics& updated_specifics) { | 560 const sync_pb::EntitySpecifics& updated_specifics) { |
561 EntityMap::const_iterator iter = entities_.find(id); | 561 EntityMap::const_iterator iter = entities_.find(id); |
562 if (iter == entities_.end() || | 562 if (iter == entities_.end() || |
563 iter->second->GetModelType() != | 563 iter->second->GetModelType() != |
564 GetModelTypeFromSpecifics(updated_specifics)) { | 564 GetModelTypeFromSpecifics(updated_specifics)) { |
565 return false; | 565 return false; |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
705 DCHECK(thread_checker_.CalledOnValidThread()); | 705 DCHECK(thread_checker_.CalledOnValidThread()); |
706 return weak_ptr_factory_.GetWeakPtr(); | 706 return weak_ptr_factory_.GetWeakPtr(); |
707 } | 707 } |
708 | 708 |
709 std::string FakeServer::GetStoreBirthday() const { | 709 std::string FakeServer::GetStoreBirthday() const { |
710 DCHECK(thread_checker_.CalledOnValidThread()); | 710 DCHECK(thread_checker_.CalledOnValidThread()); |
711 return base::Int64ToString(store_birthday_); | 711 return base::Int64ToString(store_birthday_); |
712 } | 712 } |
713 | 713 |
714 } // namespace fake_server | 714 } // namespace fake_server |
OLD | NEW |