OW_Exception.hpp File Reference

#include "OW_config.h"
#include "OW_AutoPtr.hpp"
#include <iosfwd>
#include <exception>
#include <new>
#include <cerrno>

Include dependency graph for OW_Exception.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  OW_NAMESPACE
namespace  OW_NAMESPACE::ExceptionDetail

Classes

class  OW_NAMESPACE::Exception
 This class is the base of all exceptions thrown by OpenWBEM code. More...
class  OW_NAMESPACE::ExceptionDetail::FormatMsg
struct  OW_NAMESPACE::ExceptionDetail::Errno< exType >

Defines

#define OW_THROW(exType, msg)   throw exType(__FILE__, __LINE__, (msg))
 Throw an exception using __FILE__ and __LINE__.
#define OW_THROWL(exType, line, msg)   throw exType(__FILE__, (line), (msg))
 This macro is deprecated in 3.1.0.
#define OW_THROW_SUBEX(exType, msg, subex)
 Throw an exception using __FILE__ and __LINE__.
#define OW_THROW_ERR(exType, msg, err)   throw exType(__FILE__, __LINE__, (msg), (err))
 Throw an exception using __FILE__ and __LINE__.
#define OW_THROW_ERRNO(exType)   OW_THROW_ERRNO1(exType, errno)
 Throw an exception using __FILE__, __LINE__, errno and strerror(errno).
#define OW_THROW_ERRNO1(exType, errnum)   throw ExceptionDetail::Errno< exType >::simple(__FILE__, __LINE__, (errnum))
 Throw an exception using __FILE__, __LINE__, errnum and strerror(errnum).
#define OW_THROW_ERRNO_MSG(exType, msg)   OW_THROW_ERRNO_MSG1(exType, (msg), errno)
 Throw an exception using __FILE__, __LINE__, errno and strerror(errno).
#define OW_THROW_ERRNO_MSG1(exType, msg, errnum)
 Throw an exception using __FILE__, __LINE__, errnum and strerror(errnum).
#define OW_THROW_ERR_SUBEX(exType, msg, err, subex)   throw exType(__FILE__, __LINE__, (msg), (err), &(subex))
 Throw an exception using __FILE__ and __LINE__.
#define OW_DECLARE_EXCEPTION2(NAME, BASE)
 Declare a new exception class named <NAME>Exception that derives from <BASE>.
#define OW_DECLARE_APIEXCEPTION2(NAME, BASE, LINKAGE_SPEC)
 Declare a new exception class named <NAME>Exception that derives from <BASE>.
#define OW_DECLARE_EXCEPTION(NAME)   OW_DECLARE_EXCEPTION2(NAME, ::OW_NAMESPACE::Exception)
 Declare a new exception class named <NAME>Exception that derives from Exception This macro is typically used in a header file.
#define OW_DECLARE_APIEXCEPTION(NAME, LINKAGE_SPEC)   OW_DECLARE_APIEXCEPTION2(NAME, ::OW_NAMESPACE::Exception, LINKAGE_SPEC)
 Declare a new exception class named <NAME>Exception that derives from Exception This macro is typically used in a header file.
#define OW_DEFINE_EXCEPTION2(NAME, BASE)
 Define a new exception class named <NAME>Exception that derives from <BASE>.
#define OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, BASE, SUB_CLASS_ID)
 Define a new exception class named <NAME>Exception that derives from <BASE>.
#define OW_DEFINE_EXCEPTION(NAME)   OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, ::OW_NAMESPACE::Exception, ::OW_NAMESPACE::Exception::UNKNOWN_SUBCLASS_ID)
 Define a new exception class named <NAME>Exception that derives from Exception.
#define OW_DEFINE_EXCEPTION_WITH_ID(NAME)   OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, ::OW_NAMESPACE::Exception, ::OW_NAMESPACE::ExceptionIds::NAME##ExceptionId)
 Define a new exception class named <NAME>Exception that derives from Exception.
#define OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID(NAME, BASE)   OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, BASE, ::OW_NAMESPACE::ExceptionIds::NAME##ExceptionId)
 Define a new exception class named <NAME>Exception that derives from <BASE>.

Functions

void OW_NAMESPACE::ExceptionDetail::portable_strerror_r (int errnum, char *buf, unsigned n)
std::ostream & OW_NAMESPACE::operator<< (std::ostream &os, const Exception &e)
 Writes the exception object to the stream in the form: <file>: <line> <type>: <message>.

Variables

unsigned const OW_NAMESPACE::ExceptionDetail::BUFSZ = 1024


Define Documentation

#define OW_DECLARE_APIEXCEPTION NAME,
LINKAGE_SPEC   )     OW_DECLARE_APIEXCEPTION2(NAME, ::OW_NAMESPACE::Exception, LINKAGE_SPEC)
 

Declare a new exception class named <NAME>Exception that derives from Exception This macro is typically used in a header file.

Parameters:
NAME The name of the new class (Exception will be postfixed)
LINKAGE_SPEC the linkage specifier. If the OW_DEFINE_EXCEPTION is part of libopenwbem this would OW_COMMON_API...

Definition at line 381 of file OW_Exception.hpp.

#define OW_DECLARE_APIEXCEPTION2 NAME,
BASE,
LINKAGE_SPEC   ) 
 

Value:

class LINKAGE_SPEC NAME##Exception : public BASE \
{ \
public: \
   NAME##Exception(const char* file, int line, const char* msg, int errorCode = ::OW_NAMESPACE::Exception::UNKNOWN_ERROR_CODE, const Exception* otherException = 0, int subClassId = ::OW_NAMESPACE::Exception::UNKNOWN_SUBCLASS_ID); \
   virtual ~NAME##Exception() throw(); \
   virtual const char* type() const; \
   virtual NAME##Exception* clone() const; \
};
Declare a new exception class named <NAME>Exception that derives from <BASE>.

This macro is typically used in a header file. The exception class declaration will be prefaced with the linkage_spec parm. This allows the use of OW_COMMON_API when declaring exceptions. Example: OW_DECLARE_APIEXCEPTION(Bogus, CIMException, OW_COMMON_API)

Parameters:
NAME The name of the new class (Exception will be postfixed)
BASE The base class.
LINKAGE_SPEC The linkage specifier for the exception class.

Definition at line 352 of file OW_Exception.hpp.

#define OW_DECLARE_EXCEPTION NAME   )     OW_DECLARE_EXCEPTION2(NAME, ::OW_NAMESPACE::Exception)
 

Declare a new exception class named <NAME>Exception that derives from Exception This macro is typically used in a header file.

Parameters:
NAME The name of the new class (Exception will be postfixed)

Definition at line 371 of file OW_Exception.hpp.

#define OW_DECLARE_EXCEPTION2 NAME,
BASE   ) 
 

Value:

class NAME##Exception : public BASE \
{ \
public: \
   NAME##Exception(const char* file, int line, const char* msg, int errorCode = ::OW_NAMESPACE::Exception::UNKNOWN_ERROR_CODE, const Exception* otherException = 0, int subClassId = ::OW_NAMESPACE::Exception::UNKNOWN_SUBCLASS_ID); \
   virtual ~NAME##Exception() throw(); \
   virtual const char* type() const; \
   virtual NAME##Exception* clone() const; \
};
Declare a new exception class named <NAME>Exception that derives from <BASE>.

This macro is typically used in a header file.

Parameters:
NAME The name of the new class (Exception will be postfixed)
BASE The base class.

Definition at line 331 of file OW_Exception.hpp.

#define OW_DEFINE_EXCEPTION NAME   )     OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, ::OW_NAMESPACE::Exception, ::OW_NAMESPACE::Exception::UNKNOWN_SUBCLASS_ID)
 

Define a new exception class named <NAME>Exception that derives from Exception.

The new class will use UNKNOWN_SUBCLASS_ID for the subclass id. Use this macro for internal implementation exceptions that don't have an id. This macro is typically used in a cpp file.

Parameters:
NAME The name of the new class (Exception will be postfixed)

Definition at line 422 of file OW_Exception.hpp.

#define OW_DEFINE_EXCEPTION2 NAME,
BASE   ) 
 

Value:

NAME##Exception::NAME##Exception(const char* file, int line, const char* msg, int errorCode, const ::OW_NAMESPACE::Exception* otherException, int subClassId) \
   : BASE(file, line, msg, errorCode, otherException, subClassId) {} \
NAME##Exception::~NAME##Exception() throw() { } \
NAME##Exception* NAME##Exception::clone() const { return new(std::nothrow) NAME##Exception(*this); } \
const char* NAME##Exception::type() const { return #NAME "Exception"; }
Define a new exception class named <NAME>Exception that derives from <BASE>.

The new class will use UNKNOWN_SUBCLASS_ID for the subclass id. This macro is typically used in a cpp file.

Parameters:
NAME The name of the new class (Exception will be postfixed)
BASE The base class.

Definition at line 391 of file OW_Exception.hpp.

#define OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID NAME,
BASE   )     OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, BASE, ::OW_NAMESPACE::ExceptionIds::NAME##ExceptionId)
 

Define a new exception class named <NAME>Exception that derives from <BASE>.

The new class will use ExceptionIds::<NAME>ExceptionId for the subclass id. Use this macro to create public exceptions that have an id in the OW_NAMESPACE::ExceptionIds namespace that will derive from BASE This macro is typically used in a cpp file.

Parameters:
NAME The name of the new class (Exception will be postfixed)
BASE The base class.

Definition at line 443 of file OW_Exception.hpp.

#define OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX NAME,
BASE,
SUB_CLASS_ID   ) 
 

Value:

NAME##Exception::NAME##Exception(const char* file, int line, const char* msg, int errorCode, const ::OW_NAMESPACE::Exception* otherException, int subClassId) \
   : BASE(file, line, msg, errorCode, otherException, subClassId == ::OW_NAMESPACE::Exception::UNKNOWN_SUBCLASS_ID ? (SUB_CLASS_ID) : subClassId) {} \
NAME##Exception::~NAME##Exception() throw() { } \
NAME##Exception* NAME##Exception::clone() const { return new(std::nothrow) NAME##Exception(*this); } \
const char* NAME##Exception::type() const { return #NAME "Exception"; }
Define a new exception class named <NAME>Exception that derives from <BASE>.

The new class will use SUB_CLASS_ID for the subclass id. This macro is typically used in a cpp file.

Parameters:
NAME The name of the new class (Exception will be postfixed)
BASE The base class.
SUB_CLASS_ID The subclass id.

Definition at line 407 of file OW_Exception.hpp.

#define OW_DEFINE_EXCEPTION_WITH_ID NAME   )     OW_DEFINE_EXCEPTION_WITH_BASE_AND_ID_AUX(NAME, ::OW_NAMESPACE::Exception, ::OW_NAMESPACE::ExceptionIds::NAME##ExceptionId)
 

Define a new exception class named <NAME>Exception that derives from Exception.

The new class will use ExceptionIds::<NAME>ExceptionId for the subclass id. Use this macro to create public exceptions that have an id in the OW_NAMESPACE::ExceptionIds namespace that derive from Exception This macro is typically used in a cpp file.

Parameters:
NAME The name of the new class (Exception will be postfixed)

Definition at line 432 of file OW_Exception.hpp.

#define OW_THROW exType,
msg   )     throw exType(__FILE__, __LINE__, (msg))
 

Throw an exception using __FILE__ and __LINE__.

If applicable, OW_THROW_ERR should be used instead of this macro.

Parameters:
exType The type of the exception
msg The exception message. A string that will be copied.

Definition at line 254 of file OW_Exception.hpp.

Referenced by OW_NAMESPACE::CIMOMEnvironment::_createIndicationServer(), OW_NAMESPACE::_ResolveProperty(), OW_NAMESPACE::WQLCompile::_ResolveProperty(), OW_NAMESPACE::EmbeddedCIMOMEnvironment::_sortServicesForDependencies(), OW_NAMESPACE::CIMOMEnvironment::_sortServicesForDependencies(), OW_NAMESPACE::ServerSocketImpl::accept(), OW_NAMESPACE::NonRecursiveMutex::acquire(), OW_NAMESPACE::Mutex::acquire(), OW_NAMESPACE::IndexImpl::add(), OW_NAMESPACE::HDBNode::addChild(), OW_NAMESPACE::HDBHandle::addChild(), OW_NAMESPACE::HDB::addIndexEntry(), OW_NAMESPACE::HDBHandle::addRootNode(), OW_NAMESPACE::SocketAddress::allocEmptyAddress(), OW_NAMESPACE::asKeyString(), OW_NAMESPACE::badDateTime(), OW_NAMESPACE::HTTPUtils::base64Decode(), OW_NAMESPACE::HTTPUtils::base64Encode(), OW_NAMESPACE::HTTPChunkedIStream::buildTrailerMap(), OW_NAMESPACE::ThreadImpl::cancel(), OW_NAMESPACE::checkError(), OW_NAMESPACE::HDB::checkFile(), OW_NAMESPACE::AssocDb::checkFile(), OW_NAMESPACE::HTTPChunkedIStream::checkForError(), OW_NAMESPACE::HTTPClient::checkResponse(), OW_NAMESPACE::checkStream(), OW_NAMESPACE::InstanceRepository::classHasInstances(), OW_NAMESPACE::MOF::compileInstancesFromMOF(), OW_NAMESPACE::MOF::compileMOF(), OW_NAMESPACE::Condition::Condition(), OW_NAMESPACE::NonRecursiveMutex::conditionPostWait(), OW_NAMESPACE::NonRecursiveMutex::conditionPreWait(), OW_NAMESPACE::HTTPClient::convertToFiniteStream(), OW_NAMESPACE::CIMOMLocator::createCIMOMLocator(), OW_NAMESPACE::LocalAuthenticationCommon::createFile(), OW_NAMESPACE::HDB::createFile(), OW_NAMESPACE::ProviderIFCLoaderBase::createProviderIFCFromLib(), OW_NAMESPACE::HTTPUtils::date(), OW_NAMESPACE::HTTPUtils::decodeBasicCreds(), OW_NAMESPACE::InstanceRepository::deleteClass(), OW_NAMESPACE::DigestAuthentication::DigestAuthentication(), OWBI1::BI1ProviderIFC::doGetAssociatorProvider(), OW_NAMESPACE::ProviderIFCBaseIFC::doGetAssociatorProvider(), OW_NAMESPACE::PerlProviderIFC::doGetAssociatorProvider(), OW_NAMESPACE::NPIProviderIFC::doGetAssociatorProvider(), OW_NAMESPACE::CppProviderIFC::doGetAssociatorProvider(), OW_NAMESPACE::CMPIProviderIFC::doGetAssociatorProvider(), OW_NAMESPACE::ProviderIFCBaseIFC::doGetIndicationProvider(), OW_NAMESPACE::PerlProviderIFC::doGetIndicationProvider(), OW_NAMESPACE::NPIProviderIFC::doGetIndicationProvider(), OW_NAMESPACE::CMPIProviderIFC::doGetIndicationProvider(), OWBI1::BI1ProviderIFC::doGetInstanceProvider(), OW_NAMESPACE::ProviderIFCBaseIFC::doGetInstanceProvider(), OW_NAMESPACE::PerlProviderIFC::doGetInstanceProvider(), OW_NAMESPACE::NPIProviderIFC::doGetInstanceProvider(), OW_NAMESPACE::CppProviderIFC::doGetInstanceProvider(), OW_NAMESPACE::CMPIProviderIFC::doGetInstanceProvider(), OWBI1::BI1ProviderIFC::doGetMethodProvider(), OW_NAMESPACE::ProviderIFCBaseIFC::doGetMethodProvider(), OW_NAMESPACE::PerlProviderIFC::doGetMethodProvider(), OW_NAMESPACE::NPIProviderIFC::doGetMethodProvider(), OW_NAMESPACE::CppProviderIFC::doGetMethodProvider(), OW_NAMESPACE::CMPIProviderIFC::doGetMethodProvider(), OWBI1::BI1ProviderIFC::doGetSecondaryInstanceProvider(), OW_NAMESPACE::ProviderIFCBaseIFC::doGetSecondaryInstanceProvider(), OW_NAMESPACE::CppProviderIFC::doGetSecondaryInstanceProvider(), OW_NAMESPACE::HTTPClient::endRequest(), OW_NAMESPACE::MetaRepository::enumQualifierTypes(), OW_NAMESPACE::WQLSelectStatement::evaluateWhereClause(), OW_NAMESPACE::MOF::ParserErrorHandlerIFC::fatalError(), OW_NAMESPACE::FileAppender::FileAppender(), OW_NAMESPACE::IndexImpl::find(), OW_NAMESPACE::IndexImpl::findFirst(), OW_NAMESPACE::HDB::findFirstIndexEntry(), OW_NAMESPACE::HDB::findIndexEntry(), OW_NAMESPACE::IndexImpl::findNext(), OW_NAMESPACE::HDB::findNextIndexEntry(), OW_NAMESPACE::IndexImpl::findPrev(), OW_NAMESPACE::HDB::findPrevIndexEntry(), OW_NAMESPACE::MOF::Compiler::fixParsedString(), OW_NAMESPACE::fromHexStr(), OW_NAMESPACE::CIMValue::CIMValueImpl::get(), OW_NAMESPACE::WQLOperand::getBooleanValue(), OW_NAMESPACE::InstanceRepository::getCIMInstances(), OW_NAMESPACE::EmbeddedCIMOMEnvironment::getCIMOMHandle(), OW_NAMESPACE::CIMOMEnvironment::getCIMOMHandle(), OW_NAMESPACE::HTTPClient::getCredentialsIfNecessary(), OW_NAMESPACE::WQLOperand::getDoubleValue(), OW_NAMESPACE::PopenStreamsImpl::getExitStatus(), OW_NAMESPACE::HTTPClient::getFeatures(), OW_NAMESPACE::FileSystem::getFileContents(), OW_NAMESPACE::SocketUtils::getFullyQualifiedHostName(), OW_NAMESPACE::HDB::getHandle(), OW_NAMESPACE::InstanceRepository::getInstanceNames(), OW_NAMESPACE::WQLOperand::getIntegerValue(), OW_NAMESPACE::CIMObjectPath::getKeyT(), OW_NAMESPACE::CryptographicRandomNumber::getNextNumber(), OW_NAMESPACE::WQLOperand::getPropertyName(), OW_NAMESPACE::EmbeddedCIMOMEnvironment::getProviderManager(), OW_NAMESPACE::CIMOMEnvironment::getProviderManager(), OW_NAMESPACE::CIMProperty::getQualifierT(), OW_NAMESPACE::RWLocker::getReadLock(), OW_NAMESPACE::OperationContext::getStringData(), OW_NAMESPACE::WQLOperand::getStringValue(), OW_NAMESPACE::CIMQualifier::getValueT(), OW_NAMESPACE::CIMProperty::getValueT(), OW_NAMESPACE::EmbeddedCIMOMEnvironment::getWQLFilterCIMOMHandle(), OW_NAMESPACE::CIMOMEnvironment::getWQLFilterCIMOMHandle(), OW_NAMESPACE::EmbeddedCIMOMEnvironment::getWQLRef(), OW_NAMESPACE::CIMOMEnvironment::getWQLRef(), OW_NAMESPACE::RWLocker::getWriteLock(), OW_NAMESPACE::SelectEngine::go(), OW_NAMESPACE::ThreadCounter::incThreadCount(), OW_NAMESPACE::HTTPServer::init(), OW_NAMESPACE::AuthManager::init(), OW_NAMESPACE::LocalAuthenticationCommon::initializeDir(), OW_NAMESPACE::isCompatible(), OW_NAMESPACE::Thread::join(), OW_NAMESPACE::ConfigFile::loadConfigFile(), OW_NAMESPACE::ProviderIFCLoader::loadIFCs(), OWBI1::BI1ProviderIFC::loadProviders(), OW_NAMESPACE::CppProviderIFC::loadProviders(), OW_NAMESPACE::DateTime::localTimeAndOffset(), OW_NAMESPACE::Mutex::Mutex(), OW_NAMESPACE::NonRecursiveMutex::NonRecursiveMutex(), OW_NAMESPACE::NwIface::NwIface(), OW_NAMESPACE::PosixUnnamedPipe::open(), OW_NAMESPACE::IndexImpl::open(), OW_NAMESPACE::HDB::open(), OW_NAMESPACE::CIMRepository2::open(), OW_NAMESPACE::IndexImpl::openIfClosed(), OW_NAMESPACE::XMLParserDOM::parse(), OW_NAMESPACE::parseInfo(), OW_NAMESPACE::HDBNode::read(), OW_NAMESPACE::HDB::readBlock(), OW_NAMESPACE::BinarySerialization::readLen(), OW_NAMESPACE::readRecHeader(), OW_NAMESPACE::TempFileEnumerationImplBase::readSize(), OW_NAMESPACE::MOF::ParserErrorHandlerIFC::recoverableError(), OW_NAMESPACE::NonRecursiveMutex::release(), OW_NAMESPACE::Mutex::release(), OW_NAMESPACE::TempFileEnumerationImplBase::releaseFile(), OW_NAMESPACE::RWLocker::releaseReadLock(), OW_NAMESPACE::RWLocker::releaseWriteLock(), OW_NAMESPACE::IndexImpl::remove(), OW_NAMESPACE::HDB::removeIndexEntry(), OW_NAMESPACE::IndexImpl::reopen(), OW_NAMESPACE::HTTPSvrConnection::run(), OW_NAMESPACE::runHelper(), OW_NAMESPACE::Exec::safePopen(), OW_NAMESPACE::ThreadImpl::saveThreadInTLS(), OW_NAMESPACE::ThreadImpl::sendSignalToThread(), OW_NAMESPACE::DateTime::set(), CMPI_ThreadContext::setContext(), OW_NAMESPACE::DateTime::setMicrosecond(), OW_NAMESPACE::DateTime::setMonth(), OW_NAMESPACE::HDB::setOffsets(), OW_NAMESPACE::DateTime::setTime(), OW_NAMESPACE::Platform::setupSigHandler(), OW_NAMESPACE::HTTPServer::shutdown(), OW_NAMESPACE::Socket::Socket(), OW_NAMESPACE::Thread::start(), OW_NAMESPACE::HTTPServer::start(), OW_NAMESPACE::UTF8Utils::StringToUCS2Common(), OW_NAMESPACE::TempFileEnumerationImplBase::TempFileEnumerationImplBase(), OW_NAMESPACE::ThreadBarrierImpl::ThreadBarrierImpl(), OW_NAMESPACE::throwArrayOutOfBoundsException(), OW_NAMESPACE::TempFileEnumerationImplBase::throwIfEmpty(), OW_NAMESPACE::GenericHDBRepository::throwIfNotOpen(), OW_NAMESPACE::ReferenceBase::throwNULLException(), OW_NAMESPACE::COWReferenceBase::throwNULLException(), OW_NAMESPACE::COWIntrusiveReferenceHelpers::throwNULLException(), OW_NAMESPACE::throwStringConversion(), OW_NAMESPACE::Condition::timedWait(), OW_NAMESPACE::TmpFileImpl::TmpFileImpl(), OW_NAMESPACE::HTTPUtils::unescapeCharForURL(), OW_NAMESPACE::MD5::update(), OW_NAMESPACE::IndexImpl::update(), OW_NAMESPACE::HDB::updateIndexEntry(), OW_NAMESPACE::UUID::UUID(), OW_NAMESPACE::BinarySerialization::verifySignature(), OW_NAMESPACE::ThreadBarrierImpl::wait(), OW_NAMESPACE::Condition::wait(), OW_NAMESPACE::ThreadCounter::waitForAll(), OW_NAMESPACE::HDBNode::write(), OW_NAMESPACE::HDB::writeBlock(), and OW_NAMESPACE::XMLOperationGeneric::XMLGetCIMElement().

#define OW_THROW_ERR exType,
msg,
err   )     throw exType(__FILE__, __LINE__, (msg), (err))
 

Throw an exception using __FILE__ and __LINE__.

Parameters:
exType The type of the exception
msg The exception message. A string that will be copied.
err The error code.

Definition at line 278 of file OW_Exception.hpp.

Referenced by OW_NAMESPACE::dbUtils::checkReturn(), OW_NAMESPACE::CmdLineParser::CmdLineParser(), OW_NAMESPACE::fillDateTimeData(), OW_NAMESPACE::CIMInstance::getPropertyT(), OW_NAMESPACE::CIMBase::readSig(), and strend_checked().

#define OW_THROW_ERR_SUBEX exType,
msg,
err,
subex   )     throw exType(__FILE__, __LINE__, (msg), (err), &(subex))
 

Throw an exception using __FILE__ and __LINE__.

Parameters:
exType The type of the exception
msg The exception message. A string that will be copied.
err The error code.
subex A sub-exception. A point to it will be passed to the exception constructor, which should clone() it.

Definition at line 321 of file OW_Exception.hpp.

#define OW_THROW_ERRNO exType   )     OW_THROW_ERRNO1(exType, errno)
 

Throw an exception using __FILE__, __LINE__, errno and strerror(errno).

Parameters:
exType The type of the exception; ctor must take file, line, message, and error code.

Definition at line 286 of file OW_Exception.hpp.

Referenced by OW_NAMESPACE::FileSystem::Path::getCurrentWorkingDirectory(), and OW_NAMESPACE::FileSystem::readSymbolicLink().

#define OW_THROW_ERRNO1 exType,
errnum   )     throw ExceptionDetail::Errno< exType >::simple(__FILE__, __LINE__, (errnum))
 

Throw an exception using __FILE__, __LINE__, errnum and strerror(errnum).

Parameters:
exType The type of the exception; ctor must take file, line, message, and error code.

Definition at line 293 of file OW_Exception.hpp.

#define OW_THROW_ERRNO_MSG exType,
msg   )     OW_THROW_ERRNO_MSG1(exType, (msg), errno)
 

Throw an exception using __FILE__, __LINE__, errno and strerror(errno).

Parameters:
exType The type of the exception; ctor must take file, line, message, and error code.

Definition at line 301 of file OW_Exception.hpp.

Referenced by OW_NAMESPACE::AssocDb::addEntry(), OW_NAMESPACE::AssocDb::addToFreeList(), OW_NAMESPACE::AssocDb::checkFile(), OW_NAMESPACE::ServerSocketImpl::close(), OW_NAMESPACE::SocketBaseImpl::connect(), OW_NAMESPACE::LocalAuthenticationCommon::createFile(), OW_NAMESPACE::AssocDb::createFile(), OW_NAMESPACE::Platform::daemonize(), OW_NAMESPACE::ServerSocketImpl::doListen(), OW_NAMESPACE::ServerSocketImpl::fillAddrParms(), OW_NAMESPACE::SocketBaseImpl::fillUnixAddrParms(), OW_NAMESPACE::AssocDb::getHandle(), OW_NAMESPACE::AssocDb::getNewBlock(), OW_NAMESPACE::HTTPXMLCIMListener::HTTPXMLCIMListener(), OW_NAMESPACE::LocalAuthenticationCommon::initializeDir(), OW_NAMESPACE::killWait(), OW_NAMESPACE::TmpFileImpl::open(), OW_NAMESPACE::SocketBaseImpl::read(), OW_NAMESPACE::PosixUnnamedPipe::read(), OW_NAMESPACE::HDBNode::read(), OW_NAMESPACE::BinarySerialization::read(), OW_NAMESPACE::AssocDb::readEntry(), OW_NAMESPACE::readRecHeader(), OW_NAMESPACE::TmpFileImpl::releaseFile(), OW_NAMESPACE::HDBNode::removeBlock(), OW_NAMESPACE::Platform::rerunDaemon(), OW_NAMESPACE::Exec::safePopen(), OW_NAMESPACE::HTTPClient::sendAuthorization(), OW_NAMESPACE::PosixUnnamedPipe::setBlocking(), OW_NAMESPACE::PosixUnnamedPipe::setOutputBlocking(), OW_NAMESPACE::HTTPServer::shutdown(), OW_NAMESPACE::Socket::shutdownAllSockets(), OW_NAMESPACE::timedWaitPid(), OW_NAMESPACE::SocketBaseImpl::write(), OW_NAMESPACE::PosixUnnamedPipe::write(), OW_NAMESPACE::HDBNode::write(), OW_NAMESPACE::BinarySerialization::write(), and OW_NAMESPACE::writeRecHeader().

#define OW_THROW_ERRNO_MSG1 exType,
msg,
errnum   ) 
 

Value:

throw ExceptionDetail::Errno< exType >:: \
      format(__FILE__, __LINE__, (msg), (errnum))
Throw an exception using __FILE__, __LINE__, errnum and strerror(errnum).

Parameters:
exType The type of the exception; ctor must take file, line, message, and error code.

Definition at line 309 of file OW_Exception.hpp.

#define OW_THROW_SUBEX exType,
msg,
subex   ) 
 

Value:

throw exType(__FILE__, __LINE__, (msg), \
             ::OW_NAMESPACE::Exception::UNKNOWN_ERROR_CODE, &(subex))
Throw an exception using __FILE__ and __LINE__.

Parameters:
exType The type of the exception
msg The exception message. A string that will be copied.
subex A sub-exception. A pointer to it will be passed to the exception constructor, which should clone() it.

Definition at line 268 of file OW_Exception.hpp.

#define OW_THROWL exType,
line,
msg   )     throw exType(__FILE__, (line), (msg))
 

This macro is deprecated in 3.1.0.

Definition at line 259 of file OW_Exception.hpp.


Generated on Thu Feb 9 08:59:08 2006 for openwbem by  doxygen 1.4.6