Pakman
TaskHandler.h
1 #ifndef TASKHANDLER_H
2 #define TASKHANDLER_H
3 
4 #include <string>
5 
12 {
13  public:
14 
16  enum state_t { pending, finished };
17 
22  TaskHandler(const std::string& input_string);
23 
26 
28  ~TaskHandler() = default;
29 
31  state_t getState() const;
32 
34  bool isPending() const;
35 
37  bool isFinished() const;
38 
40  bool didErrorOccur() const;
41 
43  int getErrorCode() const;
44 
46  std::string getInputString() const;
47 
49  std::string getOutputString() const;
50 
58  void recordOutputAndErrorCode(const std::string& output_string,
59  int error_code);
60 
61  private:
62 
63  // Initial state is pending
64  state_t m_state = pending;
65 
66  // Input string
67  const std::string m_input_string;
68 
69  // Output string, only valid in finished state
70  std::string m_output_string;
71 
72  // Error code, only valid in finished state
73  int m_error_code = -1;
74 };
75 
76 #endif // TASKHANDLER_H
std::string getOutputString() const
Definition: TaskHandler.cc:53
bool isFinished() const
Definition: TaskHandler.cc:31
bool isPending() const
Definition: TaskHandler.cc:25
~TaskHandler()=default
std::string getInputString() const
Definition: TaskHandler.cc:46
void recordOutputAndErrorCode(const std::string &output_string, int error_code)
Definition: TaskHandler.cc:67
bool didErrorOccur() const
Definition: TaskHandler.cc:37
int getErrorCode() const
Definition: TaskHandler.cc:60
state_t getState() const
Definition: TaskHandler.cc:19
TaskHandler(const std::string &input_string)
Definition: TaskHandler.cc:4