| OLD | NEW |
| 1 // Copyright (c) 2011 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 #ifndef CHROME_INSTALLER_UTIL_DELETE_REG_VALUE_WORK_ITEM_H_ | 5 #ifndef CHROME_INSTALLER_UTIL_DELETE_REG_VALUE_WORK_ITEM_H_ |
| 6 #define CHROME_INSTALLER_UTIL_DELETE_REG_VALUE_WORK_ITEM_H_ | 6 #define CHROME_INSTALLER_UTIL_DELETE_REG_VALUE_WORK_ITEM_H_ |
| 7 | 7 |
| 8 #include <windows.h> | 8 #include <windows.h> |
| 9 | 9 |
| 10 #include <string> | 10 #include <string> |
| 11 | 11 |
| 12 #include "chrome/installer/util/work_item.h" | 12 #include "chrome/installer/util/work_item.h" |
| 13 | 13 |
| 14 // A WorkItem subclass that deletes a registry value with REG_SZ, REG_DWORD, or | 14 // A WorkItem subclass that deletes a registry value with REG_SZ, REG_DWORD, or |
| 15 // REG_QWORD type at the specified path. The value is only deleted if the target | 15 // REG_QWORD type at the specified path. The value is only deleted if the target |
| 16 // key exists. | 16 // key exists. |
| 17 class DeleteRegValueWorkItem : public WorkItem { | 17 class DeleteRegValueWorkItem : public WorkItem { |
| 18 public: | 18 public: |
| 19 virtual ~DeleteRegValueWorkItem(); | 19 ~DeleteRegValueWorkItem() override; |
| 20 | 20 |
| 21 virtual bool Do(); | 21 bool Do() override; |
| 22 | 22 |
| 23 virtual void Rollback(); | 23 void Rollback() override; |
| 24 | 24 |
| 25 private: | 25 private: |
| 26 friend class WorkItem; | 26 friend class WorkItem; |
| 27 | 27 |
| 28 enum DeletionStatus { | 28 enum DeletionStatus { |
| 29 // The status before Do is called. | 29 // The status before Do is called. |
| 30 DELETE_VALUE, | 30 DELETE_VALUE, |
| 31 // One possible outcome after Do(). Value is deleted. | 31 // One possible outcome after Do(). Value is deleted. |
| 32 VALUE_DELETED, | 32 VALUE_DELETED, |
| 33 // One possible outcome after Do(). Value is not found. | 33 // One possible outcome after Do(). Value is not found. |
| (...skipping 23 matching lines...) Expand all Loading... |
| 57 REGSAM wow64_access_; | 57 REGSAM wow64_access_; |
| 58 | 58 |
| 59 DeletionStatus status_; | 59 DeletionStatus status_; |
| 60 | 60 |
| 61 // Previous value. | 61 // Previous value. |
| 62 DWORD previous_type_; | 62 DWORD previous_type_; |
| 63 std::string previous_value_; | 63 std::string previous_value_; |
| 64 }; | 64 }; |
| 65 | 65 |
| 66 #endif // CHROME_INSTALLER_UTIL_DELETE_REG_VALUE_WORK_ITEM_H_ | 66 #endif // CHROME_INSTALLER_UTIL_DELETE_REG_VALUE_WORK_ITEM_H_ |
| OLD | NEW |