Statistics
| Revision:

gvsig-tools / org.gvsig.tools / library / trunk / org.gvsig.tools / org.gvsig.tools.lib / src / main / java / org / gvsig / tools / util / UnmodifiableBasicMap.java @ 2241

History | View | Annotate | Download (1.36 KB)

1

    
2
package org.gvsig.tools.util;
3

    
4
import java.util.Collections;
5
import java.util.Iterator;
6
import java.util.Map;
7

    
8
/**
9
 *
10
 * @author jjdelcerro
11
 * @param <K> the type of keys maintained by this map
12
 * @param <V> the type of mapped values
13
 */
14
public interface UnmodifiableBasicMap<K,V> extends UnmodifiableBasicCollection<V>, GetItemByKeyWithSize<K,V> {
15
    
16
    @Override
17
    public V get(K key);
18
    
19
    public boolean containsKey(K key);
20
    
21
    public UnmodifiableBasicSet<K> keySet();
22
    
23
    public Map<K,V> toMap();
24
    
25
    public final UnmodifiableBasicMap EMPTY_UNMODIFIABLEBASICMAP = new UnmodifiableBasicMap() {
26
        @Override
27
        public Object get(Object key) {
28
            return null;
29
        }
30

    
31
        @Override
32
        public boolean isEmpty() {
33
            return true;
34
        }
35

    
36
        @Override
37
        public boolean containsKey(Object key) {
38
            return false;
39
        }
40

    
41
        @Override
42
        public Map toMap() {
43
            return Collections.EMPTY_MAP;
44
        }
45

    
46
        @Override
47
        public int size() {
48
            return 0;
49
        }
50

    
51
        @Override
52
        public Iterator iterator() {
53
            return Collections.EMPTY_MAP.entrySet().iterator();
54
        }
55
        
56
        @Override
57
        public UnmodifiableBasicSet keySet() {
58
            return UnmodifiableBasicSet.EMPTY_UNMODIFIABLEBASICSET;
59
        }
60
        
61
    };    
62

    
63
}