## org.springframework.beans.factory.support
Class ManagedMap<K,V>

    java.lang.Object
      java.util.AbstractMap<K,V>
          java.util.HashMap<K,V>
              java.util.LinkedHashMap<K,V>
                  org.springframework.beans.factory.support.ManagedMap<K,V>

All Implemented Interfaces:
  Serializable, Cloneable, Map<K,V>, BeanMetadataElement, Mergeable

    public class ManagedMap<K,V>

extends LinkedHashMap<K,V>
implements Mergeable, BeanMetadataElement

Tag collection class used to hold managed Map values, which may include runtime bean references (to be resolved into bean objects).

Since:
  27.05.2003
Author:
  Juergen Hoeller, Rob Harrop
See Also:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class java.util.AbstractMap
`AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>`

Constructor Summary
`ManagedMap()`
`ManagedMap(int initialCapacity)`

Method Summary
`String` `getKeyTypeName()` Return the default key type name (class name) to be used for this map.
`Object` `getSource()` Return the configuration source `Object` for this metadata element (may be `null`).
`String` `getValueTypeName()` Return the default value type name (class name) to be used for this map.
`boolean` `isMergeEnabled()` Is merging enabled for this particular instance?
`Object` `merge(Object parent)` Merge the current value set with that of the supplied object.
`void` `setKeyTypeName(String keyTypeName)` Set the default key type name (class name) to be used for this map.
`void` `setMergeEnabled(boolean mergeEnabled)` Set whether merging should be enabled for this collection, in case of a 'parent' collection value being present.
`void` `setSource(Object source)` Set the configuration source `Object` for this metadata element.
`void` `setValueTypeName(String valueTypeName)` Set the default value type name (class name) to be used for this map.

Methods inherited from class java.util.LinkedHashMap
`clear, containsValue, get, removeEldestEntry`

Methods inherited from class java.util.HashMap
`clone, containsKey, entrySet, isEmpty, keySet, put, putAll, remove, size, values`

Methods inherited from class java.util.AbstractMap
`equals, hashCode, toString`

Methods inherited from class java.lang.Object
`finalize, getClass, notify, notifyAll, wait, wait, wait`

Methods inherited from interface java.util.Map
`containsKey, entrySet, equals, hashCode, isEmpty, keySet, put, putAll, remove, size, values`

Constructor Detail

### ManagedMap

    public ManagedMap()

### ManagedMap

    public ManagedMap(int initialCapacity)

Method Detail

### setSource

    public void setSource(Object source)

  Set the configuration source `Object` for this metadata element.

  The exact type of the object will depend on the configuration mechanism used.

### getSource

    public Object getSource()

  Description copied from interface: `BeanMetadataElement`
  Return the configuration source `Object` for this metadata element (may be `null`).

  Specified by:
    `getSource` in interface `BeanMetadataElement`

### setKeyTypeName

    public void setKeyTypeName(String keyTypeName)

  Set the default key type name (class name) to be used for this map.

### getKeyTypeName

    public String getKeyTypeName()

  Return the default key type name (class name) to be used for this map.

### setValueTypeName

    public void setValueTypeName(String valueTypeName)

  Set the default value type name (class name) to be used for this map.

### getValueTypeName

    public String getValueTypeName()

  Return the default value type name (class name) to be used for this map.

### setMergeEnabled

    public void setMergeEnabled(boolean mergeEnabled)

  Set whether merging should be enabled for this collection, in case of a 'parent' collection value being present.

### isMergeEnabled

    public boolean isMergeEnabled()

  Description copied from interface: `Mergeable`
  Is merging enabled for this particular instance?

  Specified by:
    `isMergeEnabled` in interface `Mergeable`

### merge

    public Object merge(Object parent)

  Description copied from interface: `Mergeable`
  Merge the current value set with that of the supplied object.

  The supplied object is considered the parent, and values in the callee's value set must override those of the supplied object.

  Specified by:
    `merge` in interface `Mergeable`
  Parameters:
    `parent` - the object to merge with
  Returns:
    the result of the merge operation