ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/loops/SMap.java
Revision: 1.7
Committed: Thu Jan 15 18:34:19 2015 UTC (9 years, 3 months ago) by jsr166
Branch: MAIN
CVS Tags: HEAD
Changes since 1.6: +0 -3 lines
Log Message:
delete extraneous blank lines

File Contents

# Content
1 /*
2 * Written by Doug Lea with assistance from members of JCP JSR-166
3 * Expert Group and released to the public domain, as explained at
4 * http://creativecommons.org/publicdomain/zero/1.0/
5 */
6 import java.util.*;
7 import java.util.concurrent.*;
8 import java.util.concurrent.locks.*;
9
10 /**
11 * This is an incomplete implementation of a wrapper class
12 * that places read-write locks around unsynchronized Maps.
13 * Exists as a sample input for MapLoops test.
14 */
15 public class SMap implements Map {
16 private final Map m;
17 public SMap(Map m) {
18 if (m == null)
19 throw new NullPointerException();
20 this.m = m;
21 }
22
23 public SMap() {
24 this(new TreeMap()); // use TreeMap by default
25 }
26
27 public synchronized int size() {
28 return m.size();
29 }
30 public synchronized boolean isEmpty() {
31 return m.isEmpty();
32 }
33
34 public synchronized Object get(Object key) {
35 return m.get(key);
36 }
37
38 public synchronized boolean containsKey(Object key) {
39 return m.containsKey(key);
40 }
41 public synchronized boolean containsValue(Object value) {
42 return m.containsValue(value);
43 }
44
45 public synchronized Set keySet() { // Not implemented
46 return m.keySet();
47 }
48
49 public synchronized Set entrySet() { // Not implemented
50 return m.entrySet();
51 }
52
53 public synchronized Collection values() { // Not implemented
54 return m.values();
55 }
56
57 public synchronized boolean equals(Object o) {
58 return m.equals(o);
59 }
60 public synchronized int hashCode() {
61 return m.hashCode();
62 }
63 public synchronized String toString() {
64 return m.toString();
65 }
66
67 public synchronized Object put(Object key, Object value) {
68 return m.put(key, value);
69 }
70 public synchronized Object remove(Object key) {
71 return m.remove(key);
72 }
73 public synchronized void putAll(Map map) {
74 m.putAll(map);
75 }
76 public synchronized void clear() {
77 m.clear();
78 }
79
80 }