OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "chrome/browser/history/expire_history_backend.h" | 5 #include "chrome/browser/history/expire_history_backend.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <limits> | 8 #include <limits> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
11 #include "base/compiler_specific.h" | 11 #include "base/compiler_specific.h" |
(...skipping 573 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
585 InitWorkQueue(); | 585 InitWorkQueue(); |
586 delay = TimeDelta::FromMinutes(kExpirationEmptyDelayMin); | 586 delay = TimeDelta::FromMinutes(kExpirationEmptyDelayMin); |
587 } else { | 587 } else { |
588 delay = TimeDelta::FromSeconds(kExpirationDelaySec); | 588 delay = TimeDelta::FromSeconds(kExpirationDelaySec); |
589 } | 589 } |
590 | 590 |
591 MessageLoop::current()->PostDelayedTask( | 591 MessageLoop::current()->PostDelayedTask( |
592 FROM_HERE, | 592 FROM_HERE, |
593 base::Bind(&ExpireHistoryBackend::DoArchiveIteration, | 593 base::Bind(&ExpireHistoryBackend::DoArchiveIteration, |
594 weak_factory_.GetWeakPtr()), | 594 weak_factory_.GetWeakPtr()), |
595 delay); | 595 delay.InMilliseconds()); |
596 } | 596 } |
597 | 597 |
598 void ExpireHistoryBackend::DoArchiveIteration() { | 598 void ExpireHistoryBackend::DoArchiveIteration() { |
599 DCHECK(!work_queue_.empty()) << "queue has to be non-empty"; | 599 DCHECK(!work_queue_.empty()) << "queue has to be non-empty"; |
600 | 600 |
601 const ExpiringVisitsReader* reader = work_queue_.front(); | 601 const ExpiringVisitsReader* reader = work_queue_.front(); |
602 bool more_to_expire = ArchiveSomeOldHistory(GetCurrentArchiveTime(), reader, | 602 bool more_to_expire = ArchiveSomeOldHistory(GetCurrentArchiveTime(), reader, |
603 kNumExpirePerIteration); | 603 kNumExpirePerIteration); |
604 | 604 |
605 work_queue_.pop(); | 605 work_queue_.pop(); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
680 // Can't expire old history index files because we | 680 // Can't expire old history index files because we |
681 // don't know where they're located. | 681 // don't know where they're located. |
682 return; | 682 return; |
683 } | 683 } |
684 | 684 |
685 TimeDelta delay = TimeDelta::FromMinutes(kIndexExpirationDelayMin); | 685 TimeDelta delay = TimeDelta::FromMinutes(kIndexExpirationDelayMin); |
686 MessageLoop::current()->PostDelayedTask( | 686 MessageLoop::current()->PostDelayedTask( |
687 FROM_HERE, | 687 FROM_HERE, |
688 base::Bind(&ExpireHistoryBackend::DoExpireHistoryIndexFiles, | 688 base::Bind(&ExpireHistoryBackend::DoExpireHistoryIndexFiles, |
689 weak_factory_.GetWeakPtr()), | 689 weak_factory_.GetWeakPtr()), |
690 delay); | 690 delay.InMilliseconds()); |
691 } | 691 } |
692 | 692 |
693 void ExpireHistoryBackend::DoExpireHistoryIndexFiles() { | 693 void ExpireHistoryBackend::DoExpireHistoryIndexFiles() { |
694 Time::Exploded exploded; | 694 Time::Exploded exploded; |
695 Time::Now().LocalExplode(&exploded); | 695 Time::Now().LocalExplode(&exploded); |
696 int cutoff_month = | 696 int cutoff_month = |
697 exploded.year * 12 + exploded.month - kStoreHistoryIndexesForMonths; | 697 exploded.year * 12 + exploded.month - kStoreHistoryIndexesForMonths; |
698 TextDatabase::DBIdent cutoff_id = | 698 TextDatabase::DBIdent cutoff_id = |
699 (cutoff_month / 12) * 100 + (cutoff_month % 12); | 699 (cutoff_month / 12) * 100 + (cutoff_month % 12); |
700 | 700 |
(...skipping 14 matching lines...) Expand all Loading... |
715 // We use the bookmark service to determine if a URL is bookmarked. The | 715 // We use the bookmark service to determine if a URL is bookmarked. The |
716 // bookmark service is loaded on a separate thread and may not be done by the | 716 // bookmark service is loaded on a separate thread and may not be done by the |
717 // time we get here. We therefor block until the bookmarks have finished | 717 // time we get here. We therefor block until the bookmarks have finished |
718 // loading. | 718 // loading. |
719 if (bookmark_service_) | 719 if (bookmark_service_) |
720 bookmark_service_->BlockTillLoaded(); | 720 bookmark_service_->BlockTillLoaded(); |
721 return bookmark_service_; | 721 return bookmark_service_; |
722 } | 722 } |
723 | 723 |
724 } // namespace history | 724 } // namespace history |
OLD | NEW |