ANNA Suite  2020b
Multipurpose development suite for Telco applications
DatabaseException.hpp
Go to the documentation of this file.
1 // ANNA - Anna is Not Nothingness Anymore //
2 // //
3 // (c) Copyright 2005-2015 Eduardo Ramos Testillano & Francisco Ruiz Rayo //
4 // //
5 // See project site at http://redmine.teslayout.com/projects/anna-suite //
6 // See accompanying file LICENSE or copy at http://www.teslayout.com/projects/public/anna.LICENSE //
7 
8 
9 #ifndef anna_dbms_DatabaseException_hpp
10 #define anna_dbms_DatabaseException_hpp
11 
12 #include <anna/core/Exception.hpp>
13 
14 #include <anna/dbms/ResultCode.hpp>
15 
16 namespace anna {
17 
18 namespace dbms {
19 
23 class DatabaseException : public Exception {
24 public:
33  DatabaseException(const ResultCode& resultCode, const char* fromFile, const int fromLine) :
34  Exception(resultCode.getErrorText(), "DatabaseException", fromFile, fromLine),
35  a_resultCode(resultCode) {}
36 
46  DatabaseException(const std::string& logicalName, const ResultCode& resultCode, const char* fromFile, const int fromLine) :
47  Exception("", "DatabaseException", fromFile, fromLine),
48  a_resultCode(resultCode) {
49  std::string aux(logicalName);
50  aux += ": ";
51  aux += resultCode.getErrorText();
52  setText(aux.c_str());
53  }
54 
58  virtual ~DatabaseException() {;}
59 
65  const ResultCode& getResultCode() const { return a_resultCode; }
66 
67 private:
68  const ResultCode a_resultCode;
69 };
70 
71 }
72 }
73 
74 
75 #endif
76 
void setText(const char *text)
Definition: Exception.hpp:124
const ResultCode & getResultCode() const
Definition: DatabaseException.hpp:65
virtual ~DatabaseException()
Definition: DatabaseException.hpp:58
DatabaseException(const ResultCode &resultCode, const char *fromFile, const int fromLine)
Definition: DatabaseException.hpp:33
Definition: Exception.hpp:20
Definition: DatabaseException.hpp:23
Definition: app.hpp:12
DatabaseException(const std::string &logicalName, const ResultCode &resultCode, const char *fromFile, const int fromLine)
Definition: DatabaseException.hpp:46
Definition: ResultCode.hpp:29
const char * getErrorText() const
Definition: ResultCode.hpp:63