diff options
Diffstat (limited to 'src/net/pacien/util/IntrinsicMap.java')
-rw-r--r-- | src/net/pacien/util/IntrinsicMap.java | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/src/net/pacien/util/IntrinsicMap.java b/src/net/pacien/util/IntrinsicMap.java new file mode 100644 index 0000000..fe59ac2 --- /dev/null +++ b/src/net/pacien/util/IntrinsicMap.java | |||
@@ -0,0 +1,66 @@ | |||
1 | /** | ||
2 | * | ||
3 | */ | ||
4 | package net.pacien.util; | ||
5 | |||
6 | import java.util.Collection; | ||
7 | import java.util.HashMap; | ||
8 | import java.util.Map; | ||
9 | |||
10 | /** | ||
11 | * @author pacien | ||
12 | * | ||
13 | */ | ||
14 | public class IntrinsicMap<K, V extends Mappable> extends HashMap<K, V> { | ||
15 | |||
16 | /** | ||
17 | * | ||
18 | */ | ||
19 | private static final long serialVersionUID = 1L; | ||
20 | |||
21 | /** | ||
22 | * | ||
23 | */ | ||
24 | public IntrinsicMap() { | ||
25 | super(); | ||
26 | } | ||
27 | |||
28 | /** | ||
29 | * @param initialCapacity | ||
30 | */ | ||
31 | public IntrinsicMap(final int initialCapacity) { | ||
32 | super(initialCapacity); | ||
33 | } | ||
34 | |||
35 | /** | ||
36 | * @param m | ||
37 | */ | ||
38 | public IntrinsicMap(final Map<? extends K, ? extends V> m) { | ||
39 | super(m); | ||
40 | } | ||
41 | |||
42 | /** | ||
43 | * @param initialCapacity | ||
44 | * @param loadFactor | ||
45 | */ | ||
46 | public IntrinsicMap(final int initialCapacity, final float loadFactor) { | ||
47 | super(initialCapacity, loadFactor); | ||
48 | } | ||
49 | |||
50 | @SuppressWarnings("unchecked") | ||
51 | public V put(final V value) { | ||
52 | return super.put((K) value.getKey(), value); | ||
53 | } | ||
54 | |||
55 | @Override | ||
56 | public V put(final K key, final V value) { | ||
57 | return this.put(value); | ||
58 | } | ||
59 | |||
60 | public void putAll(final Collection<V> collection) { | ||
61 | for (final V value : collection) { | ||
62 | this.put(value); | ||
63 | } | ||
64 | } | ||
65 | |||
66 | } | ||