test/java/util/concurrent/locks/ReentrantReadWriteLock/RWMap.java
Print this page
*** 55,79 ****
public RWMap() {
this(new TreeMap()); // use TreeMap by default
}
public int size() {
! rwl.readLock().lock(); try {return m.size();} finally { rwl.readLock().unlock(); }
}
! public boolean isEmpty(){
! rwl.readLock().lock(); try {return m.isEmpty();} finally { rwl.readLock().unlock(); }
}
public Object get(Object key) {
! rwl.readLock().lock(); try {return m.get(key);} finally { rwl.readLock().unlock(); }
}
public boolean containsKey(Object key) {
! rwl.readLock().lock(); try {return m.containsKey(key);} finally { rwl.readLock().unlock(); }
}
! public boolean containsValue(Object value){
! rwl.readLock().lock(); try {return m.containsValue(value);} finally { rwl.readLock().unlock(); }
}
public Set keySet() { // Not implemented
return null;
--- 55,91 ----
public RWMap() {
this(new TreeMap()); // use TreeMap by default
}
public int size() {
! rwl.readLock().lock();
! try { return m.size(); }
! finally { rwl.readLock().unlock(); }
}
!
! public boolean isEmpty() {
! rwl.readLock().lock();
! try { return m.isEmpty(); }
! finally { rwl.readLock().unlock(); }
}
public Object get(Object key) {
! rwl.readLock().lock();
! try { return m.get(key); }
! finally { rwl.readLock().unlock(); }
}
public boolean containsKey(Object key) {
! rwl.readLock().lock();
! try { return m.containsKey(key); }
! finally { rwl.readLock().unlock(); }
}
!
! public boolean containsValue(Object value) {
! rwl.readLock().lock();
! try { return m.containsValue(value); }
! finally { rwl.readLock().unlock(); }
}
public Set keySet() { // Not implemented
return null;
*** 86,115 ****
public Collection values() { // Not implemented
return null;
}
public boolean equals(Object o) {
! rwl.readLock().lock(); try {return m.equals(o);} finally { rwl.readLock().unlock(); }
}
public int hashCode() {
! rwl.readLock().lock(); try {return m.hashCode();} finally { rwl.readLock().unlock(); }
}
public String toString() {
! rwl.readLock().lock(); try {return m.toString();} finally { rwl.readLock().unlock(); }
}
-
-
public Object put(Object key, Object value) {
! rwl.writeLock().lock(); try {return m.put(key, value);} finally { rwl.writeLock().unlock(); }
}
public Object remove(Object key) {
! rwl.writeLock().lock(); try {return m.remove(key);} finally { rwl.writeLock().unlock(); }
}
public void putAll(Map map) {
! rwl.writeLock().lock(); try {m.putAll(map);} finally { rwl.writeLock().unlock(); }
}
public void clear() {
! rwl.writeLock().lock(); try {m.clear();} finally { rwl.writeLock().unlock(); }
}
}
--- 98,144 ----
public Collection values() { // Not implemented
return null;
}
public boolean equals(Object o) {
! rwl.readLock().lock();
! try { return m.equals(o); }
! finally { rwl.readLock().unlock(); }
}
+
public int hashCode() {
! rwl.readLock().lock();
! try { return m.hashCode(); }
! finally { rwl.readLock().unlock(); }
}
+
public String toString() {
! rwl.readLock().lock();
! try { return m.toString(); }
! finally { rwl.readLock().unlock(); }
}
public Object put(Object key, Object value) {
! rwl.writeLock().lock();
! try { return m.put(key, value); }
! finally { rwl.writeLock().unlock(); }
}
+
public Object remove(Object key) {
! rwl.writeLock().lock();
! try { return m.remove(key); }
! finally { rwl.writeLock().unlock(); }
}
+
public void putAll(Map map) {
! rwl.writeLock().lock();
! try { m.putAll(map); }
! finally { rwl.writeLock().unlock(); }
}
+
public void clear() {
! rwl.writeLock().lock();
! try { m.clear(); }
! finally { rwl.writeLock().unlock(); }
}
}