org.logicalcobwebs.proxool
Class ProxoolException

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by org.logicalcobwebs.proxool.ProxoolException
All Implemented Interfaces:
java.io.Serializable

public class ProxoolException
extends java.lang.Exception

Proxool exception class that emulates the behaviour of the new cause facility in jdk 1.4. It is also known as the chained exception facility, as the cause can, itself, have a cause, and so on, leading to a "chain" of exceptions, each caused by another.

A cause can be associated with a throwable in two ways: via a constructor that takes the cause as an argument, or via the initCause(Throwable) method. New throwable classes that wish to allow causes to be associated with them should provide constructors that take a cause and delegate (perhaps indirectly) to one of the Throwable constructors that takes a cause.

Since:
Proxool 0.6
Version:
$Revision: 1.2 $, $Date: 2003/03/03 11:11:58 $
Author:
Christian Nedregaard (christian_nedregaard@email.com), $Author: billhorsman $ (current maintainer)
See Also:
Serialized Form

Constructor Summary
ProxoolException()
          Constructs a new instance with null as its detail message.
ProxoolException(java.lang.String message)
          Constructs a new instance with the specified detail message.
ProxoolException(java.lang.String message, java.lang.Throwable cause)
          Constructs a new instance with the specified detail message and cause.
ProxoolException(java.lang.Throwable cause)
          Constructs a new throwable with the specified cause and a detail message of (cause==null ? null : cause.toString()) (which typically contains the class and detail message of cause).
 
Method Summary
 java.lang.Throwable getCause()
          Returns the cause of this exception or null if the cause is nonexistent or unknown.
 java.lang.Throwable initCause(java.lang.Throwable cause)
          Initializes the cause of this exception to the specified value.
 void printStackTrace()
          Prints this ProxoolException and its backtrace to the standard error stream.
 void printStackTrace(java.io.PrintStream stream)
          Prints this ProxoolException and its backtrace to the specified print stream.
 void printStackTrace(java.io.PrintWriter writer)
          Prints this ProxoolException and its backtrace to the specified print writer.
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getLocalizedMessage, getMessage, getStackTrace, setStackTrace, toString
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ProxoolException

public ProxoolException()
Constructs a new instance with null as its detail message. The cause is not initialized, and may subsequently be initialized by a call to initCause(java.lang.Throwable).


ProxoolException

public ProxoolException(java.lang.String message)
Constructs a new instance with the specified detail message. The cause is not initialized, and may subsequently be initialized by a call to initCause(java.lang.Throwable).

Parameters:
message - the detail message. The detail message is saved for later retrieval by the Throwable.getMessage() method.

ProxoolException

public ProxoolException(java.lang.String message,
                        java.lang.Throwable cause)
Constructs a new instance with the specified detail message and cause.

Note that the detail message associated with cause is not automatically incorporated in this throwable's detail message.

Parameters:
message - the detail message (which is saved for later retrieval by the Throwable.getMessage() method).
cause - the cause (which is saved for later retrieval by the getCause() method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)

ProxoolException

public ProxoolException(java.lang.Throwable cause)
Constructs a new throwable with the specified cause and a detail message of (cause==null ? null : cause.toString()) (which typically contains the class and detail message of cause). This constructor is useful for throwables that are little more than wrappers for other throwables.

Parameters:
cause - the cause (which is saved for later retrieval by the getCause() method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
Method Detail

getCause

public java.lang.Throwable getCause()
Returns the cause of this exception or null if the cause is nonexistent or unknown. (The cause is the throwable that caused this exception to get thrown.)

This implementation returns the cause that was supplied via one of the constructors requiring a Throwable, or that was set after creation with the initCause(Throwable) method.

Overrides:
getCause in class java.lang.Throwable
Returns:
the cause of this throwable or null if the cause is nonexistent or unknown.

initCause

public java.lang.Throwable initCause(java.lang.Throwable cause)
Initializes the cause of this exception to the specified value. (The cause is the throwable that caused this exception to get thrown.)

This method can be called at most once. It is generally called from within the constructor, or immediately after creating the throwable. If this throwable was created with ProxoolException(Throwable) or ProxoolException(String,Throwable), this method cannot be called even once.

Overrides:
initCause in class java.lang.Throwable
Parameters:
cause - the cause (which is saved for later retrieval by the getCause() method). (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
Returns:
a reference to this ProxoolException instance.

printStackTrace

public void printStackTrace()
Prints this ProxoolException and its backtrace to the standard error stream. The backtrace for a ProxoolException with an initialized, non-null cause should generally include the backtrace for the cause.

Overrides:
printStackTrace in class java.lang.Throwable

printStackTrace

public void printStackTrace(java.io.PrintStream stream)
Prints this ProxoolException and its backtrace to the specified print stream.

Overrides:
printStackTrace in class java.lang.Throwable
Parameters:
stream - PrintStream to use for output

printStackTrace

public void printStackTrace(java.io.PrintWriter writer)
Prints this ProxoolException and its backtrace to the specified print writer.

Overrides:
printStackTrace in class java.lang.Throwable
Parameters:
writer - PrintWriter to use for output