NCBI C++ ToolKit
|
Search Toolkit Book for CSeqDBException
#include <objtools/blast/seqdb_reader/seqdbcommon.hpp>
Public Types | |
enum | EErrCode { eArgErr , eFileErr , eMemErr , eVersionErr , eTaxidErr , eOpenFileErr } |
Errors are classified into one of two types. More... | |
Public Types inherited from CException | |
enum | EErrCode { eInvalid = -1 , eUnknown = 0 } |
Error types that an application can generate. More... | |
enum | EFlags { fConsole = (1 << 0) } |
Miscellaneous generic hints, flags and attributes. More... | |
typedef int | TErrCode |
typedef int | TFlags |
Public Member Functions | |
virtual const char * | GetErrCodeString () const override |
Get a message describing the situation leading to the throw. More... | |
NCBI_EXCEPTION_DEFAULT (CSeqDBException, CException) | |
Include standard NCBI exception behavior. More... | |
Public Member Functions inherited from CException | |
CException (const CDiagCompileInfo &info, const CException *prev_exception, EErrCode err_code, const string &message, EDiagSev severity=eDiag_Error, TFlags flags=0) | |
Constructor. More... | |
CException (const CDiagCompileInfo &info, const CException *prev_exception, const CExceptionArgs< EErrCode > &args, const string &message) | |
CException (const CException &other) | |
Copy constructor. More... | |
void | AddBacklog (const CDiagCompileInfo &info, const string &message, EDiagSev severity=eDiag_Error) |
Add a message to backlog (to re-throw the same exception then). More... | |
void | AddPrevious (const CException *prev_exception) |
void | AddToMessage (const string &add_msg) |
virtual void | Throw (void) const |
Polymorphically (re)throw an exception whose exact type is uncertain. More... | |
virtual const char * | what (void) const noexcept |
Standard report (includes full backlog). More... | |
void | Report (const CDiagCompileInfo &info, const string &title, CExceptionReporter *reporter=0, TDiagPostFlags flags=eDPF_Exception) const |
Report the exception. More... | |
string | ReportThis (TDiagPostFlags flags=eDPF_Exception) const |
Report this exception only. More... | |
string | ReportAll (TDiagPostFlags flags=eDPF_Exception) const |
Report all exceptions. More... | |
void | ReportStd (ostream &out, TDiagPostFlags flags=eDPF_Exception) const |
Report "standard" attributes. More... | |
virtual void | ReportExtra (ostream &out) const |
Report "non-standard" attributes. More... | |
const CStackTrace * | GetStackTrace (void) const |
Get the saved stack trace if available or NULL. More... | |
EDiagSev | GetSeverity (void) const |
Get exception severity. More... | |
CException & | SetSeverity (EDiagSev severity) |
Set exception severity. More... | |
virtual const char * | GetType (void) const |
Get class name as a string. More... | |
const string & | GetFile (void) const |
Get file name used for reporting. More... | |
void | SetModule (const string &module) |
Set module name used for reporting. More... | |
const string & | GetModule (void) const |
Get module name used for reporting. More... | |
void | SetClass (const string &nclass) |
Set class name used for reporting. More... | |
const string & | GetClass (void) const |
Get class name used for reporting. More... | |
void | SetFunction (const string &function) |
Set function name used for reporting. More... | |
const string & | GetFunction (void) const |
Get function name used for reporting. More... | |
int | GetLine (void) const |
Get line number where error occurred. More... | |
TErrCode | GetErrCode (void) const |
Get error code. More... | |
const string & | GetMsg (void) const |
Get message string. More... | |
const CException * | GetPredecessor (void) const |
Get "previous" exception from the backlog. More... | |
bool | HasMainText (void) const |
Check if exception has main text in the chain. More... | |
virtual | ~CException (void) noexcept |
Destructor. More... | |
bool | IsSetFlag (EFlags flag) const |
Check if the flag is set. More... | |
CException & | SetFlag (EFlags flag) |
Set flag (add to other flags) More... | |
CException & | UnsetFlag (EFlags flag) |
Unset flag (other flags are left as is) More... | |
CRequestContext & | GetRequestContext (void) const |
Get the request context in which the exception was thrown. More... | |
void | SetRetriable (ERetriable retriable) |
Set the info about ability to retry an action caused the exception. More... | |
virtual ERetriable | GetRetriable (void) const |
Retrieve info about ability to retry an action caused the exception. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from CException | |
static bool | EnableBackgroundReporting (bool enable) |
Enable background reporting. More... | |
static void | SetStackTraceLevel (EDiagSev level) |
Set severity level for saving and printing stack trace. More... | |
static EDiagSev | GetStackTraceLevel (void) |
Get current severity level for saving and printing stack trace. More... | |
Protected Member Functions inherited from CException | |
CException (const CDiagCompileInfo &info, const CException *prev_exception, const string &message, EDiagSev severity=eDiag_Error, TFlags flags=0) | |
Constructor for derived classes. More... | |
CException (void) | |
Constructor with no arguments. More... | |
virtual void | x_ReportToDebugger (void) const |
Helper method for reporting to the system debugger. More... | |
virtual const CException * | x_Clone (void) const |
Helper method for cloning the exception. More... | |
virtual void | x_Init (const CDiagCompileInfo &info, const string &message, const CException *prev_exception, EDiagSev severity) |
Helper method for initializing exception data. More... | |
virtual void | x_InitArgs (const CExceptionArgs_Base &args) |
Process additional arguments. More... | |
virtual void | x_Assign (const CException &src) |
Helper method for copying exception data. More... | |
virtual void | x_AssignErrCode (const CException &src) |
Helper method for assigning error code. More... | |
virtual void | x_InitErrCode (CException::EErrCode err_code) |
Helper method for initializing error code. More... | |
virtual int | x_GetErrCode (void) const |
Helper method for getting error code. More... | |
void | x_GetStackTrace (void) |
Get and store current stack trace. More... | |
void | x_ThrowSanityCheck (const type_info &expected_type, const char *human_name) const |
Warn if Throw() will end up slicing its invocant. More... | |
This exception class is thrown for SeqDB related errors such as corrupted blast database or alias files, incorrect arguments to SeqDB methods, and failures of SeqDB to accomplish tasks for other reasons. SeqDB may be used in applications with strong robustness requirements, where it is considered better to fail an operation and lose context information, than to terminate with a core dump, and preserve it, so exceptions are the preferred mechanism for most error scenarios. SeqDB still uses assertions in cases where memory corruption is suspected, or cleanup may not be possible.
Definition at line 73 of file seqdbcommon.hpp.
Errors are classified into one of two types.
Definition at line 76 of file seqdbcommon.hpp.
|
inlineoverridevirtual |
Get a message describing the situation leading to the throw.
Reimplemented from CException.
Definition at line 97 of file seqdbcommon.hpp.
References CException::GetErrCodeString().
CSeqDBException::NCBI_EXCEPTION_DEFAULT | ( | CSeqDBException | , |
CException | |||
) |
Include standard NCBI exception behavior.