| OLD | NEW | 
|---|
|  | (Empty) | 
| 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 |  | 
| 3 // found in the LICENSE file. |  | 
| 4 |  | 
| 5 #include "chrome/browser/browsing_data/browsing_data_remover_test_util.h" |  | 
| 6 |  | 
| 7 BrowsingDataRemoverCompletionObserver::BrowsingDataRemoverCompletionObserver( |  | 
| 8     BrowsingDataRemover* remover) |  | 
| 9     : message_loop_runner_(new content::MessageLoopRunner), observer_(this) { |  | 
| 10   observer_.Add(remover); |  | 
| 11 } |  | 
| 12 |  | 
| 13 BrowsingDataRemoverCompletionObserver:: |  | 
| 14     ~BrowsingDataRemoverCompletionObserver() {} |  | 
| 15 |  | 
| 16 void BrowsingDataRemoverCompletionObserver::BlockUntilCompletion() { |  | 
| 17   message_loop_runner_->Run(); |  | 
| 18 } |  | 
| 19 |  | 
| 20 void BrowsingDataRemoverCompletionObserver::OnBrowsingDataRemoverDone() { |  | 
| 21   observer_.RemoveAll(); |  | 
| 22   message_loop_runner_->Quit(); |  | 
| 23 } |  | 
| 24 |  | 
| 25 BrowsingDataRemoverCompletionInhibitor::BrowsingDataRemoverCompletionInhibitor( |  | 
| 26     BrowsingDataRemover* remover) |  | 
| 27     : remover_(remover), message_loop_runner_(new content::MessageLoopRunner) { |  | 
| 28   DCHECK(remover); |  | 
| 29   remover_->SetWouldCompleteCallbackForTesting( |  | 
| 30       base::Bind(&BrowsingDataRemoverCompletionInhibitor:: |  | 
| 31                      OnBrowsingDataRemoverWouldComplete, |  | 
| 32                  base::Unretained(this))); |  | 
| 33 } |  | 
| 34 |  | 
| 35 BrowsingDataRemoverCompletionInhibitor:: |  | 
| 36     ~BrowsingDataRemoverCompletionInhibitor() { |  | 
| 37   Reset(); |  | 
| 38 } |  | 
| 39 |  | 
| 40 void BrowsingDataRemoverCompletionInhibitor::Reset() { |  | 
| 41   if (!remover_) |  | 
| 42     return; |  | 
| 43   remover_->SetWouldCompleteCallbackForTesting( |  | 
| 44       base::Callback<void(const base::Closure&)>()); |  | 
| 45   remover_ = nullptr; |  | 
| 46 } |  | 
| 47 |  | 
| 48 void BrowsingDataRemoverCompletionInhibitor::BlockUntilNearCompletion() { |  | 
| 49   message_loop_runner_->Run(); |  | 
| 50   message_loop_runner_ = new content::MessageLoopRunner; |  | 
| 51 } |  | 
| 52 |  | 
| 53 void BrowsingDataRemoverCompletionInhibitor::ContinueToCompletion() { |  | 
| 54   DCHECK(!continue_to_completion_callback_.is_null()); |  | 
| 55   continue_to_completion_callback_.Run(); |  | 
| 56   continue_to_completion_callback_.Reset(); |  | 
| 57 } |  | 
| 58 |  | 
| 59 void BrowsingDataRemoverCompletionInhibitor::OnBrowsingDataRemoverWouldComplete( |  | 
| 60     const base::Closure& continue_to_completion) { |  | 
| 61   DCHECK(continue_to_completion_callback_.is_null()); |  | 
| 62   continue_to_completion_callback_ = continue_to_completion; |  | 
| 63   message_loop_runner_->Quit(); |  | 
| 64 } |  | 
| OLD | NEW | 
|---|