|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectabk.core.util.ExceptionUtils
public final class ExceptionUtils
Métodos estáticos que implementan el lanzamiento de excepciones en ciertas condiciones habituales.
Constructor Summary | |
---|---|
private |
ExceptionUtils()
Impide la creación de instancias de ExceptionUtils. |
Method Summary | ||
---|---|---|
static Throwable |
causeOf(Throwable t)
Devuelve la causa de una excepción, si la tuviera, o bien la propia excepción si no hay otra causa para ella. |
|
static
|
exceptionOf(Class<E> type,
Throwable ex)
Devuelve una excepción del tipo indicado. |
|
static AssertionError |
newAssertionError(String mensaje,
Throwable t)
Crea un error AssertionError especificando un mensaje y una causa. |
|
static
|
reduceStackTrace(E t,
Class<?> type)
Reduce la traza de pilas eliminando los elementos a partir de la primera aparición de una determinada clase. |
|
static void |
requireArgument(boolean testResult)
Lanza una excepción IllegalArgumentException en el caso de que un determinado test devuelve false . |
|
static void |
requireArgument(boolean testResult,
Object message)
|
|
static void |
requireArgument(boolean testResult,
String pattern,
Object... args)
Lanza una excepción IllegalArgumentException en el caso de que un determinado test devuelve false . |
|
static
|
requireAssignable(Class<?> clazz,
Class<T> classTo)
Comprueba si una clase es asignable a un tipo dado y devuelve la misma clase marcada como subclase del tipo indicado, lanzando una excepción IllegalClassException si no lo es. |
|
static
|
requireAssignable(Class<?> clazz,
Class<T> classTo,
Object message)
|
|
static
|
requireAssignable(Class<?> clazz,
Class<T> classTo,
String pattern,
Object... args)
Comprueba si una clase es asignable a un tipo dado y devuelve la misma clase marcada como subclase del tipo indicado, lanzando una excepción IllegalClassException si no lo es. |
|
static
|
requireAssignable(Object instancia,
Class<T> classTo)
Comprueba si una instancia es asignable a un tipo dado y devuelve la misma instancia con un casting a dicho tipo si es posible, lanzando una excepción IllegalClassException si no lo es. |
|
static
|
requireAssignable(Object instancia,
Class<T> classTo,
Object message)
|
|
static
|
requireAssignable(Object instancia,
Class<T> classTo,
String pattern,
Object... args)
Comprueba si una instancia es asignable a un tipo dado y devuelve la misma instancia con un casting a dicho tipo si es posible, lanzando una excepción IllegalClassException si no lo es. |
|
static
|
requireNonEmpty(T cs)
Devuelve la misma cadena de caracteres que se le pasa si ésta no está vacía, lanzando una excepción NullArgumentException si es nula, o una excepción EmptyArgumentException si, no siendo nula, tiene longitud cero. |
|
static
|
requireNonEmpty(T cs,
Object message)
|
|
static
|
requireNonEmpty(T cs,
String pattern,
Object... args)
Devuelve la misma cadena de caracteres que se le pasa si ésta no está vacía, lanzando una excepción NullArgumentException si la cadena es nula, o una excepción EmptyArgumentException si, no siendo nula, tiene longitud cero. |
|
static
|
requireNonNull(T instancia)
Devuelve el mismo objeto que se le pasa si éste no es nulo, lanzando una excepción NullArgumentException en caso contrario. |
|
static
|
requireNonNull(T instancia,
Object message)
Devuelve el mismo objeto que se le pasa si éste no es nulo, lanzando una excepción NullArgumentException con el mensaje indicado en caso contrario. |
|
static
|
requireNonNull(T instancia,
String pattern,
Object... args)
Devuelve el mismo objeto que se le pasa si éste no es nulo, lanzando una excepción NullArgumentException con el mensaje indicado en caso contrario. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
private ExceptionUtils()
Method Detail |
---|
public static final Throwable causeOf(Throwable t)
t
- Excepción cuya causa se quiere recuperar.
null
. El valor devuelto será nulo
si t es nulo.Throwable.getCause()
public static final <E extends Throwable> E exceptionOf(Class<E> type, Throwable ex)
Su uso previsto es para unificar el lanzamiento de excepciones controladas en un único tipo:
try { // haz algo } catch (Throwable e) { throw ExceptionUtils.exceptionOf(NewException.class, e); }Normalmente se usará a través de una clase intermedia:
class MiException extends Exception { // parte de la definicion public static final miExceptionOf(Throwable t) { return ExceptionUtils.exceptionOf(MiException.class,t); } }
E
- Tipo de la excepción que se desea recibir. Debe implementar un constructor
público sin argumentos.type
- Clase que identifica la excepción que se se quiere recuperar.ex
- Excepción a partir de la cual se desea recuperar una del tipo E.
ExceptionInInitializerError
- si ClassUtils.createObject(Class) la
lanza.
NotImplementedException
- si E no implementa un constructor por defecto.
NullPointerException
- si type es nulo.
SecurityException
- si ClassUtils.createObject(Class) la
lanza.ClassUtils.createObject(Class)
public static <E extends Throwable> E reduceStackTrace(E t, Class<?> type)
t
- Excepción para la que reducimos la traza.type
- Tipo de la clase donde tenemos que empezar a limpiar.public static final <T> T requireNonNull(T instancia)
T
- Tipo de dato del objeto.instancia
- Objeto a comprobar.
NullArgumentException
- si el argumento instancia es nulo.public static final <T> T requireNonNull(T instancia, String pattern, Object... args)
T
- Tipo de dato del objeto.instancia
- Objeto a comprobar.pattern
- Patrón del mensaje.args
- Argumentos que se aplican al patrón.
NullArgumentException
- si el argumento instancia es nulo.public static final <T> T requireNonNull(T instancia, Object message)
T
- Tipo de dato del objeto.instancia
- Objeto a comprobar.message
- Instancia del mensaje, que se obtiene invocando el método
Object.toString().
NullArgumentException
- si el argumento instancia es nulo.public static final void requireArgument(boolean testResult)
false
.
testResult
- Resultado del test realizado. Si es false
se lanza una
excepciión IllegalArgumentException.
IllegalArgumentException
- si testResult es false
.public static final void requireArgument(boolean testResult, String pattern, Object... args)
false
.
testResult
- Resultado del test realizado. Si es false
se lanza una
excepciión IllegalArgumentException.pattern
- Patrón del mensaje de error para la excepción, si se lanza.args
- Argumentos para dar formato al mensaje de error.
IllegalArgumentException
- si testResult es false
.public static final void requireArgument(boolean testResult, Object message)
public static final <T extends CharSequence> T requireNonEmpty(T cs)
T
- Tipo de la cadena de caracteres.cs
- Cadena a comprobar.
NullArgumentException
- si la cadena es nula.
EmptyArgumentException
- si la cadena, no siendo nula, está vacía.public static final <T extends CharSequence> T requireNonEmpty(T cs, String pattern, Object... args)
T
- Tipo de la cadena de caracteres.cs
- Cadena a comprobar.pattern
- Patrón del mensaje para la excepción que se cree.args
- Argumentos que se aplican al patrón.
NullArgumentException
- si la cadena es nula.
EmptyArgumentException
- si la cadena, no siendo nula, está vacía.public static final <T extends CharSequence> T requireNonEmpty(T cs, Object message)
public static final <T> T requireAssignable(Object instancia, Class<T> classTo)
Es idéntica a Class.cast(Object) pero lanza una excepción que desciende de IllegalArgumentException en vez de ClassCastException.
T
- Tipo de dato con el que validamos.instancia
- Instancia que validamos. Puede ser nula.classTo
- Clase que caracteriza a T.
IllegalClassException
- si instancia no es asignable a T.
NullArgumentException
- si classTo es nula.public static final <T> T requireAssignable(Object instancia, Class<T> classTo, String pattern, Object... args)
Es idéntica a Class.cast(Object) pero lanza una excepción que desciende de IllegalArgumentException en vez de ClassCastException.
T
- Tipo de dato con el que validamos.instancia
- Instancia que validamos. Puede ser nula.classTo
- Clase que caracteriza a T.pattern
- Patrón del mensaje para la excepción que se cree.args
- Argumentos que se aplican al patrón.
IllegalClassException
- si instancia no es asignable a T.
NullArgumentException
- si classTo es nula.public static final <T> T requireAssignable(Object instancia, Class<T> classTo, Object message)
public static final <T> Class<? extends T> requireAssignable(Class<?> clazz, Class<T> classTo)
Es semejante a Class.asSubclass(Class) pero lanza una excepción que desciende de IllegalArgumentException en vez de ClassCastException.
T
- Tipo de dato con el que validamos.clazz
- Clase que validamos. Puede ser nula.classTo
- Clase que caracteriza a T.
<? extends T>
.
NullArgumentException
- si classTo es nula.
IllegalClassException
- si clazz no es asignable a T.public static final <T> Class<? extends T> requireAssignable(Class<?> clazz, Class<T> classTo, String pattern, Object... args)
Es semejante a Class.asSubclass(Class) pero lanza una excepción que desciende de IllegalArgumentException en vez de ClassCastException.
T
- Tipo de dato con el que validamos.clazz
- Clase que validamos. Puede ser nula.classTo
- Clase que caracteriza a T.pattern
- Cadena de texto a usar como patrón del mensaje.args
- Argumentos a aplicar al patrón del mensaje.
<? extends T>
.
NullArgumentException
- si classTo es nula.
IllegalClassException
- si clazz no es asignable a T.public static final <T> Class<? extends T> requireAssignable(Class<?> clazz, Class<T> classTo, Object message)
public static final AssertionError newAssertionError(String mensaje, Throwable t)
mensaje
- Mensaje del error. Si es nulo se usa una cadena vacía.t
- Causa del error.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |