1 #pragma once
2 
3 #include "status.hpp"
4 
5 #include <memory>
6 
7 namespace ipmi_flash
8 {
9 
10 // This type will just return success upon trigger(), and even before calling
11 // trigger.
12 class SkipAction : public TriggerableActionInterface
13 {
14   public:
15     static std::unique_ptr<TriggerableActionInterface> CreateSkipAction();
16 
17     SkipAction() = default;
18     ~SkipAction() = default;
19 
20     // Disallow copy and assign.
21     SkipAction(const SkipAction&) = delete;
22     SkipAction& operator=(const SkipAction&) = delete;
23     SkipAction(SkipAction&&) = default;
24     SkipAction& operator=(SkipAction&&) = default;
25 
26     bool trigger() override;
27     void abort() override;
28     ActionStatus status() override;
29 };
30 
31 } // namespace ipmi_flash
32