Return-Path: Delivered-To: apmail-activemq-commits-archive@www.apache.org Received: (qmail 82572 invoked from network); 23 Aug 2008 14:08:25 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 23 Aug 2008 14:08:25 -0000 Received: (qmail 84513 invoked by uid 500); 23 Aug 2008 14:08:23 -0000 Delivered-To: apmail-activemq-commits-archive@activemq.apache.org Received: (qmail 84490 invoked by uid 500); 23 Aug 2008 14:08:23 -0000 Mailing-List: contact commits-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list commits@activemq.apache.org Received: (qmail 84480 invoked by uid 99); 23 Aug 2008 14:08:23 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 23 Aug 2008 07:08:22 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 23 Aug 2008 14:07:33 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 7892023889C0; Sat, 23 Aug 2008 07:08:03 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r688327 [2/2] - in /activemq/activemq-cpp/trunk/src: main/activemq/connector/ main/activemq/connector/openwire/ main/activemq/connector/stomp/ main/activemq/connector/stomp/marshal/ main/activemq/exceptions/ main/activemq/transport/ main/cm... Date: Sat, 23 Aug 2008 14:08:01 -0000 To: commits@activemq.apache.org From: tabish@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080823140803.7892023889C0@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Modified: activemq/activemq-cpp/trunk/src/main/decaf/net/URISyntaxException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/net/URISyntaxException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/net/URISyntaxException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/net/URISyntaxException.h Sat Aug 23 07:07:59 2008 @@ -71,6 +71,37 @@ * optional list of arguments to parse into the message * @param file name where exception occurs * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + URISyntaxException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) + throw() : lang::Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + URISyntaxException( const std::exception* cause ) + throw() : lang::Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. * @param message to report * @param list of primitives that are formatted into the message */ Modified: activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownHostException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownHostException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownHostException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownHostException.h Sat Aug 23 07:07:59 2008 @@ -57,6 +57,37 @@ * optional list of arguments to parse into the message * @param file name where exception occurs * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + UnknownHostException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) + throw() : io::IOException( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + UnknownHostException( const std::exception* cause ) + throw() : io::IOException( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. * @param message to report * @param list of primitives that are formatted into the message */ Modified: activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownServiceException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownServiceException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownServiceException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/net/UnknownServiceException.h Sat Aug 23 07:07:59 2008 @@ -53,15 +53,46 @@ /** * Constructor - Initializes the file name and line number where - * this message occured. Sets the message to report, using an + * this message occurred. Sets the message to report, using an * optional list of arguments to parse into the message * @param file name where exception occurs * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. * @param message to report * @param list of primitives that are formatted into the message */ UnknownServiceException( const char* file, const int lineNumber, - const char* msg, ... ) throw () + const std::exception* cause, + const char* msg, ... ) + throw() : io::IOException( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + UnknownServiceException( const std::exception* cause ) + throw() : io::IOException( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param message to report + * @param list of primitives that are formatted into the message + */ + UnknownServiceException( const char* file, const int lineNumber, + const char* msg, ... ) throw () : io::IOException() { va_list vargs ; Modified: activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferOverflowException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferOverflowException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferOverflowException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferOverflowException.h Sat Aug 23 07:07:59 2008 @@ -51,7 +51,37 @@ } /** - * Consturctor + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + BufferOverflowException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : lang::Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + BufferOverflowException( const std::exception* cause ) + throw() : lang::Exception( cause ) {} + + /** + * Constructor * @param file name of the file were the exception occured. * @param lineNumber line where the exception occured * @param msg the message that was generated Modified: activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferUnderflowException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferUnderflowException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferUnderflowException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/nio/BufferUnderflowException.h Sat Aug 23 07:07:59 2008 @@ -51,7 +51,37 @@ } /** - * Consturctor + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + BufferUnderflowException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : lang::Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + BufferUnderflowException( const std::exception* cause ) + throw() : lang::Exception( cause ) {} + + /** + * Constructor * @param file name of the file were the exception occured. * @param lineNumber line where the exception occured * @param msg the message that was generated Modified: activemq/activemq-cpp/trunk/src/main/decaf/nio/InvalidMarkException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/nio/InvalidMarkException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/nio/InvalidMarkException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/nio/InvalidMarkException.h Sat Aug 23 07:07:59 2008 @@ -51,7 +51,38 @@ /** * Constructor - Initializes the file name and line number where - * this message occured. Sets the message to report, using an + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + InvalidMarkException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) + throw() : lang::exceptions::IllegalStateException( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + InvalidMarkException( const std::exception* cause ) + throw() : lang::exceptions::IllegalStateException( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an * optional list of arguments to parse into the message * @param file name where exception occurs * @param line number where the exception occurred. Modified: activemq/activemq-cpp/trunk/src/main/decaf/nio/ReadOnlyBufferException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/nio/ReadOnlyBufferException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/nio/ReadOnlyBufferException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/nio/ReadOnlyBufferException.h Sat Aug 23 07:07:59 2008 @@ -52,7 +52,38 @@ } /** - * Consturctor + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + ReadOnlyBufferException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) + throw() : lang::exceptions::UnsupportedOperationException( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + ReadOnlyBufferException( const std::exception* cause ) + throw() : lang::exceptions::UnsupportedOperationException( cause ) {} + + /** + * Constructor * @param file name of the file were the exception occured. * @param lineNumber line where the exception occured * @param msg the message that was generated Modified: activemq/activemq-cpp/trunk/src/main/decaf/security/GeneralSecurityException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/security/GeneralSecurityException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/security/GeneralSecurityException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/security/GeneralSecurityException.h Sat Aug 23 07:07:59 2008 @@ -24,8 +24,8 @@ namespace security{ /* - * The GeneralSecurityException class is a generic security exception class - * that provides type safety for all the security-related exception classes + * The GeneralSecurityException class is a generic security exception class + * that provides type safety for all the security-related exception classes * that extend from it. */ class DECAF_API GeneralSecurityException : public GeneralSecurityException @@ -61,10 +61,39 @@ /** * Constructor - Initializes the file name and line number where - * this message occured. Sets the message to report, using an + * this message occurred. Sets the message to report, using an * optional list of arguments to parse into the message - * - * @param file + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + GeneralSecurityException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + GeneralSecurityException( const std::exception* cause ) throw() : Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * + * @param file * name where exception occurs * @param lineNumber * line number where the exception occurred. @@ -90,7 +119,7 @@ * Clones this exception. This is useful for cases where you need * to preserve the type of the original exception as well as the message. * All subclasses should override. - * + * * @return A deep copy of this exception. */ virtual GeneralSecurityException* clone() const{ Modified: activemq/activemq-cpp/trunk/src/main/decaf/security/InvalidKeyException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/security/InvalidKeyException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/security/InvalidKeyException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/security/InvalidKeyException.h Sat Aug 23 07:07:59 2008 @@ -24,7 +24,7 @@ namespace security{ /* - * This is the exception for invalid Keys (invalid encoding, wrong length, + * This is the exception for invalid Keys (invalid encoding, wrong length, * uninitialized, etc). */ class DECAF_API InvalidKeyException : public KeyException @@ -60,10 +60,39 @@ /** * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + InvalidKeyException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + InvalidKeyException( const std::exception* cause ) throw() : Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where * this message occured. Sets the message to report, using an * optional list of arguments to parse into the message - * - * @param file + * + * @param file * name where exception occurs * @param lineNumber * line number where the exception occurred. @@ -73,8 +102,8 @@ * list of primitives that are formatted into the message */ InvalidKeyException( const char* file, - const int lineNumber, - const char* msg, ...) throw() + const int lineNumber, + const char* msg, ...) throw() : Exception() { va_list vargs; @@ -89,7 +118,7 @@ * Clones this exception. This is useful for cases where you need * to preserve the type of the original exception as well as the message. * All subclasses should override. - * + * * @return A deep copy of this exception. */ virtual InvalidKeyException* clone() const{ Modified: activemq/activemq-cpp/trunk/src/main/decaf/security/KeyException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/security/KeyException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/security/KeyException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/security/KeyException.h Sat Aug 23 07:07:59 2008 @@ -59,10 +59,39 @@ /** * Constructor - Initializes the file name and line number where - * this message occured. Sets the message to report, using an + * this message occurred. Sets the message to report, using an * optional list of arguments to parse into the message - * - * @param file + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + KeyException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + KeyException( const std::exception* cause ) throw() : Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * + * @param file * name where exception occurs * @param lineNumber * line number where the exception occurred. @@ -72,8 +101,8 @@ * list of primitives that are formatted into the message */ KeyException( const char* file, - const int lineNumber, - const char* msg, ...) throw() + const int lineNumber, + const char* msg, ...) throw() : Exception() { va_list vargs; @@ -88,7 +117,7 @@ * Clones this exception. This is useful for cases where you need * to preserve the type of the original exception as well as the message. * All subclasses should override. - * + * * @return A deep copy of this exception. */ virtual KeyException* clone() const{ Modified: activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchAlgorithmException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchAlgorithmException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchAlgorithmException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchAlgorithmException.h Sat Aug 23 07:07:59 2008 @@ -24,7 +24,7 @@ namespace security{ /* - * This exception is thrown when a particular cryptographic algorithm is + * This exception is thrown when a particular cryptographic algorithm is * requested but is not available in the environment. */ class DECAF_API NoSuchAlgorithmException : public GeneralSecurityException @@ -60,10 +60,39 @@ /** * Constructor - Initializes the file name and line number where - * this message occured. Sets the message to report, using an + * this message occurred. Sets the message to report, using an * optional list of arguments to parse into the message - * - * @param file + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + NoSuchAlgorithmException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + NoSuchAlgorithmException( const std::exception* cause ) throw() : Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * + * @param file * name where exception occurs * @param lineNumber * line number where the exception occurred. @@ -73,8 +102,8 @@ * list of primitives that are formatted into the message */ NoSuchAlgorithmException( const char* file, - const int lineNumber, - const char* msg, ...) throw() + const int lineNumber, + const char* msg, ...) throw() : Exception() { va_list vargs; @@ -89,7 +118,7 @@ * Clones this exception. This is useful for cases where you need * to preserve the type of the original exception as well as the message. * All subclasses should override. - * + * * @return A deep copy of this exception. */ virtual NoSuchAlgorithmException* clone() const{ Modified: activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchProviderException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchProviderException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchProviderException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/security/NoSuchProviderException.h Sat Aug 23 07:07:59 2008 @@ -24,7 +24,7 @@ namespace security{ /* - * This exception is thrown when a particular security provider is requested + * This exception is thrown when a particular security provider is requested * but is not available in the environment. */ class DECAF_API NoSuchProviderException : public GeneralSecurityException @@ -60,10 +60,39 @@ /** * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + NoSuchProviderException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + NoSuchProviderException( const std::exception* cause ) throw() : Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where * this message occured. Sets the message to report, using an * optional list of arguments to parse into the message - * - * @param file + * + * @param file * name where exception occurs * @param lineNumber * line number where the exception occurred. @@ -89,7 +118,7 @@ * Clones this exception. This is useful for cases where you need * to preserve the type of the original exception as well as the message. * All subclasses should override. - * + * * @return A deep copy of this exception. */ virtual NoSuchProviderException* clone() const{ Modified: activemq/activemq-cpp/trunk/src/main/decaf/security/SignatureException.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/main/decaf/security/SignatureException.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/main/decaf/security/SignatureException.h (original) +++ activemq/activemq-cpp/trunk/src/main/decaf/security/SignatureException.h Sat Aug 23 07:07:59 2008 @@ -59,10 +59,39 @@ /** * Constructor - Initializes the file name and line number where - * this message occured. Sets the message to report, using an + * this message occurred. Sets the message to report, using an * optional list of arguments to parse into the message - * - * @param file + * @param file name where exception occurs + * @param line number where the exception occurred. + * @param cause The exception that was the cause for this one to be thrown. + * @param message to report + * @param list of primitives that are formatted into the message + */ + SignatureException( const char* file, const int lineNumber, + const std::exception* cause, + const char* msg, ... ) throw() : Exception( cause ) + { + va_list vargs; + va_start( vargs, msg ); + buildMessage( msg, vargs ); + + // Set the first mark for this exception. + setMark( file, lineNumber ); + } + + /** + * Constructor + * @param cause Pointer to the exception that caused this one to + * be thrown, the object is cloned caller retains ownership. + */ + SignatureException( const std::exception* cause ) throw() : Exception( cause ) {} + + /** + * Constructor - Initializes the file name and line number where + * this message occurred. Sets the message to report, using an + * optional list of arguments to parse into the message + * + * @param file * name where exception occurs * @param lineNumber * line number where the exception occurred. @@ -72,23 +101,23 @@ * list of primitives that are formatted into the message */ SignatureException( const char* file, - const int lineNumber, - const char* msg, ...) throw() + const int lineNumber, + const char* msg, ...) throw() : Exception() { va_list vargs; - va_start(vargs, msg); - buildMessage(msg, vargs); + va_start( vargs, msg ); + buildMessage( msg, vargs ); // Set the first mark for this exception. - setMark(file, lineNumber); + setMark( file, lineNumber ); } /** * Clones this exception. This is useful for cases where you need * to preserve the type of the original exception as well as the message. * All subclasses should override. - * + * * @return A deep copy of this exception. */ virtual SignatureException* clone() const{ Modified: activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.cpp?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.cpp (original) +++ activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.cpp Sat Aug 23 07:07:59 2008 @@ -16,9 +16,40 @@ */ #include "ActiveMQExceptionTest.h" +#include +#include +#include using namespace activemq; using namespace activemq::exceptions; +using namespace decaf; +using namespace decaf::lang; +using namespace decaf::lang::exceptions; + +//////////////////////////////////////////////////////////////////////////////// +void ActiveMQExceptionTest::testMacros() { + + try{ + + try{ + try{ + throw UnsupportedOperationException( __FILE__, __LINE__, "EXCEPTION" ); + CPPUNIT_FAIL( "Should not get this far." ); + } + AMQ_CATCH_EXCEPTION_CONVERT( Exception, ActiveMQException ) + } + AMQ_CATCH_RETHROW( ActiveMQException ) + + } catch( ActiveMQException& ex ) { + + CPPUNIT_ASSERT( ex.getCause() != NULL ); + + const UnsupportedOperationException* cause = + dynamic_cast( ex.getCause() ); + + CPPUNIT_ASSERT( cause != NULL ); + } +} //////////////////////////////////////////////////////////////////////////////// void ActiveMQExceptionTest::testMessage0(){ Modified: activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.h (original) +++ activemq/activemq-cpp/trunk/src/test/activemq/exceptions/ActiveMQExceptionTest.h Sat Aug 23 07:07:59 2008 @@ -32,6 +32,7 @@ CPPUNIT_TEST_SUITE( ActiveMQExceptionTest ); CPPUNIT_TEST( testMessage0 ); CPPUNIT_TEST( testMessage3 ); + CPPUNIT_TEST( testMacros ); CPPUNIT_TEST_SUITE_END(); public: @@ -41,6 +42,7 @@ virtual void setUp(){} virtual void tearDown(){} + void testMacros(); void testMessage0(); void testMessage3(); Modified: activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.cpp URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.cpp?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.cpp (original) +++ activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.cpp Sat Aug 23 07:07:59 2008 @@ -16,12 +16,105 @@ */ #include "ExceptionTest.h" +#include using namespace std; using namespace decaf; using namespace decaf::lang; //////////////////////////////////////////////////////////////////////////////// +void ExceptionTest::testCtors() { + + Exception exception1; + + CPPUNIT_ASSERT( exception1.getCause() == NULL ); + CPPUNIT_ASSERT( exception1.getMessage() == "" ); + + exception1.setMessage( "EXCEPTION_1" ); + CPPUNIT_ASSERT( exception1.getMessage() == "EXCEPTION_1" ); + + Exception exception2( __FILE__, __LINE__, "EXCEPTION_2" ); + + CPPUNIT_ASSERT( exception2.getCause() == NULL ); + CPPUNIT_ASSERT( exception2.getMessage() == "EXCEPTION_2" ); + + Exception exception3( __FILE__, __LINE__, &exception1, "EXCEPTION_3" ); + + CPPUNIT_ASSERT( exception3.getCause() != NULL ); + CPPUNIT_ASSERT( std::string( exception3.getCause()->what() ) == "EXCEPTION_1" ); + CPPUNIT_ASSERT( exception3.getMessage() == "EXCEPTION_3" ); + + Exception exception4( exception1 ); + CPPUNIT_ASSERT( exception4.getCause() == NULL ); + CPPUNIT_ASSERT( exception4.getMessage() == "EXCEPTION_1" ); + + std::runtime_error runtime( "RUNTIME" ); + Exception exception5( &runtime ); + CPPUNIT_ASSERT( exception5.getCause() != NULL ); + CPPUNIT_ASSERT( exception5.getMessage() == "RUNTIME" ); +} + +//////////////////////////////////////////////////////////////////////////////// +void ExceptionTest::testAssign() { + + Exception exception1; + + CPPUNIT_ASSERT( exception1.getCause() == NULL ); + CPPUNIT_ASSERT( exception1.getMessage() == "" ); + + exception1.setMessage( "EXCEPTION_1" ); + CPPUNIT_ASSERT( exception1.getMessage() == "EXCEPTION_1" ); + + Exception exception2( __FILE__, __LINE__, "EXCEPTION_2" ); + + CPPUNIT_ASSERT( exception2.getCause() == NULL ); + CPPUNIT_ASSERT( exception2.getMessage() == "EXCEPTION_2" ); + + exception1 = exception2; + CPPUNIT_ASSERT( exception1.getCause() == NULL ); + CPPUNIT_ASSERT( exception1.getMessage() == "EXCEPTION_2" ); +} + +//////////////////////////////////////////////////////////////////////////////// +void ExceptionTest::testClone() { + + const char* text = "This is a test"; + Exception ex( __FILE__, __LINE__, text ); + CPPUNIT_ASSERT( strcmp( ex.getMessage().c_str(), text ) == 0 ); + CPPUNIT_ASSERT( ex.getCause() == NULL ); + + Exception* cloned = ex.clone(); + + CPPUNIT_ASSERT( strcmp( cloned->getMessage().c_str(), text ) == 0 ); + CPPUNIT_ASSERT( cloned->getCause() == NULL ); + + delete cloned; +} + +//////////////////////////////////////////////////////////////////////////////// +void ExceptionTest::testInitCause() { + + const char* text = "This is a test"; + Exception ex( __FILE__, __LINE__, text ); + CPPUNIT_ASSERT( strcmp( ex.getMessage().c_str(), text ) == 0 ); + CPPUNIT_ASSERT( ex.getCause() == NULL ); + + std::runtime_error exception1("RUNTIME"); + Exception exception2( __FILE__, __LINE__, "EXCEPTION" ); + + ex.initCause( &exception1 ); + CPPUNIT_ASSERT( ex.getCause() != NULL ); + CPPUNIT_ASSERT( std::string( ex.getCause()->what() ) == "RUNTIME" ); + + ex.initCause( &exception2 ); + CPPUNIT_ASSERT( ex.getCause() != NULL ); + CPPUNIT_ASSERT( std::string( ex.getCause()->what() ) == "EXCEPTION" ); + + const Exception* test = dynamic_cast( ex.getCause() ); + CPPUNIT_ASSERT( test != NULL ); +} + +//////////////////////////////////////////////////////////////////////////////// void ExceptionTest::testMessage0(){ const char* text = "This is a test"; Exception ex( __FILE__, __LINE__, text ); Modified: activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.h URL: http://svn.apache.org/viewvc/activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.h?rev=688327&r1=688326&r2=688327&view=diff ============================================================================== --- activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.h (original) +++ activemq/activemq-cpp/trunk/src/test/decaf/lang/ExceptionTest.h Sat Aug 23 07:07:59 2008 @@ -32,6 +32,10 @@ CPPUNIT_TEST_SUITE( ExceptionTest ); CPPUNIT_TEST( testMessage0 ); CPPUNIT_TEST( testMessage3 ); + CPPUNIT_TEST( testClone ); + CPPUNIT_TEST( testInitCause ); + CPPUNIT_TEST( testCtors ); + CPPUNIT_TEST( testAssign ); CPPUNIT_TEST_SUITE_END(); public: @@ -41,6 +45,10 @@ virtual void setUp(){} virtual void tearDown(){} + void testCtors(); + void testAssign(); + void testClone(); + void testInitCause(); void testMessage0(); void testMessage3();