Class DelegateBeanMap<T>
- Type Parameters:
- T- The class type of the wrapped bean.
BeanMap where property values can be overridden, removed, or reordered without
 affecting the underlying bean.
 
 Provides the filterKeys(List) method for specifying the keys to keep in the bean map and in what order
 they should appear.
 
See Also:
- 
Nested Class SummaryNested classes/interfaces inherited from class java.util.AbstractMapAbstractMap.SimpleEntry<K extends Object,V extends Object>, AbstractMap.SimpleImmutableEntry<K extends Object, V extends Object> 
- 
Field SummaryFields inherited from class org.apache.juneau.BeanMaparrayPropertyCache, bean, meta, propertyCache
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionvoidAdd a key in the next position.entrySet()Returns all the properties associated with the bean.filterKeys(List<String> keys) Remove all but the specified properties from this bean map.forEachProperty(Predicate<BeanPropertyMeta> filter, Consumer<BeanPropertyMeta> action) Performs an action on each property in this bean map.Gets a property on the bean.getMeta()Returns the metadata associated with this bean map.Returns a simple collection of properties for this bean map.keySet()Returns the names of all properties associated with the bean.Sets a property on the bean.Methods inherited from class org.apache.juneau.BeanMapadd, containsKey, forEachValue, get, getBean, getBean, getBeanSession, getClassMeta, getProperties, getProperty, getPropertyMeta, getRaw, load, load, load, of, resolveVarsMethods inherited from class java.util.AbstractMapclear, clone, containsValue, equals, hashCode, isEmpty, putAll, size, toString, valuesMethods inherited from class java.lang.Objectfinalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Mapcompute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll
- 
Constructor Details- 
DelegateBeanMapConstructor.- Parameters:
- bean- The bean being wrapped.
- session- The bean session that created this bean map.
 
 
- 
- 
Method Details- 
addKeyAdd a key in the next position.- Parameters:
- key- The key to add.
 
- 
putDescription copied from class:BeanMapSets a property on the bean.If there is a ObjectSwapassociated with this bean property or bean property type class, then you must pass in a transformed value. For example, if the bean property type class is aDateand the bean property has theTemporalDateSwap.IsoInstantswap associated with it through the@Swap(value)annotation, the value being passed in must be a String containing an ISO8601 date-time string value.Example:// Construct a bean with a 'birthDate' Date field Personperson =new Person();// Create a bean context and add the ISO8601 date-time swap BeanContextbeanContext = BeanContext.create ().swaps(DateSwap.ISO8601DT.class ).build();// Wrap our bean in a bean map BeanMap<Person>beanMap =beanContext .toBeanMap(person );// Set the field beanMap .put("birthDate" ,"'1901-03-03T04:05:06-5000'" );- Specified by:
- putin interface- Map<String,- Object> 
- Overrides:
- putin class- BeanMap<T>
- Parameters:
- key- The name of the property to set.
- val- The value to set the property to.
- Returns:
- If the bean context setting beanMapPutReturnsOldValueistrue , then the old value of the property is returned. Otherwise, this method always returnsnull .
 
- 
getDescription copied from class:BeanMapGets a property on the bean.If there is a ObjectSwapassociated with this bean property or bean property type class, then this method will return the transformed value. For example, if the bean property type class is aDateand the bean property has theTemporalDateSwap.IsoInstantswap associated with it through the@Swap(value)annotation, this method will return a String containing an ISO8601 date-time string value.Example:// Construct a bean with a 'birthDate' Date field Personperson =new Person();person .setBirthDate(new Date(1, 2, 3, 4, 5, 6));// Create a bean context and add the ISO8601 date-time swap BeanContextbeanContext = BeanContext.create ().swaps(DateSwap.ISO8601DT.class ).build();// Wrap our bean in a bean map BeanMap<Person>beanMap =beanContext .toBeanMap(person );// Get the field as a string (i.e. "'1901-03-03T04:05:06-5000'") StringbirthDate =beanMap .get("birthDate" );
- 
keySetDescription copied from class:BeanMapReturns the names of all properties associated with the bean.The returned set is unmodifiable. 
- 
filterKeysRemove all but the specified properties from this bean map.This does not affect the underlying bean. - Parameters:
- keys- The remaining keys in the bean map (in the specified order).
- Returns:
- This object.
 
- 
remove
- 
getMetaDescription copied from class:BeanMapReturns the metadata associated with this bean map.
- 
entrySetDescription copied from class:BeanMapReturns all the properties associated with the bean.
- 
getPropertiesDescription copied from class:BeanMapReturns a simple collection of properties for this bean map.- Overrides:
- getPropertiesin class- BeanMap<T>
- Returns:
- A simple collection of properties for this bean map.
 
- 
forEachPropertypublic BeanMap<T> forEachProperty(Predicate<BeanPropertyMeta> filter, Consumer<BeanPropertyMeta> action) Description copied from class:BeanMapPerforms an action on each property in this bean map.- Overrides:
- forEachPropertyin class- BeanMap<T>
- Parameters:
- filter- The filter to apply to properties.
- action- The action.
- Returns:
- This object.
 
 
-