public final class AutoBeanUtils extends Object
Modifier and Type | Method and Description |
---|---|
static boolean |
deepEquals(AutoBean<?> a,
AutoBean<?> b)
Compare two graphs of AutoBeans based on values.
|
static Map<String,Object> |
diff(AutoBean<?> a,
AutoBean<?> b)
Returns a map of properties that differ (via
Object.equals(Object) )
between two AutoBeans. |
static Map<String,Object> |
getAllProperties(AutoBean<?> bean)
Returns a map that is a copy of the properties contained in an AutoBean.
|
static <T,U extends T> |
getAutoBean(U delegate)
Return the single AutoBean wrapper that is observing the delegate object or
null if the parameter is null or not wrapped by an AutoBean. |
public static boolean deepEquals(AutoBean<?> a, AutoBean<?> b)
Splittables
are compared by valueThis will work for both simple and wrapper AutoBeans.
This method may crawl the entire object graph reachable from the input parameters and may be arbitrarily expensive to compute.
public static Map<String,Object> diff(AutoBean<?> a, AutoBean<?> b)
Object.equals(Object)
)
between two AutoBeans. The keys are property names and the values are the
value of the property in b
. Properties present in
a
but missing in b
will be represented by
null
values. This implementation will compare AutoBeans of
different parameterizations, although the diff produced is likely
meaningless.
This will work for both simple and wrapper AutoBeans.
public static Map<String,Object> getAllProperties(AutoBean<?> bean)
public static <T,U extends T> AutoBean<T> getAutoBean(U delegate)
null
if the parameter is null
or not wrapped by an AutoBean.delegate
- a delegate object, or null
AutoBean
wrapper for the delegate, or null
Copyright © 2016. All rights reserved.