hce-node application  1.4.3
HCE Hierarchical Cluster Engine node application
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
DRCETaskRequestSetExecute.hpp
Go to the documentation of this file.
1 
14 #ifndef DRCE_TASK_REQUEST_SET_EXECUTE_HPP
15 #define DRCE_TASK_REQUEST_SET_EXECUTE_HPP
16 
17 #include <iostream>
18 
19 #include "DRCEJsonMessageConst.hpp"
20 #include "DRCESessionOptions.hpp"
21 #include "DRCEResourceLimits.hpp"
22 #include "DRCEFilesList.hpp"
23 #include "DRCETaskRequest.hpp"
24 
25 namespace HCE
26 {
27 namespace drce
28 {
29 //-----------------------------------------------------------------------------
31 {
32 public:
33  explicit DRCETaskRequestSetExecute(const std::string& json="");
36  virtual ~DRCETaskRequestSetExecute(void) {}
37 
40 
41  bool serialize(std::string& json);
42  bool unserialize(const std::string& json);
43 
44  void setSessionOptions(const SessionOptions& sessionOptions_) {sessionOptions=sessionOptions_;}
45  void setSessionOptions(SessionOptions&& sessionOptions_);
46  const SessionOptions& getSessionOptions(void) const {return sessionOptions;}
47 
48  void setCommandLine(const std::string& commandLine_) {commandLine=commandLine_;}
49  std::string getCommandLine(void) const {return commandLine;}
50 
51  void setInputStream(const std::string& inputStream_) {inputStream=inputStream_;}
52  std::string getInputStream(void) const {return inputStream;}
53 
54  void setResourceLimits(const ResourceLimits& resourceLimits_) {resourceLimits=resourceLimits_;}
55  void setResourceLimits(ResourceLimits&& resourceLimits_);
56  const ResourceLimits& getResourceLimits(void) const {return resourceLimits;}
57 
58  void clear(void);
59 private:
60  SessionOptions sessionOptions;
61  std::string commandLine;
62  std::string inputStream;
63  ResourceLimits resourceLimits;
64 
65 private:
66  friend std::istream& operator>>(std::istream& is, DRCETaskRequestSetExecute& rhs);
67  friend std::ostream& operator<<(std::ostream& os, const DRCETaskRequestSetExecute& rhs);
68 };
69 //-----------------------------------------------------------------------------
70 //-----------------------------------------------------------------------------
71 } // namespace drce
72 } // namespace HCE
73 
74 #endif // DRCE_TASK_REQUEST_SET_EXECUTE_HPP