public abstract class BeanMap extends Object implements Map
Map-based view of a JavaBean. The default set of keys is the
union of all property names (getters or setters). An attempt to set
a read-only property will be ignored, and write-only properties will
be returned as null. Removal of objects is not a
supported (the key set is fixed).| Modifier and Type | Class and Description |
|---|---|
static class |
BeanMap.Generator |
| Modifier and Type | Field and Description |
|---|---|
protected Object |
bean |
static int |
REQUIRE_GETTER
Limit the properties reflected in the key set of the map
to readable properties.
|
static int |
REQUIRE_SETTER
Limit the properties reflected in the key set of the map
to writable properties.
|
| Modifier | Constructor and Description |
|---|---|
protected |
BeanMap() |
protected |
BeanMap(Object bean) |
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
boolean |
containsKey(Object key) |
boolean |
containsValue(Object value) |
static BeanMap |
create(Object bean)
Helper method to create a new
BeanMap. |
Set |
entrySet() |
boolean |
equals(Object o) |
Object |
get(Object key) |
abstract Object |
get(Object bean,
Object key)
Get the property of a bean.
|
Object |
getBean()
Return the bean currently in use by this map.
|
abstract Class |
getPropertyType(String name)
Get the type of a property.
|
int |
hashCode() |
boolean |
isEmpty() |
abstract BeanMap |
newInstance(Object bean)
Create a new
BeanMap instance using the specified bean. |
Object |
put(Object key,
Object value) |
abstract Object |
put(Object bean,
Object key,
Object value)
Set the property of a bean.
|
void |
putAll(Map t) |
Object |
remove(Object key) |
void |
setBean(Object bean)
Change the underlying bean this map should use.
|
int |
size() |
String |
toString() |
Collection |
values() |
clone, finalize, getClass, notify, notifyAll, wait, wait, waitcompute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, keySet, merge, putIfAbsent, remove, replace, replace, replaceAllpublic static final int REQUIRE_GETTER
public static final int REQUIRE_SETTER
protected Object bean
protected BeanMap()
protected BeanMap(Object bean)
public static BeanMap create(Object bean)
BeanMap. For finer
control over the generated instance, use a new instance of
BeanMap.Generator instead of this static method.bean - the JavaBean underlying the mapBeanMap instancepublic abstract BeanMap newInstance(Object bean)
BeanMap instance using the specified bean.
This is faster than using the create(java.lang.Object) static method.bean - the JavaBean underlying the mapBeanMap instancepublic abstract Class getPropertyType(String name)
name - the name of the JavaBean propertypublic abstract Object get(Object bean, Object key)
BeanMap
to be used statically for multiple beans--the bean instance tied to the
map is ignored and the bean passed to this method is used instead.bean - the bean to query; must be compatible with the type of
this BeanMapkey - must be a Stringpublic abstract Object put(Object bean, Object key, Object value)
BeanMap
to be used statically for multiple beans--the bean instance tied to the
map is ignored and the bean passed to this method is used instead.key - must be a Stringpublic void setBean(Object bean)
bean - the new JavaBeangetBean()public Object getBean()
setBean(java.lang.Object)public boolean containsKey(Object key)
containsKey in interface Mappublic boolean containsValue(Object value)
containsValue in interface Mappublic boolean equals(Object o)
public int hashCode()
public Collection values()