For actions, switch bool success into an exit code.

This way we can signal specific error conditions and then
send appropriate events to Omaha from the UpdateAttempter.

BUG=560
TEST=unit tests, gmerged and looked at logs

Review URL: http://codereview.chromium.org/3022008
diff --git a/action_processor_unittest.cc b/action_processor_unittest.cc
index 40275a0..7f39149 100644
--- a/action_processor_unittest.cc
+++ b/action_processor_unittest.cc
@@ -32,7 +32,7 @@
   void PerformAction() {}
   void CompleteAction() {
     ASSERT_TRUE(processor());
-    processor()->ActionComplete(this, true);
+    processor()->ActionComplete(this, kActionCodeSuccess);
   }
   string Type() const { return "ActionProcessorTestAction"; }
 };
@@ -65,9 +65,10 @@
         processing_done_called_(false),
         processing_stopped_called_(false),
         action_completed_called_(false),
-        action_completed_success_(false) {}
+        action_exit_code_(kActionCodeError) {}
 
-  virtual void ProcessingDone(const ActionProcessor* processor, bool success) {
+  virtual void ProcessingDone(const ActionProcessor* processor,
+                              ActionExitCode code) {
     EXPECT_EQ(processor_, processor);
     EXPECT_FALSE(processing_done_called_);
     processing_done_called_ = true;
@@ -79,18 +80,18 @@
   }
   virtual void ActionCompleted(ActionProcessor* processor,
                                AbstractAction* action,
-                               bool success) {
+                               ActionExitCode code) {
     EXPECT_EQ(processor_, processor);
     EXPECT_FALSE(action_completed_called_);
     action_completed_called_ = true;
-    action_completed_success_ = success;
+    action_exit_code_ = code;
   }
 
   const ActionProcessor* processor_;
   bool processing_done_called_;
   bool processing_stopped_called_;
   bool action_completed_called_;
-  bool action_completed_success_;
+  ActionExitCode action_exit_code_;
 };
 }  // namespace {}