Package org.eclipse.jetty.util
Class MultiException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- org.eclipse.jetty.util.MultiException
-
- All Implemented Interfaces:
java.io.Serializable
public class MultiException extends java.lang.Exception
Wraps multiple exceptions. Allows multiple exceptions to be thrown as a single exception. The MultiException itself should not be thrown instead one of the ifExceptionThrow* methods should be called instead.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description MultiException()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
add(java.lang.Throwable e)
java.lang.Throwable
getThrowable(int i)
java.util.List<java.lang.Throwable>
getThrowables()
void
ifExceptionThrow()
Throw a multiexception.void
ifExceptionThrowMulti()
Throw a multiexception.void
ifExceptionThrowRuntime()
Throw a Runtime exception.void
ifExceptionThrowSuppressed()
Throw an Exception, potentially with suppress.int
size()
java.lang.String
toString()
-
-
-
Method Detail
-
add
public void add(java.lang.Throwable e)
-
size
public int size()
-
getThrowables
public java.util.List<java.lang.Throwable> getThrowables()
-
getThrowable
public java.lang.Throwable getThrowable(int i)
-
ifExceptionThrow
public void ifExceptionThrow() throws java.lang.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:
java.lang.Exception
- the Error or Exception if nested is 1, or the MultiException itself if nested is more than 1.
-
ifExceptionThrowRuntime
public void ifExceptionThrowRuntime() throws java.lang.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:
java.lang.Error
- If this exception contains exactly 1Error
java.lang.RuntimeException
- If this exception contains 1Throwable
but it is not an error, or it contains more than 1Throwable
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
- the multiexception if there are nested exception
-
ifExceptionThrowSuppressed
public void ifExceptionThrowSuppressed() throws java.lang.Exception
Throw an Exception, potentially with suppress. If this multi exception is empty then no action is taken. If the first exception added is an Error or Exception, then it is throw with any additional exceptions added as suppressed. Otherwise a MultiException is thrown, with all exceptions added as suppressed.- Throws:
java.lang.Exception
- the Error or Exception if at least one is added.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Throwable
-
-