org.apache.pdfbox.pdmodel.common
Class COSDictionaryMap<K,V>

java.lang.Object
  extended by org.apache.pdfbox.pdmodel.common.COSDictionaryMap<K,V>
All Implemented Interfaces:
java.util.Map<K,V>

public class COSDictionaryMap<K,V>
extends java.lang.Object
implements java.util.Map<K,V>

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

Version:
$Revision: 1.10 $
Author:
Ben Litchfield

Nested Class Summary
 
Nested classes/interfaces inherited from interface java.util.Map
java.util.Map.Entry<K,V>
 
Constructor Summary
COSDictionaryMap(java.util.Map<K,V> actualsMap, COSDictionary dicMap)
          Constructor for this map.
 
Method Summary
 void clear()
          
 boolean containsKey(java.lang.Object key)
          
 boolean containsValue(java.lang.Object value)
          
static COSDictionary convert(java.util.Map<?,?> someMap)
          This will take a map<java.lang.String,org.apache.pdfbox.pdmodel.COSObjectable> and convert it into a COSDictionary<COSName,COSBase>.
static COSDictionaryMap<java.lang.String,java.lang.Object> convertBasicTypesToMap(COSDictionary map)
          This will take a COS dictionary and convert it into COSDictionaryMap.
 java.util.Set<java.util.Map.Entry<K,V>> entrySet()
          
 boolean equals(java.lang.Object o)
          
 V get(java.lang.Object key)
          
 int hashCode()
          
 boolean isEmpty()
          
 java.util.Set<K> keySet()
          
 V put(K key, V value)
          
 void putAll(java.util.Map<? extends K,? extends V> t)
          
 V remove(java.lang.Object key)
          
 int size()
          
 java.lang.String toString()
          
 java.util.Collection<V> values()
          
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

COSDictionaryMap

public COSDictionaryMap(java.util.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 java.util.Map<K,V>

isEmpty

public boolean isEmpty()

Specified by:
isEmpty in interface java.util.Map<K,V>

containsKey

public boolean containsKey(java.lang.Object key)

Specified by:
containsKey in interface java.util.Map<K,V>

containsValue

public boolean containsValue(java.lang.Object value)

Specified by:
containsValue in interface java.util.Map<K,V>

get

public V get(java.lang.Object key)

Specified by:
get in interface java.util.Map<K,V>

put

public V put(K key,
             V value)

Specified by:
put in interface java.util.Map<K,V>

remove

public V remove(java.lang.Object key)

Specified by:
remove in interface java.util.Map<K,V>

putAll

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

Specified by:
putAll in interface java.util.Map<K,V>

clear

public void clear()

Specified by:
clear in interface java.util.Map<K,V>

keySet

public java.util.Set<K> keySet()

Specified by:
keySet in interface java.util.Map<K,V>

values

public java.util.Collection<V> values()

Specified by:
values in interface java.util.Map<K,V>

entrySet

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

Specified by:
entrySet in interface java.util.Map<K,V>

equals

public boolean equals(java.lang.Object o)

Specified by:
equals in interface java.util.Map<K,V>
Overrides:
equals in class java.lang.Object

toString

public java.lang.String toString()

Overrides:
toString in class java.lang.Object

hashCode

public int hashCode()

Specified by:
hashCode in interface java.util.Map<K,V>
Overrides:
hashCode in class java.lang.Object

convert

public static COSDictionary convert(java.util.Map<?,?> someMap)
This will take a map<java.lang.String,org.apache.pdfbox.pdmodel.COSObjectable> and convert it into a COSDictionary<COSName,COSBase>.

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

convertBasicTypesToMap

public static COSDictionaryMap<java.lang.String,java.lang.Object> convertBasicTypesToMap(COSDictionary map)
                                                                                  throws java.io.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:
java.io.IOException - If there is an error during the conversion.