xmltooling
1.6.4
|
Base exception class, supports parametrized messages and XML serialization. More...
#include <xmltooling/exceptions.h>
Public Types | |
typedef XMLToolingException * | ExceptionFactory() |
A factory function that returns an empty exception object of a given type. More... | |
Public Member Functions | |
XMLToolingException (const char *msg=0, const params &p=params()) | |
Constructs an exception using a message and positional parameters. More... | |
XMLToolingException (const char *msg, const namedparams &p) | |
Constructs an exception using a message and named parameters. More... | |
XMLToolingException (const std::string &msg, const params &p=params()) | |
Constructs an exception using a message and positional parameters. More... | |
XMLToolingException (const std::string &msg, const namedparams &p) | |
Constructs an exception using a message and named parameters. More... | |
const char * | getMessage () const |
Returns the error message, after processing any parameter references. More... | |
const char * | what () const throw () |
Returns the error message, after processing any parameter references. More... | |
void | setMessage (const char *msg) |
Sets the error message. More... | |
void | setMessage (const std::string &msg) |
Sets the error message. More... | |
void | addProperties (const params &p) |
Attach a set of positional parameters to the exception. More... | |
void | addProperties (const namedparams &p) |
Attach a set of named parameters to the exception. More... | |
void | addProperty (const char *value) |
Attach a single positional parameter at the next available position. More... | |
void | addProperty (const char *name, const char *value) |
Attach a single named parameter. More... | |
const char * | getProperty (unsigned int index) const |
Returns the parameter property with the designated position (based from one). More... | |
const char * | getProperty (const char *name) const |
Returns the parameter property with the designated name. More... | |
virtual void | raise () const |
Raises an exception using itself. More... | |
virtual const char * | getClassName () const |
Returns a unique name for the exception class. More... | |
std::string | toString () const |
Returns a string containing a serialized representation of the exception. More... | |
std::string | toQueryString () const |
Returns a set of query string name/value pairs, URL-encoded, representing the exception's type, message, and parameters. More... | |
Static Public Member Functions | |
static XMLToolingException * | getInstance (const char *exceptionClass) |
Builds an empty exception of the given type. More... | |
static XMLToolingException * | fromStream (std::istream &in) |
Builds an exception from a serialized input stream. More... | |
static XMLToolingException * | fromString (const char *s) |
Builds an exception from a serialized input buffer. More... | |
static void | registerFactory (const char *exceptionClass, ExceptionFactory *factory) |
Registers a factory to create exceptions of a given class name. More... | |
static void | deregisterFactory (const char *exceptionClass) |
Unregisters the factory for a given class name. More... | |
static void | deregisterFactories () |
Unregisters all factories. | |
Base exception class, supports parametrized messages and XML serialization.
Parameters are prefixed with a dollar sign ($) and can be positional ($1) or named ($info).
typedef XMLToolingException* xmltooling::XMLToolingException::ExceptionFactory() |
A factory function that returns an empty exception object of a given type.
xmltooling::XMLToolingException::XMLToolingException | ( | const char * | msg = 0 , |
const params & | p = params() |
||
) |
Constructs an exception using a message and positional parameters.
msg | error message |
p | an ordered set of positional parameter strings |
xmltooling::XMLToolingException::XMLToolingException | ( | const char * | msg, |
const namedparams & | p | ||
) |
Constructs an exception using a message and named parameters.
msg | error message |
p | a set of named parameter strings |
xmltooling::XMLToolingException::XMLToolingException | ( | const std::string & | msg, |
const params & | p = params() |
||
) |
Constructs an exception using a message and positional parameters.
msg | error message |
p | an ordered set of positional parameter strings |
xmltooling::XMLToolingException::XMLToolingException | ( | const std::string & | msg, |
const namedparams & | p | ||
) |
Constructs an exception using a message and named parameters.
msg | error message |
p | a set of named parameter strings |
void xmltooling::XMLToolingException::addProperties | ( | const params & | p | ) |
Attach a set of positional parameters to the exception.
p | an ordered set of named parameter strings |
void xmltooling::XMLToolingException::addProperties | ( | const namedparams & | p | ) |
Attach a set of named parameters to the exception.
p | a set of named parameter strings |
|
inline |
Attach a single positional parameter at the next available position.
value | the parameter value |
|
inline |
Attach a single named parameter.
name | the parameter name |
value | the parameter value |
|
inlinestatic |
Unregisters the factory for a given class name.
exceptionClass | name of exception type |
|
static |
Builds an exception from a serialized input stream.
in | input stream |
|
static |
Builds an exception from a serialized input buffer.
s | input buffer |
|
inlinevirtual |
Returns a unique name for the exception class.
Reimplemented in xmltooling::XMLSecurityException, xmltooling::IOException, xmltooling::ValidationException, xmltooling::UnknownExtensionException, xmltooling::UnknownAttributeException, xmltooling::UnknownElementException, xmltooling::UnmarshallingException, xmltooling::MarshallingException, xmltooling::XMLObjectException, xmltooling::XMLParserException, xmlencryption::EncryptionException, xmlsignature::SignatureException, xmlencryption::DecryptionException, and xmltooling::ThreadingException.
|
static |
Builds an empty exception of the given type.
exceptionClass | the name of the exception type to build |
const char* xmltooling::XMLToolingException::getMessage | ( | ) | const |
Returns the error message, after processing any parameter references.
const char* xmltooling::XMLToolingException::getProperty | ( | unsigned int | index | ) | const |
Returns the parameter property with the designated position (based from one).
index | position to access |
const char* xmltooling::XMLToolingException::getProperty | ( | const char * | name | ) | const |
Returns the parameter property with the designated name.
name | named parameter to access |
|
inlinevirtual |
Raises an exception using itself.
Used to raise an exception of a derived type.
Reimplemented in xmltooling::XMLSecurityException, xmltooling::IOException, xmltooling::ValidationException, xmltooling::UnknownExtensionException, xmltooling::UnknownAttributeException, xmltooling::UnknownElementException, xmltooling::UnmarshallingException, xmltooling::MarshallingException, xmltooling::XMLObjectException, xmltooling::XMLParserException, xmlencryption::EncryptionException, xmlsignature::SignatureException, xmlencryption::DecryptionException, and xmltooling::ThreadingException.
|
inlinestatic |
Registers a factory to create exceptions of a given class name.
exceptionClass | name of exception type |
factory | factory function to build exceptions with |
void xmltooling::XMLToolingException::setMessage | ( | const char * | msg | ) |
Sets the error message.
msg | the error message |
|
inline |
Sets the error message.
msg | the error message |
std::string xmltooling::XMLToolingException::toQueryString | ( | ) | const |
Returns a set of query string name/value pairs, URL-encoded, representing the exception's type, message, and parameters.
std::string xmltooling::XMLToolingException::toString | ( | ) | const |
Returns a string containing a serialized representation of the exception.
|
inline |
Returns the error message, after processing any parameter references.