org.apache.pdfbox.pdmodel.common

## Class COSDictionaryMap<K,V>

- java.lang.Object
- - org.apache.pdfbox.pdmodel.common.COSDictionaryMap<K,V>

All Implemented Interfaces:
  Map<K,V>

    public class COSDictionaryMap<K,V>
    extends Object
    implements Map<K,V>

This is a Map that will automatically sync the contents to a COSDictionary.

Author:
  Ben Litchfield

### Nested Class Summary

### Nested classes/interfaces inherited from interface java.util.Map

`Map.Entry<K,V>`

### Constructor Summary

Constructors
Constructor and Description
`COSDictionaryMap(Map<K,V> actualsMap, COSDictionary dicMap)` Constructor for this map.

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`void` `clear()`
`boolean` `containsKey(Object key)`
`boolean` `containsValue(Object value)`
`static COSDictionary` `convert(Map<String,?> someMap)` This will take a map<java.lang.String,org.apache.pdfbox.pdmodel.COSObjectable> and convert it into a COSDictionary.
`static COSDictionaryMap<String,Object>` `convertBasicTypesToMap(COSDictionary map)` This will take a COS dictionary and convert it into COSDictionaryMap.
`Set<Map.Entry<K,V>>` `entrySet()`
`boolean` `equals(Object o)`
`V` `get(Object key)`
`int` `hashCode()`
`boolean` `isEmpty()`
`Set<K>` `keySet()`
`V` `put(K key, V value)`
`void` `putAll(Map<? extends K,? extends V> t)`
`V` `remove(Object key)`
`int` `size()`
`String` `toString()`
`Collection<V>` `values()`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface java.util.Map

`compute, computeIfAbsent, computeIfPresent, forEach, getOrDefault, merge, putIfAbsent, remove, replace, replace, replaceAll`

### Constructor Detail

#### COSDictionaryMap

    public COSDictionaryMap(Map<K,V> actualsMap,
                            COSDictionary dicMap)

Constructor for this map.

Parameters:
  `actualsMap` - The map with standard java objects as values.
  `dicMap` - The map with COSBase objects as values.

### Method Detail

#### size

    public int size()

Specified by:
  `size` in interface `Map<K,V>`

#### isEmpty

    public boolean isEmpty()

Specified by:
  `isEmpty` in interface `Map<K,V>`

#### containsKey

    public boolean containsKey(Object key)

Specified by:
  `containsKey` in interface `Map<K,V>`

#### containsValue

    public boolean containsValue(Object value)

Specified by:
  `containsValue` in interface `Map<K,V>`

#### get

    public V get(Object key)

Specified by:
  `get` in interface `Map<K,V>`

#### put

    public V put(K key,
                 V value)

Specified by:
  `put` in interface `Map<K,V>`

#### remove

    public V remove(Object key)

Specified by:
  `remove` in interface `Map<K,V>`

#### putAll

    public void putAll(Map<? extends K,? extends V> t)

Specified by:
  `putAll` in interface `Map<K,V>`

#### clear

    public void clear()

Specified by:
  `clear` in interface `Map<K,V>`

#### keySet

    public Set<K> keySet()

Specified by:
  `keySet` in interface `Map<K,V>`

#### values

    public Collection<V> values()

Specified by:
  `values` in interface `Map<K,V>`

#### entrySet

    public Set<Map.Entry<K,V>> entrySet()

Specified by:
  `entrySet` in interface `Map<K,V>`

#### equals

    public boolean equals(Object o)

Specified by:
  `equals` in interface `Map<K,V>`
Overrides:
  `equals` in class `Object`

#### toString

    public String toString()

Overrides:
  `toString` in class `Object`

#### hashCode

    public int hashCode()

Specified by:
  `hashCode` in interface `Map<K,V>`
Overrides:
  `hashCode` in class `Object`

#### convert

    public static COSDictionary convert(Map<String,?> someMap)

This will take a map<java.lang.String,org.apache.pdfbox.pdmodel.COSObjectable> and convert it into a COSDictionary.

Parameters:
  `someMap` - A map containing COSObjectables
Returns:
  A proper COSDictionary

#### convertBasicTypesToMap

    public static COSDictionaryMap<String,Object> convertBasicTypesToMap(COSDictionary map)
                                                                  throws IOException

This will take a COS dictionary and convert it into COSDictionaryMap. All cos objects will be converted to their primitive form.

Parameters:
  `map` - The COS mappings.
Returns:
  A standard java map.
Throws:
  `IOException` - If there is an error during the conversion.