WRENCH
1.11
Cyberinfrastructure Simulation Workbench
Overview
Installation
Getting Started
WRENCH 101
WRENCH 102
APIs Reference
User
Developer
Internal
include
wrench
exceptions
ExecutionException.h
1
11
#ifndef WRENCH_EXECUTION_EXCEPTION_H
12
#define WRENCH_EXECUTION_EXCEPTION_H
13
14
#include <exception>
15
#include <memory>
16
#include <string>
17
#include <utility>
18
#include <string.h>
19
20
#include "wrench/failure_causes/FailureCause.h"
21
22
namespace
wrench
{
23
24
/***********************/
26
/***********************/
27
33
class
ExecutionException
:
public
std::exception {
34
35
private
:
36
std::shared_ptr<FailureCause> cause;
37
38
public
:
39
44
virtual
const
char
*
what
()
const
throw()
45
{
46
// Without the strdup() below, we get some valgrind warnings...
47
return
strdup(cause->toString().c_str());
48
}
49
54
std::shared_ptr<FailureCause>
getCause
() {
55
return
this->cause;
56
}
57
58
59
/***********************/
61
/***********************/
62
67
explicit
ExecutionException
(std::shared_ptr<FailureCause> cause) {
68
this->cause = std::move(cause);
69
}
70
71
/***********************/
73
/***********************/
74
};
75
76
77
/***********************/
79
/***********************/
80
81
82
}
83
84
85
#endif //WRENCH_EXECUTION_EXCEPTION_H
wrench::ExecutionException::getCause
std::shared_ptr< FailureCause > getCause()
Get the failure cause.
Definition:
ExecutionException.h:54
wrench
Definition:
Action.cpp:28
wrench::ExecutionException
An generic exception that is thrown whenever something unexpected (but simulation-valid) occurs durin...
Definition:
ExecutionException.h:33
wrench::ExecutionException::what
virtual const char * what() const
Get the exception's error message.
Definition:
ExecutionException.h:44