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