org.mortbay.util
Class MultiException

java.lang.Object
  extended byjava.lang.Throwable
      extended byjava.lang.Exception
          extended byorg.mortbay.util.MultiException
All Implemented Interfaces:
Serializable

public class MultiException
extends Exception

Wraps multiple exceptions. Allows multiple exceptions to be thrown as a single exception.

Author:
Greg Wilkins (gregw)
See Also:
Serialized Form

Constructor Summary
MultiException()
           
 
Method Summary
 void add(Throwable e)
           
 Throwable getThrowable(int i)
           
 List getThrowables()
           
 void ifExceptionThrow()
          Throw a multiexception.
 void ifExceptionThrowMulti()
          Throw a multiexception.
 void ifExceptionThrowRuntime()
          Throw a Runtime exception.
 void printStackTrace()
           
 void printStackTrace(PrintStream out)
           
 void printStackTrace(PrintWriter out)
           
 int size()
           
 String toString()
           
 
Methods inherited from class java.lang.Throwable
fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, setStackTrace
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MultiException

public MultiException()
Method Detail

add

public void add(Throwable e)

size

public int size()

getThrowables

public List getThrowables()

getThrowable

public Throwable getThrowable(int i)

ifExceptionThrow

public void ifExceptionThrow()
                      throws Exception
Throw a multiexception. If this multi exception is empty then no action is taken. If it contains a single exception that is thrown, otherwise the this multi exception is thrown.

Throws:
Exception

ifExceptionThrowRuntime

public void ifExceptionThrowRuntime()
                             throws Error
Throw a Runtime exception. If this multi exception is empty then no action is taken. If it contains a single error or runtime exception that is thrown, otherwise the this multi exception is thrown, wrapped in a runtime exception.

Throws:
Error - If this exception contains exactly 1 Error
RuntimeException - If this exception contains 1 Throwable but it is not an error, or it contains more than 1 Throwable of any type.

ifExceptionThrowMulti

public void ifExceptionThrowMulti()
                           throws MultiException
Throw a multiexception. If this multi exception is empty then no action is taken. If it contains a any exceptions then this multi exception is thrown.

Throws:
MultiException

toString

public String toString()

printStackTrace

public void printStackTrace()

printStackTrace

public void printStackTrace(PrintStream out)
See Also:
Throwable.printStackTrace(java.io.PrintStream)

printStackTrace

public void printStackTrace(PrintWriter out)
See Also:
Throwable.printStackTrace(java.io.PrintWriter)