Package yakworks.problem.exception
Class NestedProblemException
- java.lang.Object
-
- java.lang.Throwable
-
- java.lang.Exception
-
- java.lang.RuntimeException
-
- yakworks.problem.exception.NestedProblemException
-
- All Implemented Interfaces:
java.io.Serializable
public abstract class NestedProblemException extends java.lang.RuntimeExceptionHandy class for wrapping runtimeExceptionswith a root cause.This class is
abstractto force the programmer to extend the class.printStackTraceand other like methods will delegate to the wrapped exception, if any. Base on springsource- See Also:
getMessage(), Serialized Form
-
-
Constructor Summary
Constructors Modifier Constructor Description NestedProblemException()NestedProblemException(java.lang.String msg)Construct aNestedRuntimeExceptionwith the specified detail message.NestedProblemException(java.lang.String msg, java.lang.Throwable cause)Construct aNestedRuntimeExceptionwith the specified detail message and nested exception.protectedNestedProblemException(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)Constructs a new runtime exception with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.NestedProblemException(java.lang.Throwable cause)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancontains(java.lang.Class<?> exType)Check whether this exception contains an exception of the given type: either it is of the given class itself or it contains a nested cause of the given type.java.lang.StringgetMessage()Return the detail message, including the message from the nested exception if there is one.java.lang.ThrowablegetMostSpecificCause()Retrieve the most specific cause of this exception, that is, either the innermost cause (root cause) or this exception itself.java.lang.ThrowablegetRootCause()Retrieve the innermost cause of this exception, if any.
-
-
-
Constructor Detail
-
NestedProblemException
public NestedProblemException()
-
NestedProblemException
public NestedProblemException(java.lang.String msg)
Construct aNestedRuntimeExceptionwith the specified detail message.- Parameters:
msg- the detail message
-
NestedProblemException
public NestedProblemException(java.lang.Throwable cause)
-
NestedProblemException
public NestedProblemException(@Nullable java.lang.String msg, @Nullable java.lang.Throwable cause)Construct aNestedRuntimeExceptionwith the specified detail message and nested exception.- Parameters:
msg- the detail messagecause- the nested exception
-
NestedProblemException
protected NestedProblemException(java.lang.String message, java.lang.Throwable cause, boolean enableSuppression, boolean writableStackTrace)Constructs a new runtime exception with the specified detail message, cause, suppression enabled or disabled, and writable stack trace enabled or disabled.- Parameters:
message- the detail message.cause- the cause. (Anullvalue is permitted, and indicates that the cause is nonexistent or unknown.)enableSuppression- whether or not suppression is enabled or disabledwritableStackTrace- whether or not the stack trace should be writable- Since:
- 1.7
-
-
Method Detail
-
getMessage
public java.lang.String getMessage()
Return the detail message, including the message from the nested exception if there is one.- Overrides:
getMessagein classjava.lang.Throwable
-
getRootCause
@Nullable public java.lang.Throwable getRootCause()
Retrieve the innermost cause of this exception, if any.- Returns:
- the innermost exception, or
nullif none - Since:
- 2.0
-
getMostSpecificCause
public java.lang.Throwable getMostSpecificCause()
Retrieve the most specific cause of this exception, that is, either the innermost cause (root cause) or this exception itself.Differs from
getRootCause()in that it falls back to the present exception if there is no root cause.- Returns:
- the most specific cause (never
null) - Since:
- 2.0.3
-
contains
public boolean contains(@Nullable java.lang.Class<?> exType)Check whether this exception contains an exception of the given type: either it is of the given class itself or it contains a nested cause of the given type.- Parameters:
exType- the exception type to look for- Returns:
- whether there is a nested exception of the specified type
-
-