public abstract class MapAdapter extends Object
Instances of this class adapt an arbitrary object type so a property can appear differently when it's placed into a Map or initialized from a Map. This impacts JSON generation too as it relies heavily on the process of transforming elements to/from maps.
To use this class create a new subclass of it and override the appropriate methods.
Modifier | Constructor and Description |
---|---|
protected |
MapAdapter(Class type)
By default subclasses should target a specific type but this can be
further narrowed by overriding
useAdapterFor(com.codename1.properties.PropertyBase) . |
Modifier and Type | Method and Description |
---|---|
void |
placeInMap(PropertyBase b,
Map m)
Places the given property into the given map
|
void |
setFromMap(PropertyBase b,
Map m)
Sets the value of the property from the map object
|
boolean |
useAdapterFor(PropertyBase b)
Returns true if the adapter should be used for this property
|
protected MapAdapter(Class type)
useAdapterFor(com.codename1.properties.PropertyBase)
.type
- the type to which the map adapter is boundpublic boolean useAdapterFor(PropertyBase b)
b
- the propertypublic void placeInMap(PropertyBase b, Map m)
b
- the property objectm
- the map instancepublic void setFromMap(PropertyBase b, Map m)
b
- the property objectm
- the map instance