diff options
Diffstat (limited to 'isoparser/src/main/java/com/coremedia/iso/boxes/mdat/DummyMap.java')
-rw-r--r-- | isoparser/src/main/java/com/coremedia/iso/boxes/mdat/DummyMap.java | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/isoparser/src/main/java/com/coremedia/iso/boxes/mdat/DummyMap.java b/isoparser/src/main/java/com/coremedia/iso/boxes/mdat/DummyMap.java new file mode 100644 index 0000000..ab96023 --- /dev/null +++ b/isoparser/src/main/java/com/coremedia/iso/boxes/mdat/DummyMap.java @@ -0,0 +1,84 @@ +package com.coremedia.iso.boxes.mdat; + +import java.util.Collection; +import java.util.Collections; +import java.util.Comparator; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + +/** + * A SortedSet that contains just one value. + */ +public class DummyMap<K, V> implements Map<K, V> { + HashSet<K> keys = new HashSet<K>(); + V value; + + public DummyMap(V value) { + this.value = value; + } + + public Comparator<? super K> comparator() { + return null; // I don't have any + } + + public void addKeys(K[] keys) { + Collections.addAll(this.keys, keys); + + } + + public int size() { + return keys.size(); + } + + public boolean isEmpty() { + return keys.isEmpty(); + } + + public boolean containsKey(Object key) { + return keys.contains(key); + } + + public boolean containsValue(Object value) { + return this.value == value; + } + + public V get(Object key) { + return keys.contains(key) ? value : null; + } + + public V put(K key, V value) { + assert this.value == value; + keys.add(key); + return this.value; + } + + public V remove(Object key) { + V v = get(key); + keys.remove(key); + return v; + } + + public void putAll(Map<? extends K, ? extends V> m) { + for (K k : m.keySet()) { + assert m.get(k) == value; + this.keys.add(k); + } + } + + public void clear() { + keys.clear(); + } + + public Set<K> keySet() { + return keys; + } + + public Collection<V> values() { + throw new UnsupportedOperationException(); + } + + public Set<Entry<K, V>> entrySet() { + throw new UnsupportedOperationException(); + } +} |