## org.apache.commons.collections.map
Class TypedMap

    java.lang.Object
      org.apache.commons.collections.map.TypedMap

    public class TypedMap

extends java.lang.Object

Decorates another `Map` to validate that elements added are of a specific type.

The validation of additions is performed via an instanceof test against a specified `Class`. If an object cannot be added to the collection, an IllegalArgumentException is thrown.

Note that TypedMap is not synchronized and is not thread-safe. If you wish to use this map from multiple threads concurrently, you must use appropriate synchronization. The simplest approach is to wrap this map using `Collections.synchronizedMap(Map)`. This class may throw exceptions when accessed by concurrent threads without synchronization.

The returned implementation is Serializable from Commons Collections 3.1.

Since:
  Commons Collections 3.0
Version:
  $Revision: 646777 $ $Date: 2008-04-10 13:33:15 +0100 (Thu, 10 Apr 2008) $
Author:
  Stephen Colebourne, Matthew Hawthorne

Constructor Summary
`protected` `TypedMap()` Restrictive constructor.

Method Summary
`static java.util.Map` `decorate(java.util.Map map, java.lang.Class keyType, java.lang.Class valueType)` Factory method to create a typed map.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### TypedMap

    protected TypedMap()

  Restrictive constructor.

Method Detail

### decorate

    public static java.util.Map decorate(java.util.Map map,
                                         java.lang.Class keyType,
                                         java.lang.Class valueType)

  Factory method to create a typed map.

  If there are any elements already in the map being decorated, they are validated.

  Parameters:
    `map` - the map to decorate, must not be null
    `keyType` - the type to allow as keys, must not be null
    `valueType` - the type to allow as values, must not be null
  Throws:
    `java.lang.IllegalArgumentException` - if list or type is null
    `java.lang.IllegalArgumentException` - if the list contains invalid elements

Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.