WRENCH  1.10
Cyberinfrastructure Simulation Workbench
Overview Installation Getting Started WRENCH 101 WRENCH 102
CloudComputeServiceMessage.h
1 
11 #ifndef WRENCH_CLOUDSERVICEMESSAGE_H
12 #define WRENCH_CLOUDSERVICEMESSAGE_H
13 
14 #include <vector>
15 #include <wrench/services/compute/bare_metal/BareMetalComputeService.h>
16 
17 #include "wrench/services/compute/ComputeServiceMessage.h"
18 
19 namespace wrench {
20 
21  class ComputeService;
22 
23  /***********************/
25  /***********************/
26 
31  protected:
32  CloudComputeServiceMessage(const std::string &name, double payload);
33  };
34 
39  public:
41 
43  std::string answer_mailbox;
44  };
45 
50  public:
52 
54  std::vector<std::string> execution_hosts;
55  };
56 
61  public:
63  unsigned long num_cores,
64  double ram_memory,
65  std::string desired_vm_name,
66  std::map<std::string, std::string> property_list,
67  std::map<std::string, double> messagepayload_list,
68  double payload);
69 
70  public:
72  std::string answer_mailbox;
74  unsigned long num_cores;
76  double ram_memory;
78  std::string desired_vm_name;
80  std::map<std::string, std::string> property_list;
82  std::map<std::string, double> messagepayload_list;
83  };
84 
89  public:
91  std::shared_ptr<FailureCause> failure_cause, double payload);
92 
94  bool success;
96  std::string vm_name;
98  std::shared_ptr<FailureCause> failure_cause;
99  };
100 
105  public:
107  const std::string &vm_name,
108  double payload);
109 
110  public:
112  std::string answer_mailbox;
114  std::string vm_name;
115  };
116 
121  public:
122  CloudComputeServiceShutdownVMAnswerMessage(bool success, std::shared_ptr<FailureCause> failure_cause,
123  double payload);
124 
126  bool success;
128  std::shared_ptr<FailureCause> failure_cause;
129  };
130 
135  public:
137  const std::string &vm_name,
138  const std::string &pm_name,
139  double payload);
140 
141  public:
143  std::string answer_mailbox;
145  std::string vm_name;
147  std::string pm_name;
148  };
149 
154  public:
156  std::shared_ptr<BareMetalComputeService> cs,
157  std::shared_ptr<FailureCause> failure_cause,
158  double payload);
159 
161  bool success;
163  std::shared_ptr<BareMetalComputeService> cs;
165  std::shared_ptr<FailureCause> failure_cause;
166  };
167 
172  public:
174  const std::string &vm_name,
175  double payload);
176 
177  public:
179  std::string answer_mailbox;
181  std::string vm_name;
182  };
183 
188  public:
190  std::shared_ptr<FailureCause> failure_cause,
191  double payload);
192 
194  bool success;
196  std::shared_ptr<FailureCause> failure_cause;
197  };
198 
203  public:
205  const std::string &vm_name,
206  double payload);
207 
208  public:
210  std::string answer_mailbox;
212  std::string vm_name;
213  };
214 
219  public:
221  std::shared_ptr<FailureCause> failure_cause,
222  double payload);
223 
225  bool success;
227  std::shared_ptr<FailureCause> failure_cause;
228  };
229 
230 
235  public:
237  const std::string &vm_name,
238  double payload);
239 
240  public:
242  std::string answer_mailbox;
244  std::string vm_name;
245  };
246 
251  public:
253  std::shared_ptr<FailureCause> failure_cause,
254  double payload);
255 
257  bool success;
259  std::shared_ptr<FailureCause> failure_cause;
260  };
261 
262  /***********************/
264  /***********************/
265 }
266 
267 #endif //WRENCH_CLOUDSERVICEMESSAGE_H
wrench::CloudComputeServiceDestroyVMAnswerMessage
A message sent by a CloudComputeService in answer to a VM destroy request.
Definition: CloudComputeServiceMessage.h:250
wrench::CloudComputeServiceStartVMRequestMessage::vm_name
std::string vm_name
The name of the VM to start.
Definition: CloudComputeServiceMessage.h:145
wrench::CloudComputeServiceDestroyVMRequestMessage
A message sent to a CloudComputeService to request a VM destruction.
Definition: CloudComputeServiceMessage.h:234
wrench::CloudComputeServiceCreateVMRequestMessage
A message sent to a CloudComputeService to request a VM creation.
Definition: CloudComputeServiceMessage.h:60
wrench::CloudComputeServiceCreateVMAnswerMessage::CloudComputeServiceCreateVMAnswerMessage
CloudComputeServiceCreateVMAnswerMessage(bool success, std::string &vm_name, std::shared_ptr< FailureCause > failure_cause, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:100
wrench::CloudComputeServiceSuspendVMAnswerMessage
A message sent by a CloudComputeService in answer to a VM suspend request.
Definition: CloudComputeServiceMessage.h:187
wrench::CloudComputeServiceCreateVMAnswerMessage
A message sent by a CloudComputeService in answer to a VM creation request.
Definition: CloudComputeServiceMessage.h:88
wrench::CloudComputeServiceStartVMAnswerMessage::success
bool success
Whether the VM start was successful or not.
Definition: CloudComputeServiceMessage.h:161
wrench::SimulationMessage::name
std::string name
The message name.
Definition: SimulationMessage.h:37
wrench::CloudComputeServiceCreateVMRequestMessage::ram_memory
double ram_memory
The VM RAM memory_manager_service capacity (0 means "use all memory_manager_service available on the ...
Definition: CloudComputeServiceMessage.h:76
wrench::ComputeServiceMessage
Top-level class for messages received/sent by a ComputeService.
Definition: ComputeServiceMessage.h:32
wrench::CloudComputeServiceCreateVMAnswerMessage::vm_name
std::string vm_name
The VM name if success.
Definition: CloudComputeServiceMessage.h:96
wrench::CloudComputeServiceShutdownVMRequestMessage::vm_name
std::string vm_name
The name of the new VM host.
Definition: CloudComputeServiceMessage.h:114
wrench::CloudComputeServiceStartVMRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which the answer message should be sent.
Definition: CloudComputeServiceMessage.h:143
wrench::CloudComputeServiceShutdownVMAnswerMessage::CloudComputeServiceShutdownVMAnswerMessage
CloudComputeServiceShutdownVMAnswerMessage(bool success, std::shared_ptr< FailureCause > failure_cause, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:137
wrench::CloudComputeServiceCreateVMRequestMessage::desired_vm_name
std::string desired_vm_name
The desired name for the VM ("" means "pick for me")
Definition: CloudComputeServiceMessage.h:78
wrench::CloudComputeServiceDestroyVMAnswerMessage::failure_cause
std::shared_ptr< FailureCause > failure_cause
The failure cause (or nullptr if success)
Definition: CloudComputeServiceMessage.h:259
wrench::CloudComputeServiceShutdownVMRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which the answer message should be sent.
Definition: CloudComputeServiceMessage.h:112
wrench::CloudComputeServiceCreateVMRequestMessage::property_list
std::map< std::string, std::string > property_list
A property list for the bare_metal that will run on the VM ({} means "use all defaults")
Definition: CloudComputeServiceMessage.h:80
wrench::CloudComputeServiceDestroyVMAnswerMessage::CloudComputeServiceDestroyVMAnswerMessage
CloudComputeServiceDestroyVMAnswerMessage(bool success, std::shared_ptr< FailureCause > failure_cause, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:284
wrench::CloudComputeServiceStartVMRequestMessage
A message sent to a CloudComputeService to request a VM start.
Definition: CloudComputeServiceMessage.h:134
wrench::CloudComputeServiceResumeVMRequestMessage::vm_name
std::string vm_name
The name of the VM host.
Definition: CloudComputeServiceMessage.h:212
wrench::CloudComputeServiceStartVMRequestMessage::pm_name
std::string pm_name
The name of the physical host on which to start the VM (or "" if up to the service")
Definition: CloudComputeServiceMessage.h:147
wrench::CloudComputeServiceResumeVMRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which the answer message should be sent.
Definition: CloudComputeServiceMessage.h:210
wrench::CloudComputeServiceResumeVMRequestMessage
A message sent to a CloudComputeService to request a VM resume.
Definition: CloudComputeServiceMessage.h:202
wrench::CloudComputeServiceSuspendVMRequestMessage::CloudComputeServiceSuspendVMRequestMessage
CloudComputeServiceSuspendVMRequestMessage(const std::string &answer_mailbox, const std::string &vm_name, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:192
wrench::CloudComputeServiceStartVMAnswerMessage::cs
std::shared_ptr< BareMetalComputeService > cs
The VM's compute service.
Definition: CloudComputeServiceMessage.h:163
wrench::CloudComputeServiceStartVMAnswerMessage
A message sent by a CloudComputeService in answer to a VM start request.
Definition: CloudComputeServiceMessage.h:153
wrench
Definition: Alarm.cpp:20
wrench::CloudComputeServiceGetExecutionHostsRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which a reply should be sent.
Definition: CloudComputeServiceMessage.h:43
wrench::CloudComputeServiceSuspendVMAnswerMessage::success
bool success
Whether the VM suspend was successful or not.
Definition: CloudComputeServiceMessage.h:194
wrench::CloudComputeServiceShutdownVMAnswerMessage::success
bool success
Whether the VM shutdown was successful or not.
Definition: CloudComputeServiceMessage.h:126
wrench::CloudComputeServiceShutdownVMRequestMessage::CloudComputeServiceShutdownVMRequestMessage
CloudComputeServiceShutdownVMRequestMessage(const std::string &answer_mailbox, const std::string &vm_name, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:116
wrench::CloudComputeServiceResumeVMAnswerMessage
A message sent by a CloudComputeService in answer to a VM resume request.
Definition: CloudComputeServiceMessage.h:218
wrench::CloudComputeServiceResumeVMAnswerMessage::success
bool success
Whether the VM resume was successful or not.
Definition: CloudComputeServiceMessage.h:225
wrench::CloudComputeServiceStartVMAnswerMessage::CloudComputeServiceStartVMAnswerMessage
CloudComputeServiceStartVMAnswerMessage(bool success, std::shared_ptr< BareMetalComputeService > cs, std::shared_ptr< FailureCause > failure_cause, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:176
wrench::CloudComputeServiceResumeVMRequestMessage::CloudComputeServiceResumeVMRequestMessage
CloudComputeServiceResumeVMRequestMessage(const std::string &answer_mailbox, const std::string &vm_name, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:227
wrench::SimulationMessage::payload
double payload
The message size in bytes.
Definition: SimulationMessage.h:39
wrench::CloudComputeServiceSuspendVMRequestMessage
A message sent to a CloudComputeService to request a VM suspend.
Definition: CloudComputeServiceMessage.h:171
wrench::CloudComputeServiceCreateVMRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which the answer message should be sent.
Definition: CloudComputeServiceMessage.h:72
wrench::CloudComputeServiceShutdownVMRequestMessage
A message sent to a CloudComputeService to request a VM shutdown.
Definition: CloudComputeServiceMessage.h:104
wrench::CloudComputeServiceGetExecutionHostsRequestMessage::CloudComputeServiceGetExecutionHostsRequestMessage
CloudComputeServiceGetExecutionHostsRequestMessage(const std::string &answer_mailbox, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:34
wrench::CloudComputeServiceSuspendVMRequestMessage::vm_name
std::string vm_name
The name of the new VM host.
Definition: CloudComputeServiceMessage.h:181
wrench::CloudComputeServiceSuspendVMRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which the answer message should be sent.
Definition: CloudComputeServiceMessage.h:179
wrench::CloudComputeServiceSuspendVMAnswerMessage::CloudComputeServiceSuspendVMAnswerMessage
CloudComputeServiceSuspendVMAnswerMessage(bool success, std::shared_ptr< FailureCause > failure_cause, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:213
wrench::CloudComputeServiceShutdownVMAnswerMessage::failure_cause
std::shared_ptr< FailureCause > failure_cause
The cause of the failure, or nullptr on success.
Definition: CloudComputeServiceMessage.h:128
wrench::CloudComputeServiceCreateVMRequestMessage::num_cores
unsigned long num_cores
The number of cores the service can use (0 means "use as many as there are cores on the host")
Definition: CloudComputeServiceMessage.h:74
wrench::CloudComputeServiceResumeVMAnswerMessage::failure_cause
std::shared_ptr< FailureCause > failure_cause
The failure cause (or nullptr if success)
Definition: CloudComputeServiceMessage.h:227
wrench::CloudComputeServiceDestroyVMAnswerMessage::success
bool success
Whether the VM suspend was successful or not.
Definition: CloudComputeServiceMessage.h:257
wrench::CloudComputeServiceStartVMAnswerMessage::failure_cause
std::shared_ptr< FailureCause > failure_cause
The failure cause (or nullptr if success)
Definition: CloudComputeServiceMessage.h:165
wrench::CloudComputeServiceMessage
Top-level class for messages received/sent by a CloudComputeService.
Definition: CloudComputeServiceMessage.h:30
wrench::CloudComputeServiceStartVMRequestMessage::CloudComputeServiceStartVMRequestMessage
CloudComputeServiceStartVMRequestMessage(const std::string &answer_mailbox, const std::string &vm_name, const std::string &pm_name, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:152
wrench::CloudComputeServiceResumeVMAnswerMessage::CloudComputeServiceResumeVMAnswerMessage
CloudComputeServiceResumeVMAnswerMessage(bool success, std::shared_ptr< FailureCause > failure_cause, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:248
wrench::CloudComputeServiceDestroyVMRequestMessage::CloudComputeServiceDestroyVMRequestMessage
CloudComputeServiceDestroyVMRequestMessage(const std::string &answer_mailbox, const std::string &vm_name, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:263
wrench::CloudComputeServiceSuspendVMAnswerMessage::failure_cause
std::shared_ptr< FailureCause > failure_cause
The failure cause (or nullptr if success)
Definition: CloudComputeServiceMessage.h:196
wrench::CloudComputeServiceGetExecutionHostsAnswerMessage::execution_hosts
std::vector< std::string > execution_hosts
The list of execution hosts.
Definition: CloudComputeServiceMessage.h:54
wrench::CloudComputeServiceShutdownVMAnswerMessage
A message sent by a CloudComputeService in answer to a VM shutdown request.
Definition: CloudComputeServiceMessage.h:120
wrench::CloudComputeServiceDestroyVMRequestMessage::answer_mailbox
std::string answer_mailbox
The mailbox to which the answer message should be sent.
Definition: CloudComputeServiceMessage.h:242
wrench::CloudComputeServiceGetExecutionHostsAnswerMessage
A message sent by a CloudComputeService in answer to a list of execution hosts request.
Definition: CloudComputeServiceMessage.h:49
wrench::CloudComputeServiceDestroyVMRequestMessage::vm_name
std::string vm_name
The name of the VM host.
Definition: CloudComputeServiceMessage.h:244
wrench::CloudComputeServiceCreateVMRequestMessage::messagepayload_list
std::map< std::string, double > messagepayload_list
A message payload list for the bare_metal that will run on the VM ({} means "use all defaults")
Definition: CloudComputeServiceMessage.h:82
wrench::CloudComputeServiceGetExecutionHostsAnswerMessage::CloudComputeServiceGetExecutionHostsAnswerMessage
CloudComputeServiceGetExecutionHostsAnswerMessage(std::vector< std::string > &execution_hosts, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:53
wrench::CloudComputeServiceGetExecutionHostsRequestMessage
A message sent to a CloudComputeService to request the list of its execution hosts.
Definition: CloudComputeServiceMessage.h:38
wrench::CloudComputeServiceCreateVMAnswerMessage::failure_cause
std::shared_ptr< FailureCause > failure_cause
The cause of the failure, or nullptr on success.
Definition: CloudComputeServiceMessage.h:98
wrench::CloudComputeServiceCreateVMAnswerMessage::success
bool success
Whether the VM creation was successful or not.
Definition: CloudComputeServiceMessage.h:94
wrench::CloudComputeServiceMessage::CloudComputeServiceMessage
CloudComputeServiceMessage(const std::string &name, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:22
wrench::CloudComputeServiceCreateVMRequestMessage::CloudComputeServiceCreateVMRequestMessage
CloudComputeServiceCreateVMRequestMessage(const std::string &answer_mailbox, unsigned long num_cores, double ram_memory, std::string desired_vm_name, std::map< std::string, std::string > property_list, std::map< std::string, double > messagepayload_list, double payload)
Constructor.
Definition: CloudComputeServiceMessage.cpp:72