diff options
author | Darrell Anderson <humanreadable@yahoo.com> | 2014-01-08 20:06:00 +0100 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2014-01-08 20:06:00 +0100 |
commit | 636f509299122d02087c6fd62e1e4a46dbd22026 (patch) | |
tree | 70e43efceeb5b00e7f19cdac8da44928bd2fb459 /qtjava/javalib/org/kde/qt/WeakValueMap.java | |
parent | 719b61750c08343f530068ed4127623aeac71cf0 (diff) | |
download | tdebindings-636f509299122d02087c6fd62e1e4a46dbd22026.tar.gz tdebindings-636f509299122d02087c6fd62e1e4a46dbd22026.zip |
Rename many classes to avoid conflicts with KDE
Diffstat (limited to 'qtjava/javalib/org/kde/qt/WeakValueMap.java')
-rw-r--r-- | qtjava/javalib/org/kde/qt/WeakValueMap.java | 68 |
1 files changed, 0 insertions, 68 deletions
diff --git a/qtjava/javalib/org/kde/qt/WeakValueMap.java b/qtjava/javalib/org/kde/qt/WeakValueMap.java deleted file mode 100644 index 4378b7e2..00000000 --- a/qtjava/javalib/org/kde/qt/WeakValueMap.java +++ /dev/null @@ -1,68 +0,0 @@ -/** From Section 12.5.3, Reference Queues page 324-326 - of 'The Java Programming Language, Third Edition'. - - But why wasn't it included in the java.util Collection package? - */ - - -package org.kde.qt; - -import java.lang.ref.*; -import java.util.*; - -public class WeakValueMap extends HashMap { - private ReferenceQueue reaped = new ReferenceQueue(); - - private static class ValueRef extends WeakReference { - private final Object key; // key for value - - ValueRef(Object val, Object key, ReferenceQueue q) { - super(val, q); - this.key = key; - } - } - - public Object put(Object key, Object value) { - reap(); - ValueRef vr = new ValueRef(value, key, reaped); - return super.put(key, vr); - } - - public Object get(Object key) { - reap(); - ValueRef vr = (ValueRef) super.get(key); - if (vr == null) { - return null; - } else { - return vr.get(); - } - } - - /** Force an entry to be removed if it is known to be invalid, - rather than waiting for the garbage collector to put it - on the reaped queue. - */ - public Object remove(Object key) { - reap(); - ValueRef vr = (ValueRef) super.get(key); - if (vr == null) { - return null; - } else { - vr.clear(); - super.remove(key); - return null; - } - } - - public int size() { - reap(); - return super.size(); - } - - public void reap() { - ValueRef ref; - while ((ref = (ValueRef) reaped.poll()) != null) { - super.remove(ref.key); - } - } -} |