Author: j16sdiz
Date: 2008-08-15 10:49:59 +0000 (Fri, 15 Aug 2008)
New Revision: 21893

Modified:
   trunk/freenet/src/freenet/support/OOMHandler.java
   trunk/freenet/src/freenet/support/WeakHashSet.java
Log:
generic for WeakHashSet

Modified: trunk/freenet/src/freenet/support/OOMHandler.java
===================================================================
--- trunk/freenet/src/freenet/support/OOMHandler.java   2008-08-15 10:49:39 UTC 
(rev 21892)
+++ trunk/freenet/src/freenet/support/OOMHandler.java   2008-08-15 10:49:59 UTC 
(rev 21893)
@@ -8,8 +8,6 @@

 import org.tanukisoftware.wrapper.WrapperManager;

-import freenet.support.Logger;
-
 /**
  * Do this processing as a standard response to an OutOfMemoryError
  */
@@ -25,7 +23,7 @@
        /**
         * List of {@link OOMHook}s
         */
-       private static Set oomHooks = new WeakHashSet();
+       private static Set<OOMHook> oomHooks = new WeakHashSet<OOMHook>();

        public static void addOOMHook(OOMHook hook) {
                synchronized (oomHooks) {
@@ -41,9 +39,9 @@
                System.runFinalization();

                // iterate all oom hooks
-               Iterator it = oomHooks.iterator();
+               Iterator<OOMHook> it = oomHooks.iterator();
                while (it.hasNext()) {
-                       OOMHook hook = ((OOMHook) it.next());
+                       OOMHook hook = it.next();
                        if (hook != null) {
                                try {
                                        hook.handleLowMemory();
@@ -77,9 +75,9 @@
                        System.runFinalization();

                        // iterate all oom hooks
-                       Iterator it = oomHooks.iterator();
+                       Iterator<OOMHook> it = oomHooks.iterator();
                        while (it.hasNext()) {
-                               OOMHook hook = ((OOMHook) it.next());
+                               OOMHook hook = it.next();
                                if (hook != null) {
                                        try {
                                                hook.handleOutOfMemory();

Modified: trunk/freenet/src/freenet/support/WeakHashSet.java
===================================================================
--- trunk/freenet/src/freenet/support/WeakHashSet.java  2008-08-15 10:49:39 UTC 
(rev 21892)
+++ trunk/freenet/src/freenet/support/WeakHashSet.java  2008-08-15 10:49:59 UTC 
(rev 21893)
@@ -5,50 +5,60 @@
 import java.util.Iterator;
 import java.util.WeakHashMap;

-public class WeakHashSet extends AbstractSet {
-       private final WeakHashMap map;
+public class WeakHashSet<E> extends AbstractSet<E> {
+       private final WeakHashMap<E, Object> map;

        public WeakHashSet() {
-               map = new WeakHashMap();
+               map = new WeakHashMap<E, Object>();
        }

-       public boolean add(Object key) {
+       @Override
+    public boolean add(E key) {
                return map.put(key, null) == null;
        }

-       public void clear() {
+       @Override
+    public void clear() {
                map.clear();
        }

-       public boolean contains(Object key) {
+       @Override
+    public boolean contains(Object key) {
                return map.containsKey(key);
        }

-       public boolean containsAll(Collection arg0) {
+       @Override
+    public boolean containsAll(Collection<?> arg0) {
                return map.keySet().containsAll(arg0);
        }

-       public boolean isEmpty() {
+       @Override
+    public boolean isEmpty() {
                return map.isEmpty();
        }

-       public Iterator iterator() {
+       @Override
+    public Iterator<E> iterator() {
                return map.keySet().iterator();
        }

-       public boolean remove(Object key) {
+       @Override
+    public boolean remove(Object key) {
                return map.remove(key) != null;
        }

-       public int size() {
+       @Override
+    public int size() {
                return map.size();
        }

-       public Object[] toArray() {
+       @Override
+    public Object[] toArray() {
                return map.keySet().toArray();
        }

-       public Object[] toArray(Object[] arg0) {
+       @Override
+    public <T> T[] toArray(T[] arg0) {
                return map.keySet().toArray(arg0);
        }
 }


Reply via email to