abk.util
Class Objects

java.lang.Object
  extended by abk.util.Objects

public final class Objects
extends Object

Contiene métodos estáticos de utilidad para cualquier tipo de objeto.


Field Summary
private static int FIELD_MASK_DONT
           
private static int FIELD_MASK_YES
           
private static int GETTER_MASK_DONT
           
private static int GETTER_MASK_YES
           
 
Constructor Summary
private Objects()
           
 
Method Summary
static Object callMethod(Object obj, Method method, Object... args)
          Invoca al método del objeto y devuelve su resultado.
static Object getNestedBean(Object obj, String pathName)
           
static Object getNestedValue(Object obj, String pathName)
          Devuelve el valor de una propiedad anidada.
static Object getProperty(Object bean, PropertyDescriptor desc)
           
static Object getProperty(Object bean, String name)
          Devuelve el valor de una propiedad simple de un Java Bean.
static boolean isValidAccessor(Method method)
           
static boolean isValidProperty(Class<?> clazz, PropertyDescriptor desc)
          Evalúa si una propiedad de un objeto es válida para ser serializada.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

GETTER_MASK_DONT

private static final int GETTER_MASK_DONT
See Also:
Constant Field Values

GETTER_MASK_YES

private static final int GETTER_MASK_YES
See Also:
Constant Field Values

FIELD_MASK_DONT

private static final int FIELD_MASK_DONT
See Also:
Constant Field Values

FIELD_MASK_YES

private static final int FIELD_MASK_YES
See Also:
Constant Field Values
Constructor Detail

Objects

private Objects()
Method Detail

callMethod

public static final Object callMethod(Object obj,
                                      Method method,
                                      Object... args)
Invoca al método del objeto y devuelve su resultado.

Parameters:
method - Método de lectura de la propiedad.
obj - Objeto para el que se invoca el método.
args - Argumentos de la llamada al método.
Returns:
Valor devuelto por el método.
Throws:
NullPointerException - method es null o si obj es null y el método no es un método estático.
UndeclaredThrowableException - si se produce una excepción IllegalAccessException o InvocationTargetException.
IllegalArgumentException - si alguno de los argumentos, o el propio objeto, no son compatibles con la declaración del método.
ExceptionInInitializerError - si la inicialización necesaria para el método falla.
See Also:
Method.invoke(Object, Object...)

getProperty

public static Object getProperty(Object bean,
                                 String name)
Devuelve el valor de una propiedad simple de un Java Bean.

Parameters:
bean - Objeto del que se obtiene el valor.
name - Nombre d la propiedad simple que se quiere recuperar.
Returns:
Valor de la propiedad.
Throws:
NullArgumentException - si bean es null.
IllegalArgumentException - si se produce algún error de introspección o si la propiedad indicada en name es de sólo lectura.
See Also:
callMethod(Object, Method, Object...)

getProperty

public static Object getProperty(Object bean,
                                 PropertyDescriptor desc)

getNestedValue

public static final Object getNestedValue(Object obj,
                                          String pathName)
Devuelve el valor de una propiedad anidada. Si alguno de los valores intermedios es nulo, devuelve null.

Parameters:
obj - Objeto cuya propiedad se está consultando.
pathName - Ruta para acceder a la propiedad. Los puntos se consideran anidamiento de objetos hasta llegar a la propiedad final.
Returns:
Valor de la propiedad anidada, o null si falta alguno de los objetos anidados.
Throws:
NullPointerException - si obj o pathName son nulos.

getNestedBean

public static final Object getNestedBean(Object obj,
                                         String pathName)

isValidProperty

public static final boolean isValidProperty(Class<?> clazz,
                                            PropertyDescriptor desc)
Evalúa si una propiedad de un objeto es válida para ser serializada.

Se considera que una propiedad es válida para ser serializada si NO implementa Type y cumple cualquiera de las siguientes condiciones:

Además de estas condiciones, el método getter() que devuelve su valor debe ser público y no ser estático.

Si el objeto tiene un campo del mismo nombre que la propiedad, este no puede ser ni static, final, public, protected, transient ni volatile.

Parameters:
clazz - Clase del objeto que se está serializando.
desc - Descriptor de la propiedad.
Returns:
true si la propiedad se puede serializar.

isValidAccessor

public static final boolean isValidAccessor(Method method)


Copyright © 2024. All rights reserved.