com.sas.net.util
Class RuntimeWrapperException

java.lang.Object
  |
  +--java.lang.Throwable
        |
        +--java.lang.Exception
              |
              +--java.lang.RuntimeException
                    |
                    +--com.sas.net.util.RuntimeWrapperException
Direct Known Subclasses:
WorkspaceFactoryException

public abstract class RuntimeWrapperException
extends java.lang.RuntimeException

Base class for exceptions that may contain nested exceptions. When there is a nested exception, toString() and printStackTrace(), etc. defer to the nested exception.

If the nested exception is itself a WrapperException, then there will be yet another layer of deferal.

This is for unchecked exceptions. There is also a WrapperException to use as a base class for checked exceptions.

Java has it's own notion of a wrapper exception in java.lang.reflect.InvocationTargetException. This class would not exist were it not for three problems with InvocationTargetException.

This base class is often useful in the following situation where AnException extends WrapperException: public void aMethod() throws AnException { try { doStuff(); } catch (AnotherException e) { throw new AnException(e); } }

See Also:
Serialized Form

Constructor Summary
RuntimeWrapperException()
          No-argument constructor.
RuntimeWrapperException(java.lang.String message)
          Constructor with message.
RuntimeWrapperException(java.lang.String message, java.lang.Throwable nestedException)
          Wrapper constructor.
RuntimeWrapperException(java.lang.Throwable nestedException)
          Wrapper constructor.
 
Method Summary
 java.lang.Throwable fillInStackTrace()
           
 java.lang.String getLocalizedMessage()
           
 java.lang.String getMessage()
           
 java.lang.Throwable getNestedException()
          Gets the nested exception.
 void printStackTrace()
           
 void printStackTrace(java.io.PrintStream p)
           
 void printStackTrace(java.io.PrintWriter p)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

RuntimeWrapperException

public RuntimeWrapperException()
No-argument constructor.

RuntimeWrapperException

public RuntimeWrapperException(java.lang.String message)
Constructor with message.
Parameters:
message - a message adding detail to the exception

RuntimeWrapperException

public RuntimeWrapperException(java.lang.Throwable nestedException)
Wrapper constructor.
Parameters:
nestedException - exception being wrapped

RuntimeWrapperException

public RuntimeWrapperException(java.lang.String message,
                               java.lang.Throwable nestedException)
Wrapper constructor.
Parameters:
message - a message to include in the exception.
nestedException - an exception being wrapped.
Method Detail

getMessage

public java.lang.String getMessage()
Overrides:
getMessage in class java.lang.Throwable
See Also:
Throwable.getMessage()

getLocalizedMessage

public java.lang.String getLocalizedMessage()
Overrides:
getLocalizedMessage in class java.lang.Throwable
See Also:
Throwable.getLocalizedMessage()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Throwable
See Also:
Throwable.toString()

printStackTrace

public void printStackTrace()
Overrides:
printStackTrace in class java.lang.Throwable
See Also:
Throwable.printStackTrace()

printStackTrace

public void printStackTrace(java.io.PrintStream p)
Overrides:
printStackTrace in class java.lang.Throwable
See Also:
Throwable.printStackTrace()

printStackTrace

public void printStackTrace(java.io.PrintWriter p)
Overrides:
printStackTrace in class java.lang.Throwable
See Also:
Throwable.printStackTrace()

fillInStackTrace

public java.lang.Throwable fillInStackTrace()
Overrides:
fillInStackTrace in class java.lang.Throwable
See Also:
Throwable.fillInStackTrace()

getNestedException

public java.lang.Throwable getNestedException()
Gets the nested exception.
Returns:
The nested exception.