00001 #ifndef EDG_WORKLOAD_USERINTERFACE_CLIENT_JOBEXCEPTIONS_H
00002 #define EDG_WORKLOAD_USERINTERFACE_CLIENT_JOBEXCEPTIONS_H
00003
00004
00005
00006
00007
00008 #include "edg/workload/common/utilities/Exceptions.h"
00009 #include "edg/workload/userinterface/client/exception_codes.h"
00010
00011
00012
00013 USERINTERFACE_NAMESPACE_BEGIN
00022 class JobCollectionException : public edg::workload::common::utilities::Exception {
00023 public:
00026 JobCollectionException (const std::string& file,
00027 int line,
00028 const std::string& method,
00029 int code,
00030 const std::string& exception_name);
00031
00032
00033 };
00034
00038 class JobCollectNoJobException : public JobCollectionException {
00039 public:
00043 JobCollectNoJobException(const std::string& file,
00044 int line,
00045 const std::string& method,
00046 int code,
00047 const std::string& job= "");
00048 };
00054 class JobException : public edg::workload::common::utilities::Exception {
00059 protected:
00060 JobException(const std::string& file,
00061 int line,
00062 const std::string& method,
00063 int code,
00064 const std::string& exception_name);
00065 };
00066
00067
00068
00072 class JobTimeoutException : public JobException {
00073 public:
00077 JobTimeoutException(const std::string& file,
00078 int line,
00079 const std::string& method,
00080 int code);
00081 };
00082
00086 class JobOperationException : public JobException {
00087 public:
00091 JobOperationException(const std::string& file,
00092 int line,
00093 const std::string& method,
00094 int code,
00095 const std::string& reason);
00096 };
00097
00098
00099 USERINTERFACE_NAMESPACE_END }
00100 #endif