OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "components/drive/chromeos/change_list_loader.h" | 5 #include "components/drive/chromeos/change_list_loader.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include <set> | 9 #include <set> |
10 #include <utility> | 10 #include <utility> |
(...skipping 163 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
174 } | 174 } |
175 | 175 |
176 LoaderController::~LoaderController() { | 176 LoaderController::~LoaderController() { |
177 DCHECK(thread_checker_.CalledOnValidThread()); | 177 DCHECK(thread_checker_.CalledOnValidThread()); |
178 } | 178 } |
179 | 179 |
180 std::unique_ptr<base::ScopedClosureRunner> LoaderController::GetLock() { | 180 std::unique_ptr<base::ScopedClosureRunner> LoaderController::GetLock() { |
181 DCHECK(thread_checker_.CalledOnValidThread()); | 181 DCHECK(thread_checker_.CalledOnValidThread()); |
182 | 182 |
183 ++lock_count_; | 183 ++lock_count_; |
184 return base::WrapUnique(new base::ScopedClosureRunner( | 184 return base::MakeUnique<base::ScopedClosureRunner>( |
185 base::Bind(&LoaderController::Unlock, weak_ptr_factory_.GetWeakPtr()))); | 185 base::Bind(&LoaderController::Unlock, weak_ptr_factory_.GetWeakPtr())); |
186 } | 186 } |
187 | 187 |
188 void LoaderController::ScheduleRun(const base::Closure& task) { | 188 void LoaderController::ScheduleRun(const base::Closure& task) { |
189 DCHECK(thread_checker_.CalledOnValidThread()); | 189 DCHECK(thread_checker_.CalledOnValidThread()); |
190 DCHECK(!task.is_null()); | 190 DCHECK(!task.is_null()); |
191 | 191 |
192 if (lock_count_ > 0) { | 192 if (lock_count_ > 0) { |
193 pending_tasks_.push_back(task); | 193 pending_tasks_.push_back(task); |
194 } else { | 194 } else { |
195 task.Run(); | 195 task.Run(); |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
276 cached_about_resource_->largest_change_id() > | 276 cached_about_resource_->largest_change_id() > |
277 about_resource->largest_change_id()) { | 277 about_resource->largest_change_id()) { |
278 LOG(WARNING) << "Local cached about resource is fresher than server, " | 278 LOG(WARNING) << "Local cached about resource is fresher than server, " |
279 << "local = " << cached_about_resource_->largest_change_id() | 279 << "local = " << cached_about_resource_->largest_change_id() |
280 << ", server = " << about_resource->largest_change_id(); | 280 << ", server = " << about_resource->largest_change_id(); |
281 } | 281 } |
282 cached_about_resource_.reset(new google_apis::AboutResource(*about_resource)); | 282 cached_about_resource_.reset(new google_apis::AboutResource(*about_resource)); |
283 | 283 |
284 for (size_t i = 0; i < callbacks.size(); ++i) { | 284 for (size_t i = 0; i < callbacks.size(); ++i) { |
285 callbacks[i].Run( | 285 callbacks[i].Run( |
286 status, | 286 status, base::MakeUnique<google_apis::AboutResource>(*about_resource)); |
287 base::WrapUnique(new google_apis::AboutResource(*about_resource))); | |
288 } | 287 } |
289 } | 288 } |
290 | 289 |
291 ChangeListLoader::ChangeListLoader( | 290 ChangeListLoader::ChangeListLoader( |
292 EventLogger* logger, | 291 EventLogger* logger, |
293 base::SequencedTaskRunner* blocking_task_runner, | 292 base::SequencedTaskRunner* blocking_task_runner, |
294 ResourceMetadata* resource_metadata, | 293 ResourceMetadata* resource_metadata, |
295 JobScheduler* scheduler, | 294 JobScheduler* scheduler, |
296 AboutResourceLoader* about_resource_loader, | 295 AboutResourceLoader* about_resource_loader, |
297 LoaderController* loader_controller) | 296 LoaderController* loader_controller) |
(...skipping 207 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
505 new DeltaFeedFetcher(scheduler_, start_changestamp)); | 504 new DeltaFeedFetcher(scheduler_, start_changestamp)); |
506 } else { | 505 } else { |
507 change_feed_fetcher_.reset(new FullFeedFetcher(scheduler_)); | 506 change_feed_fetcher_.reset(new FullFeedFetcher(scheduler_)); |
508 } | 507 } |
509 | 508 |
510 // Make a copy of cached_about_resource_ to remember at which changestamp we | 509 // Make a copy of cached_about_resource_ to remember at which changestamp we |
511 // are fetching change list. | 510 // are fetching change list. |
512 change_feed_fetcher_->Run( | 511 change_feed_fetcher_->Run( |
513 base::Bind(&ChangeListLoader::LoadChangeListFromServerAfterLoadChangeList, | 512 base::Bind(&ChangeListLoader::LoadChangeListFromServerAfterLoadChangeList, |
514 weak_ptr_factory_.GetWeakPtr(), | 513 weak_ptr_factory_.GetWeakPtr(), |
515 base::Passed(base::WrapUnique(new google_apis::AboutResource( | 514 base::Passed(base::MakeUnique<google_apis::AboutResource>( |
516 *about_resource_loader_->cached_about_resource()))), | 515 *about_resource_loader_->cached_about_resource())), |
517 is_delta_update)); | 516 is_delta_update)); |
518 } | 517 } |
519 | 518 |
520 void ChangeListLoader::LoadChangeListFromServerAfterLoadChangeList( | 519 void ChangeListLoader::LoadChangeListFromServerAfterLoadChangeList( |
521 std::unique_ptr<google_apis::AboutResource> about_resource, | 520 std::unique_ptr<google_apis::AboutResource> about_resource, |
522 bool is_delta_update, | 521 bool is_delta_update, |
523 FileError error, | 522 FileError error, |
524 ScopedVector<ChangeList> change_lists) { | 523 ScopedVector<ChangeList> change_lists) { |
525 DCHECK(thread_checker_.CalledOnValidThread()); | 524 DCHECK(thread_checker_.CalledOnValidThread()); |
526 DCHECK(about_resource); | 525 DCHECK(about_resource); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
576 | 575 |
577 OnChangeListLoadComplete(error); | 576 OnChangeListLoadComplete(error); |
578 | 577 |
579 FOR_EACH_OBSERVER(ChangeListLoaderObserver, | 578 FOR_EACH_OBSERVER(ChangeListLoaderObserver, |
580 observers_, | 579 observers_, |
581 OnLoadFromServerComplete()); | 580 OnLoadFromServerComplete()); |
582 } | 581 } |
583 | 582 |
584 } // namespace internal | 583 } // namespace internal |
585 } // namespace drive | 584 } // namespace drive |
OLD | NEW |