Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(492)

Side by Side Diff: src/platform/update_engine/action_processor.cc

Issue 466036: AU: Beginnings of delta support (Closed)
Patch Set: Created 11 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2009 The Chromium OS Authors. All rights reserved. 1 // Copyright (c) 2009 The Chromium OS 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 "update_engine/action_processor.h" 5 #include "update_engine/action_processor.h"
6 #include "chromeos/obsolete_logging.h"
6 #include "update_engine/action.h" 7 #include "update_engine/action.h"
7 8
8 namespace chromeos_update_engine { 9 namespace chromeos_update_engine {
9 10
10 ActionProcessor::ActionProcessor() 11 ActionProcessor::ActionProcessor()
11 : current_action_(NULL), delegate_(NULL) {} 12 : current_action_(NULL), delegate_(NULL) {}
12 13
13 ActionProcessor::~ActionProcessor() { 14 ActionProcessor::~ActionProcessor() {
14 if (IsRunning()) { 15 if (IsRunning()) {
15 StopProcessing(); 16 StopProcessing();
(...skipping 26 matching lines...) Expand all
42 current_action_->TerminateProcessing(); 43 current_action_->TerminateProcessing();
43 CHECK(current_action_); 44 CHECK(current_action_);
44 current_action_->SetProcessor(NULL); 45 current_action_->SetProcessor(NULL);
45 LOG(INFO) << "ActionProcessor::StopProcessing: aborted " 46 LOG(INFO) << "ActionProcessor::StopProcessing: aborted "
46 << current_action_->Type(); 47 << current_action_->Type();
47 current_action_ = NULL; 48 current_action_ = NULL;
48 if (delegate_) 49 if (delegate_)
49 delegate_->ProcessingStopped(this); 50 delegate_->ProcessingStopped(this);
50 } 51 }
51 52
52 void ActionProcessor::ActionComplete(const AbstractAction* actionptr, 53 void ActionProcessor::ActionComplete(AbstractAction* actionptr,
53 bool success) { 54 bool success) {
54 CHECK_EQ(actionptr, current_action_); 55 CHECK_EQ(actionptr, current_action_);
55 if (delegate_) 56 if (delegate_)
56 delegate_->ActionCompleted(this, actionptr, success); 57 delegate_->ActionCompleted(this, actionptr, success);
57 string old_type = current_action_->Type(); 58 string old_type = current_action_->Type();
58 current_action_->SetProcessor(NULL); 59 current_action_->SetProcessor(NULL);
59 current_action_ = NULL; 60 current_action_ = NULL;
60 if (actions_.empty()) { 61 if (actions_.empty()) {
61 LOG(INFO) << "ActionProcessor::ActionComplete: finished last action of" 62 LOG(INFO) << "ActionProcessor::ActionComplete: finished last action of"
62 " type " << old_type; 63 " type " << old_type;
64 } else if (!success) {
65 LOG(INFO) << "ActionProcessor::ActionComplete: " << old_type
66 << " action failed. Aborting processing.";
67 actions_.clear();
68 }
69 if (actions_.empty()) {
70 LOG(INFO) << "ActionProcessor::ActionComplete: finished last action of"
71 " type " << old_type;
63 if (delegate_) { 72 if (delegate_) {
64 delegate_->ProcessingDone(this); 73 delegate_->ProcessingDone(this);
65 } 74 }
66 return; 75 return;
67 } 76 }
68 current_action_ = actions_.front(); 77 current_action_ = actions_.front();
69 actions_.pop_front(); 78 actions_.pop_front();
70 LOG(INFO) << "ActionProcessor::ActionComplete: finished " << old_type 79 LOG(INFO) << "ActionProcessor::ActionComplete: finished " << old_type
71 << ", starting " << current_action_->Type(); 80 << ", starting " << current_action_->Type();
72 current_action_->PerformAction(); 81 current_action_->PerformAction();
73 } 82 }
74 83
75 } // namespace chromeos_update_engine 84 } // namespace chromeos_update_engine
OLDNEW
« no previous file with comments | « src/platform/update_engine/action_processor.h ('k') | src/platform/update_engine/action_processor_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698