Class NestableDelegate
- java.lang.Object
-
- org.apache.commons.lang.exception.NestableDelegate
-
- All Implemented Interfaces:
java.io.Serializable
@Deprecated(since="2021-04-30") public class NestableDelegate extends java.lang.Object implements java.io.Serializable
Deprecated.Commons Lang 2 is in maintenance mode. Commons Lang 3 should be used instead.A shared implementation of the nestable exception functionality.
The code is shared between
NestableError
,NestableException
andNestableRuntimeException
.- Since:
- 1.0
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static boolean
matchSubclasses
Deprecated.Whether to match subclasses via indexOf.static boolean
topDown
Deprecated.Whether to print the stack trace top-down.static boolean
trimStackFrames
Deprecated.Whether to trim the repeated stack trace.
-
Constructor Summary
Constructors Constructor Description NestableDelegate(Nestable nestable)
Deprecated.Constructs a newNestableDelegate
instance to manage the specifiedNestable
.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description java.lang.String
getMessage(int index)
Deprecated.Returns the error message of theThrowable
in the chain ofThrowable
s at the specified index, numbered from 0.java.lang.String
getMessage(java.lang.String baseMsg)
Deprecated.Returns the full message contained by theNestable
and any nestedThrowable
s.java.lang.String[]
getMessages()
Deprecated.Returns the error message of this and any nestedThrowable
s in an array of Strings, one element for each message.java.lang.Throwable
getThrowable(int index)
Deprecated.Returns theThrowable
in the chain ofThrowable
s at the specified index, numbered from 0.int
getThrowableCount()
Deprecated.Returns the number ofThrowable
s contained in theNestable
contained by this delegate.java.lang.Throwable[]
getThrowables()
Deprecated.Returns this delegate'sNestable
and any nestedThrowable
s in an array ofThrowable
s, one element for eachThrowable
.int
indexOfThrowable(java.lang.Class type, int fromIndex)
Deprecated.Returns the index, numbered from 0, of the firstThrowable
that matches the specified type, or a subclass, in the chain ofThrowable
s with an index greater than or equal to the specified index.void
printStackTrace()
Deprecated.Prints the stack trace of this exception the the standar error stream.void
printStackTrace(java.io.PrintStream out)
Deprecated.Prints the stack trace of this exception to the specified stream.void
printStackTrace(java.io.PrintWriter out)
Deprecated.Prints the stack trace of this exception to the specified writer.
-
-
-
Field Detail
-
topDown
public static boolean topDown
Deprecated.Whether to print the stack trace top-down. This public flag may be set by calling code, typically in initialisation. This exists for backwards compatability, setting it to false will return the library to v1.0 behaviour (but will affect all users of the library in the classloader).- Since:
- 2.0
-
trimStackFrames
public static boolean trimStackFrames
Deprecated.Whether to trim the repeated stack trace. This public flag may be set by calling code, typically in initialisation. This exists for backwards compatability, setting it to false will return the library to v1.0 behaviour (but will affect all users of the library in the classloader).- Since:
- 2.0
-
matchSubclasses
public static boolean matchSubclasses
Deprecated.Whether to match subclasses via indexOf. This public flag may be set by calling code, typically in initialisation. This exists for backwards compatability, setting it to false will return the library to v2.0 behaviour (but will affect all users of the library in the classloader).- Since:
- 2.1
-
-
Constructor Detail
-
NestableDelegate
public NestableDelegate(Nestable nestable)
Deprecated.Constructs a newNestableDelegate
instance to manage the specifiedNestable
.- Parameters:
nestable
- the Nestable implementation (must extendThrowable
)- Since:
- 2.0
-
-
Method Detail
-
getMessage
public java.lang.String getMessage(int index)
Deprecated.Returns the error message of theThrowable
in the chain ofThrowable
s at the specified index, numbered from 0.- Parameters:
index
- the index of theThrowable
in the chain ofThrowable
s- Returns:
- the error message, or null if the
Throwable
at the specified index in the chain does not contain a message - Throws:
java.lang.IndexOutOfBoundsException
- if theindex
argument is negative or not less than the count ofThrowable
s in the chain- Since:
- 2.0
-
getMessage
public java.lang.String getMessage(java.lang.String baseMsg)
Deprecated.Returns the full message contained by theNestable
and any nestedThrowable
s.- Parameters:
baseMsg
- the base message to use when creating the full message. Should be generally be called vianestableHelper.getMessage(super.getMessage())
, wheresuper
is an instance ofThrowable
.- Returns:
- The concatenated message for this and all nested
Throwable
s - Since:
- 2.0
-
getMessages
public java.lang.String[] getMessages()
Deprecated.Returns the error message of this and any nestedThrowable
s in an array of Strings, one element for each message. AnyThrowable
not containing a message is represented in the array by a null. This has the effect of cause the length of the returned array to be equal to the result of thegetThrowableCount()
operation.- Returns:
- the error messages
- Since:
- 2.0
-
getThrowable
public java.lang.Throwable getThrowable(int index)
Deprecated.Returns theThrowable
in the chain ofThrowable
s at the specified index, numbered from 0.- Parameters:
index
- the index, numbered from 0, of theThrowable
in the chain ofThrowable
s- Returns:
- the
Throwable
- Throws:
java.lang.IndexOutOfBoundsException
- if theindex
argument is negative or not less than the count ofThrowable
s in the chain- Since:
- 2.0
-
getThrowableCount
public int getThrowableCount()
Deprecated.Returns the number ofThrowable
s contained in theNestable
contained by this delegate.- Returns:
- the throwable count
- Since:
- 2.0
-
getThrowables
public java.lang.Throwable[] getThrowables()
Deprecated.Returns this delegate'sNestable
and any nestedThrowable
s in an array ofThrowable
s, one element for eachThrowable
.- Returns:
- the
Throwable
s - Since:
- 2.0
-
indexOfThrowable
public int indexOfThrowable(java.lang.Class type, int fromIndex)
Deprecated.Returns the index, numbered from 0, of the firstThrowable
that matches the specified type, or a subclass, in the chain ofThrowable
s with an index greater than or equal to the specified index. The method returns -1 if the specified type is not found in the chain.NOTE: From v2.1, we have clarified the
Nestable
interface such that this method matches subclasses. If you want to NOT match subclasses, please useExceptionUtils.indexOfThrowable(Throwable, Class, int)
(which is avaiable in all versions of lang). An alternative is to use the public static flagmatchSubclasses
onNestableDelegate
, however this is not recommended.- Parameters:
type
- the type to find, subclasses match, null returns -1fromIndex
- the index, numbered from 0, of the starting position in the chain to be searched- Returns:
- index of the first occurrence of the type in the chain, or -1 if the type is not found
- Throws:
java.lang.IndexOutOfBoundsException
- if thefromIndex
argument is negative or not less than the count ofThrowable
s in the chain- Since:
- 2.0
-
printStackTrace
public void printStackTrace()
Deprecated.Prints the stack trace of this exception the the standar error stream.
-
printStackTrace
public void printStackTrace(java.io.PrintStream out)
Deprecated.Prints the stack trace of this exception to the specified stream.- Parameters:
out
-PrintStream
to use for output.- See Also:
printStackTrace(PrintWriter)
-
printStackTrace
public void printStackTrace(java.io.PrintWriter out)
Deprecated.Prints the stack trace of this exception to the specified writer. If the Throwable class has agetCause
method (i.e. running on jre1.4 or higher), this method just uses Throwable's printStackTrace() method. Otherwise, generates the stack-trace, by taking into account the 'topDown' and 'trimStackFrames' parameters. The topDown and trimStackFrames are set to 'true' by default (produces jre1.4-like stack trace).- Parameters:
out
-PrintWriter
to use for output.
-
-