/*------------------------------------------------------------------------------ | |
* Copyright (C) 2003-2006 Ben van Klinken and the CLucene Team | |
* | |
* Distributable under the terms of either the Apache License (Version 2.0) or | |
* the GNU Lesser General Public License, as specified in the COPYING file. | |
------------------------------------------------------------------------------*/ | |
#include "CLucene/StdHeader.h" | |
CL_NS_USE(util) | |
#ifdef _LUCENE_DISABLE_EXCEPTIONS | |
#ifdef _LUCENE_PRAGMA_WARNINGS | |
#pragma message ("==================Lucene exceptions are disabled==================") | |
#else | |
#warning "==================Lucene exceptions are disabled==================" | |
#endif | |
#else | |
CLuceneError::CLuceneError(int num, const char* str, bool ownstr) | |
{ | |
error_number = num; | |
_awhat=STRDUP_AtoA(str); | |
_twhat=NULL; | |
if ( ownstr ) | |
_CLDELETE_CaARRAY(str); | |
} | |
CLuceneError::CLuceneError(const CLuceneError& clone) | |
{ | |
this->error_number = clone.error_number; | |
this->_awhat = NULL; | |
this->_twhat = NULL; | |
if ( clone._awhat != NULL ) | |
this->_awhat = STRDUP_AtoA(clone._awhat); | |
if ( clone._twhat != NULL ) | |
this->_twhat = STRDUP_TtoT(clone._twhat); | |
} | |
CLuceneError::~CLuceneError() throw(){ | |
_CLDELETE_CARRAY(_twhat); | |
_CLDELETE_CaARRAY(_awhat); | |
} | |
char* CLuceneError::what(){ | |
#ifdef _ASCII | |
if ( _twhat != NULL ) | |
return _twhat; | |
#endif | |
if ( _awhat == NULL ) | |
_awhat = STRDUP_TtoA(_twhat); | |
return _awhat; | |
} | |
TCHAR* CLuceneError::twhat(){ | |
#ifdef _ASCII | |
if ( _awhat != NULL ) | |
return _awhat; | |
#endif | |
if ( _twhat == NULL ) | |
_twhat = STRDUP_AtoT(_awhat); | |
return _twhat; | |
} | |
#ifndef _ASCII | |
CLuceneError::CLuceneError(int num, const TCHAR* str, bool ownstr) | |
{ | |
error_number = 0; | |
_awhat=NULL; | |
_twhat=STRDUP_TtoT(str); | |
if ( ownstr ) | |
_CLDELETE_CARRAY(str); | |
} | |
#endif | |
#endif //_LUCENE_DISABLE_EXCEPTIONS |