Author: j16sdiz
Date: 2008-10-24 16:15:43 +0000 (Fri, 24 Oct 2008)
New Revision: 23087

Modified:
   trunk/freenet/src/freenet/io/comm/DMT.java
   trunk/freenet/src/freenet/io/comm/FreenetInetAddress.java
   trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java
   trunk/freenet/src/freenet/io/comm/Message.java
   trunk/freenet/src/freenet/io/comm/MessageCore.java
   trunk/freenet/src/freenet/io/comm/MessageFilter.java
   trunk/freenet/src/freenet/io/comm/MessageType.java
   trunk/freenet/src/freenet/io/comm/PeerContext.java
   trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
Log:
generic, code cleanup, spelling

Modified: trunk/freenet/src/freenet/io/comm/DMT.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/DMT.java  2008-10-24 16:15:14 UTC (rev 
23086)
+++ trunk/freenet/src/freenet/io/comm/DMT.java  2008-10-24 16:15:43 UTC (rev 
23087)
@@ -192,7 +192,7 @@
                addLinkedListField(MISSING, Integer.class);
        }};

-       public static final Message createMissingPacketNotification(long uid, 
LinkedList missing) {
+       public static final Message createMissingPacketNotification(long uid, 
LinkedList<Integer> missing) {
                Message msg = new Message(missingPacketNotification);
                msg.set(UID, uid);
                msg.set(MISSING, missing);

Modified: trunk/freenet/src/freenet/io/comm/FreenetInetAddress.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/FreenetInetAddress.java   2008-10-24 
16:15:14 UTC (rev 23086)
+++ trunk/freenet/src/freenet/io/comm/FreenetInetAddress.java   2008-10-24 
16:15:43 UTC (rev 23087)
@@ -46,7 +46,7 @@
                        ba = new byte[4];
                        dis.readFully(ba);
                } else {
-                       throw new IOException("Unknown type byte (old form? 
corrupt stream? too short/long prev field?): "+(int)firstByte);
+                       throw new IOException("Unknown type byte (old form? 
corrupt stream? too short/long prev field?): "+firstByte);
                }
                _address = InetAddress.getByAddress(ba);
                String name = null;

Modified: trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java 2008-10-24 
16:15:14 UTC (rev 23086)
+++ trunk/freenet/src/freenet/io/comm/IOStatisticCollector.java 2008-10-24 
16:15:43 UTC (rev 23087)
@@ -5,7 +5,7 @@

 import java.util.Date;
 import java.util.LinkedHashMap;
-import java.util.Iterator;
+import java.util.Map;

 import freenet.support.Logger;

@@ -18,11 +18,11 @@
        private static boolean logDEBUG;
        private long totalbytesin;
        private long totalbytesout;
-       private final LinkedHashMap targets;
+       private final LinkedHashMap<String, StatisticEntry> targets;
        static boolean ENABLE_PER_ADDRESS_TRACKING = false;

        public IOStatisticCollector() {
-               targets = new LinkedHashMap();
+               targets = new LinkedHashMap<String, StatisticEntry>();
                // TODO: only for testing!!!!
                // This should only happen once
                //SNMPAgent.create();
@@ -43,7 +43,7 @@
        private void _addInfo(String key, int inbytes, int outbytes) {
                rotate();
                if(ENABLE_PER_ADDRESS_TRACKING) {
-                       StatisticEntry entry = (StatisticEntry)targets.get(key);
+                       StatisticEntry entry = targets.get(key);
                        if (entry == null) {
                                entry = new StatisticEntry();
                                targets.put(key, entry);
@@ -92,11 +92,9 @@
                        ret[i][0] = ret[i][1] = 0;
                }

-               Iterator it = targets.keySet().iterator();
-               while (it.hasNext()) {
-                       String key = (String)it.next();
-                       int inres[] = 
((StatisticEntry)targets.get(key)).getRecieved();
-                       int outres[] = 
((StatisticEntry)targets.get(key)).getSent();
+               for (Map.Entry<String,StatisticEntry> entry : 
targets.entrySet()) {
+                       int inres[] = entry.getValue().getRecieved();
+                       int outres[] = entry.getValue().getSent();
                        for (int i = 0 ; i < STATISTICS_ENTRIES ; i++) {
                                ret[i][1] += inres[i];
                                ret[i][0] += outres[i];
@@ -111,12 +109,11 @@
                //DateFormat df = DateFormat.getDateInstance(DateFormat.LONG, 
Locale.FRANCE);
                //System.err.println(DateFormat.getDateInstance().format(new 
Date()));
                System.err.println(new Date());
-               Iterator it = targets.keySet().iterator();
                final double divby = STATISTICS_DURATION_S*1024; 
-               while (it.hasNext()) {
-                       String key = (String)it.next();
-                       int inres[] = 
((StatisticEntry)targets.get(key)).getRecieved();
-                       int outres[] = 
((StatisticEntry)targets.get(key)).getSent();
+               for (Map.Entry<String,StatisticEntry> entry : 
targets.entrySet()) {
+                       String key = entry.getKey();
+                       int inres[] = entry.getValue().getRecieved();
+                       int outres[] = entry.getValue().getSent();
                        System.err.print((key + "          ").substring(0,22) + 
": ");
                        int tin = 0;
                        int tout = 0;
@@ -146,7 +143,7 @@
                        if(keys == null) return; // Why aren't we iterating 
there ?
                        for(int i = 0 ; i < keys.length ; i++) {
                                Object key = keys[i];
-                               if 
(((StatisticEntry)(targets.get(key))).rotate() == false)
+                               if (targets.get(key).rotate() == false)
                                        targets.remove(key);
                        }
                        // FIXME: debugging

Modified: trunk/freenet/src/freenet/io/comm/Message.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/Message.java      2008-10-24 16:15:14 UTC 
(rev 23086)
+++ trunk/freenet/src/freenet/io/comm/Message.java      2008-10-24 16:15:43 UTC 
(rev 23087)
@@ -24,10 +24,10 @@
 import java.io.EOFException;
 import java.io.IOException;
 import java.lang.ref.WeakReference;
+import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.LinkedList;
-import java.util.Vector;
+import java.util.List;

 import freenet.support.ByteBufferInputStream;
 import freenet.support.Fields;
@@ -45,10 +45,10 @@
     public static final String VERSION = "$Id: Message.java,v 1.11 2005/09/15 
18:16:04 amphibian Exp $";

        private final MessageType _spec;
-       private final WeakReference/*<PeerContext>*/ _sourceRef;
+       private final WeakReference<PeerContext> _sourceRef;
        private final boolean _internal;
-       private final HashMap _payload = new HashMap(8, 1.0F); // REDFLAG at 
the moment memory is more of an issue than CPU so we use a high load factor
-       private Vector _subMessages;
+       private final HashMap<String, Object> _payload = new HashMap<String, 
Object>(8, 1.0F); // REDFLAG at the moment memory is more of an issue than CPU 
so we use a high load factor
+       private List<Message> _subMessages;
        public final long localInstantiationTime;
        final int _receivedByteCount;

@@ -75,12 +75,11 @@
                    return null; // silently discard internal-only messages
                Message m = new Message(mspec, peer, recvByteCount);
                try {
-                   for (Iterator i = mspec.getOrderedFields().iterator(); 
i.hasNext();) {
-                       String name = (String) i.next();
-                       Class<?> type = (Class<?>) mspec.getFields().get(name);
+                   for (String name : mspec.getOrderedFields()) {
+                       Class<?> type = mspec.getFields().get(name);
                        if (type.equals(LinkedList.class)) { // Special 
handling for LinkedList to deal with element type
                            m.set(name, Serializer
-                                               
.readListFromDataInputStream((Class<?>) mspec.getLinkedListTypes().get(name),
+                                               
.readListFromDataInputStream(mspec.getLinkedListTypes().get(name),
                                                bb));
                        } else {
                            m.set(name, 
Serializer.readFromDataInputStream(type, bb));
@@ -221,8 +220,7 @@
                DataOutputStream dos = new DataOutputStream(baos);
                try {
                        dos.writeInt(_spec.getName().hashCode());
-                       for (Iterator i = _spec.getOrderedFields().iterator(); 
i.hasNext();) {
-                               String name = (String) i.next();
+                       for (String name : _spec.getOrderedFields()) {
                                
Serializer.writeToDataOutputStream(_payload.get(name), dos, destination);
                        }
                        dos.flush();
@@ -233,7 +231,7 @@

                if(_subMessages != null && includeSubMessages) {
                        for(int i=0;i<_subMessages.size();i++) {
-                               byte[] temp = 
((Message)_subMessages.get(i)).encodeToPacket(destination, false, true);
+                               byte[] temp = 
_subMessages.get(i).encodeToPacket(destination, false, true);
                                try {
                                        dos.writeShort(temp.length);
                                        dos.write(temp);
@@ -255,9 +253,8 @@
                StringBuilder ret = new StringBuilder(1000);
                String comma = "";
         ret.append(_spec.getName()).append(" {");
-               for (Iterator i = _spec.getFields().keySet().iterator(); 
i.hasNext();) {
+               for (String name : _spec.getFields().keySet()) {
                        ret.append(comma);
-                       String name = (String) i.next();
             ret.append(name).append('=').append(_payload.get(name));
                        comma = ", ";
                }
@@ -313,14 +310,14 @@
        }

        public void addSubMessage(Message subMessage) {
-               if(_subMessages == null) _subMessages = new Vector();
+               if(_subMessages == null) _subMessages = new 
ArrayList<Message>();
                _subMessages.add(subMessage);
        }

        public Message getSubMessage(MessageType t) {
                if(_subMessages == null) return null;
                for(int i=0;i<_subMessages.size();i++) {
-                       Message m = (Message) _subMessages.get(i);
+                       Message m = _subMessages.get(i);
                        if(m.getSpec() == t) return m;
                }
                return null;
@@ -329,7 +326,7 @@
        public Message grabSubMessage(MessageType t) {
                if(_subMessages == null) return null;
                for(int i=0;i<_subMessages.size();i++) {
-                       Message m = (Message) _subMessages.get(i);
+                       Message m = _subMessages.get(i);
                        if(m.getSpec() == t) {
                                _subMessages.remove(i);
                                return m;

Modified: trunk/freenet/src/freenet/io/comm/MessageCore.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/MessageCore.java  2008-10-24 16:15:14 UTC 
(rev 23086)
+++ trunk/freenet/src/freenet/io/comm/MessageCore.java  2008-10-24 16:15:43 UTC 
(rev 23087)
@@ -18,6 +18,7 @@
  */
 package freenet.io.comm;

+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.LinkedList;
 import java.util.ListIterator;
@@ -35,7 +36,7 @@
        private static boolean logMINOR; 
        private Dispatcher _dispatcher;
        /** _filters serves as lock for both */
-       private final LinkedList _filters = new LinkedList();
+       private final LinkedList<MessageFilter> _filters = new 
LinkedList<MessageFilter>();
        private final LinkedList<Message> _unclaimed = new 
LinkedList<Message>();
        private static final int MAX_UNMATCHED_FIFO_SIZE = 50000;
        private static final long MAX_UNCLAIMED_FIFO_ITEM_LIFETIME = 
10*60*1000;  // 10 minutes; maybe this should be per message type??
@@ -48,7 +49,7 @@
        }

        public MessageCore() {
-               _timedOutFilters = new Vector(32);
+               _timedOutFilters = new Vector<MessageFilter>(32);
                logMINOR = Logger.shouldLog(Logger.MINOR, this);
        }

@@ -71,7 +72,7 @@

     /** Only used by removeTimedOutFilters() - if future code uses this 
elsewhere, we need to
      * reconsider its locking. */
-    private final Vector _timedOutFilters;
+    private final Vector<MessageFilter> _timedOutFilters;

     public void start(final Ticker ticker) {
        synchronized(this) {
@@ -103,8 +104,8 @@
                if(logMINOR)
                        Logger.minor(this, "Removing timed out filters");
                synchronized (_filters) {
-                       for (ListIterator i = _filters.listIterator(); 
i.hasNext();) {
-                               MessageFilter f = (MessageFilter) i.next();
+                       for (ListIterator<MessageFilter> i = 
_filters.listIterator(); i.hasNext();) {
+                               MessageFilter f = i.next();
                                if (f.timedOut(tStart)) {
                                        if(logMINOR)
                                                Logger.minor(this, "Removing 
"+f);
@@ -115,12 +116,11 @@
                                // be timed out because their client callbacks 
say they should be.
                                // Also simplifies the logic significantly, 
we've had some major bugs here.

-                               // See also the end of waitFor() for another 
wierd case.
+                               // See also the end of waitFor() for another 
weird case.
                        }
                }

-               for(int i=0;i<_timedOutFilters.size();i++) {
-                       MessageFilter f = (MessageFilter) 
_timedOutFilters.get(i);
+               for(MessageFilter f : _timedOutFilters) {
                        f.setMessage(null);
                        f.onTimedOut();
                }
@@ -154,8 +154,8 @@
                }
                MessageFilter match = null;
                synchronized (_filters) {
-                       for (ListIterator i = _filters.listIterator(); 
i.hasNext();) {
-                               MessageFilter f = (MessageFilter) i.next();
+                       for (ListIterator<MessageFilter> i = 
_filters.listIterator(); i.hasNext();) {
+                               MessageFilter f = i.next();
                                if (f.matched()) {
                                        Logger.error(this, "removed pre-matched 
message filter found in _filters: "+f);
                                        i.remove();
@@ -209,8 +209,8 @@
                     */
                        synchronized (_filters) {
                                if(logMINOR) Logger.minor(this, "Rechecking 
filters and adding message");
-                               for (ListIterator i = _filters.listIterator(); 
i.hasNext();) {
-                                       MessageFilter f = (MessageFilter) 
i.next();
+                               for (ListIterator<MessageFilter> i = 
_filters.listIterator(); i.hasNext();) {
+                                       MessageFilter f = i.next();
                                        if (f.match(m)) {
                                                matched = true;
                                                match = f;
@@ -221,7 +221,7 @@
                                }
                                if(!matched) {
                                    while (_unclaimed.size() > 
MAX_UNMATCHED_FIFO_SIZE) {
-                                       Message removed = 
(Message)_unclaimed.removeFirst();
+                                       Message removed = 
_unclaimed.removeFirst();
                                        long messageLifeTime = 
System.currentTimeMillis() - removed.localInstantiationTime;
                                        if ((removed.getSource()) instanceof 
PeerNode) {
                                            Logger.normal(this, "Dropping 
unclaimed from "+removed.getSource().getPeer()+", lived 
"+TimeUtil.formatTime(messageLifeTime, 2, true)+" (quantity)"+": "+removed);
@@ -249,22 +249,21 @@

        /** IncomingPacketFilter should call this when a node is disconnected. 
*/
        public void onDisconnect(PeerContext ctx) {
-               Vector droppedFilters = null; // rare operation, we can waste 
objects for better locking
+               ArrayList<MessageFilter> droppedFilters = null; // rare 
operation, we can waste objects for better locking
            synchronized(_filters) {
-                       ListIterator i = _filters.listIterator();
+                       ListIterator<MessageFilter> i = _filters.listIterator();
                        while (i.hasNext()) {
-                           MessageFilter f = (MessageFilter) i.next();
+                           MessageFilter f = i.next();
                            if(f.matchesDroppedConnection(ctx)) {
                                if(droppedFilters == null)
-                                       droppedFilters = new Vector();
+                                       droppedFilters = new 
ArrayList<MessageFilter>();
                                droppedFilters.add(f);
                                i.remove();
                            }
                        }
            }
            if(droppedFilters != null) {
-               for(int i=0;i<droppedFilters.size();i++) {
-                       MessageFilter mf = (MessageFilter) 
droppedFilters.get(i);
+               for(MessageFilter mf : droppedFilters) {
                        mf.onDroppedConnection(ctx);
                }
            }
@@ -272,22 +271,21 @@

        /** IncomingPacketFilter should call this when a node connects with a 
new boot ID */
        public void onRestart(PeerContext ctx) {
-               Vector droppedFilters = null; // rare operation, we can waste 
objects for better locking
+               ArrayList<MessageFilter> droppedFilters = null; // rare 
operation, we can waste objects for better locking
            synchronized(_filters) {
-                       ListIterator i = _filters.listIterator();
+                       ListIterator<MessageFilter> i = _filters.listIterator();
                        while (i.hasNext()) {
-                           MessageFilter f = (MessageFilter) i.next();
+                           MessageFilter f = i.next();
                            if(f.matchesRestartedConnection(ctx)) {
                                if(droppedFilters == null)
-                                       droppedFilters = new Vector();
+                                       droppedFilters = new 
ArrayList<MessageFilter>();
                                droppedFilters.add(f);
                                i.remove();
                            }
                        }
            }
            if(droppedFilters != null) {
-               for(int i=0;i<droppedFilters.size();i++) {
-                       MessageFilter mf = (MessageFilter) 
droppedFilters.get(i);
+               for(MessageFilter mf : droppedFilters) {
                        mf.onRestartedConnection(ctx);
                }
            }
@@ -321,8 +319,8 @@
                                //but we are holding the _filters lock!
                        }
                        if(logMINOR) Logger.minor(this, "Checking _unclaimed");
-                       for (ListIterator i = _unclaimed.listIterator(); 
i.hasNext();) {
-                               Message m = (Message) i.next();
+                       for (ListIterator<Message> i = 
_unclaimed.listIterator(); i.hasNext();) {
+                               Message m = i.next();
                                if (filter.match(m)) {
                                        i.remove();
                                        ret = m;
@@ -341,14 +339,14 @@
                        if (ret == null) {
                                if(logMINOR) Logger.minor(this, "Not in 
_unclaimed");
                            // Insert filter into filter list in order of 
timeout
-                               ListIterator i = _filters.listIterator();
+                               ListIterator<MessageFilter> i = 
_filters.listIterator();
                                while (true) {
                                        if (!i.hasNext()) {
                                                i.add(filter);
                                                if(logMINOR) Logger.minor(this, 
"Added at end");
                                                break;
                                        }
-                                       MessageFilter mf = (MessageFilter) 
i.next();
+                                       MessageFilter mf = i.next();
                                        if (mf.getTimeout() > 
filter.getTimeout()) {
                                                i.previous();
                                                i.add(filter);
@@ -395,8 +393,8 @@
                long messageLifeTime = 0;
                synchronized (_filters) {
                        if(logMINOR) Logger.minor(this, "Checking _unclaimed");
-                       for (ListIterator i = _unclaimed.listIterator(); 
i.hasNext();) {
-                               Message m = (Message) i.next();
+                       for (ListIterator<Message> i = 
_unclaimed.listIterator(); i.hasNext();) {
+                               Message m = i.next();
                                if (filter.match(m)) {
                                        i.remove();
                                        ret = m;
@@ -415,14 +413,14 @@
                        if (ret == null) {
                                if(logMINOR) Logger.minor(this, "Not in 
_unclaimed");
                            // Insert filter into filter list in order of 
timeout
-                               ListIterator i = _filters.listIterator();
+                               ListIterator<MessageFilter> i = 
_filters.listIterator();
                                while (true) {
                                        if (!i.hasNext()) {
                                                i.add(filter);
                                                if(logMINOR) Logger.minor(this, 
"Added at end");
                                                break;
                                        }
-                                       MessageFilter mf = (MessageFilter) 
i.next();
+                                       MessageFilter mf = i.next();
                                        if (mf.getTimeout() > 
filter.getTimeout()) {
                                                i.previous();
                                                i.add(filter);

Modified: trunk/freenet/src/freenet/io/comm/MessageFilter.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/MessageFilter.java        2008-10-24 
16:15:14 UTC (rev 23086)
+++ trunk/freenet/src/freenet/io/comm/MessageFilter.java        2008-10-24 
16:15:43 UTC (rev 23087)
@@ -19,7 +19,9 @@

 package freenet.io.comm;

-import java.util.*;
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;

 import freenet.support.Logger;

@@ -36,8 +38,8 @@
     private boolean _matched;
     private PeerContext _droppedConnection;
        private MessageType _type;
-    private HashMap _fields = new HashMap();
-    private List _fieldList = new LinkedList();
+    private HashMap<String, Object> _fields = new HashMap<String, Object>();
+    private List<String> _fieldList = new LinkedList<String>();
     private PeerContext _source;
     private long _timeout;
     /** If true, timeouts are relative to the start of waiting, if false, they 
are relative to
@@ -177,9 +179,7 @@
                        return false;
                }
                synchronized (_fields) {
-                       ListIterator it = _fieldList.listIterator();
-                       while (it.hasNext()) {
-                               String fieldName = (String) it.next();
+                       for (String fieldName : _fieldList) {
                                if (!m.isSet(fieldName)) {
                                        return false;
                                }

Modified: trunk/freenet/src/freenet/io/comm/MessageType.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/MessageType.java  2008-10-24 16:15:14 UTC 
(rev 23086)
+++ trunk/freenet/src/freenet/io/comm/MessageType.java  2008-10-24 16:15:43 UTC 
(rev 23087)
@@ -30,12 +30,12 @@

     public static final String VERSION = "$Id: MessageType.java,v 1.6 
2005/08/25 17:28:19 amphibian Exp $";

-       private static HashMap _specs = new HashMap();
+       private static HashMap<Integer, MessageType> _specs = new 
HashMap<Integer, MessageType>();

        private final String _name;
-       private final LinkedList _orderedFields = new LinkedList();
-       private final HashMap _fields = new HashMap();
-       private final HashMap _linkedListTypes = new HashMap();
+       private final LinkedList<String> _orderedFields = new 
LinkedList<String>();
+       private final HashMap<String, Class<?>> _fields = new HashMap<String, 
Class<?>>();
+       private final HashMap<String, Class<?>> _linkedListTypes = new 
HashMap<String, Class<?>>();
        private final boolean internalOnly;
        private final short priority;

@@ -83,7 +83,7 @@
                if (fieldValue == null) {
                        return false;
                }
-               Class<?> defClass = (Class<?>) (_fields.get(fieldName));
+               Class<?> defClass = _fields.get(fieldName);
                Class<?> valueClass = fieldValue.getClass();
                if(defClass == valueClass) return true;
                if(defClass.isAssignableFrom(valueClass)) return true;
@@ -91,7 +91,7 @@
        }

        public Class<?> typeOf(String field) {
-               return (Class<?>) _fields.get(new Integer(field.hashCode()));
+               return _fields.get(field.hashCode());
        }

        @Override
@@ -114,22 +114,22 @@
                        Logger.error(MessageType.class, "Unrecognised message 
type received (" + specID + ')');
                        return null;
                }
-               return (MessageType) _specs.get(specID);
+               return _specs.get(specID);
        }

        public String getName() {
                return _name;
        }

-       public Map getFields() {
+       public Map<String, Class<?>> getFields() {
                return _fields;
        }

-       public LinkedList getOrderedFields() {
+       public LinkedList<String> getOrderedFields() {
                return _orderedFields;
        }

-       public Map getLinkedListTypes() {
+       public Map<String, Class<?>> getLinkedListTypes() {
                return _linkedListTypes;
        }


Modified: trunk/freenet/src/freenet/io/comm/PeerContext.java
===================================================================
--- trunk/freenet/src/freenet/io/comm/PeerContext.java  2008-10-24 16:15:14 UTC 
(rev 23086)
+++ trunk/freenet/src/freenet/io/comm/PeerContext.java  2008-10-24 16:15:43 UTC 
(rev 23087)
@@ -55,7 +55,7 @@

        /** Get a WeakReference to this context. Hopefully there is only one of 
these for the whole object; they are quite
         * expensive. */
-       WeakReference getWeakRef();
+       WeakReference<PeerContext> getWeakRef();

        /** Compact toString() */
        String shortToString();

Modified: trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
===================================================================
--- trunk/freenet/src/freenet/io/xfer/BlockReceiver.java        2008-10-24 
16:15:14 UTC (rev 23086)
+++ trunk/freenet/src/freenet/io/xfer/BlockReceiver.java        2008-10-24 
16:15:43 UTC (rev 23087)
@@ -26,11 +26,11 @@
 import freenet.io.comm.DMT;
 import freenet.io.comm.DisconnectedException;
 import freenet.io.comm.Message;
+import freenet.io.comm.MessageCore;
 import freenet.io.comm.MessageFilter;
 import freenet.io.comm.NotConnectedException;
 import freenet.io.comm.PeerContext;
 import freenet.io.comm.RetrievalException;
-import freenet.io.comm.MessageCore;
 import freenet.support.BitArray;
 import freenet.support.Buffer;
 import freenet.support.Logger;
@@ -56,7 +56,7 @@
        long _uid;
        MessageCore _usm;
        /** packet : Integer -> reportTime : Long * */
-       HashMap _recentlyReportedMissingPackets = new HashMap();
+       HashMap<Integer, Long> _recentlyReportedMissingPackets = new 
HashMap<Integer, Long>();
        ByteCounter _ctr;
        boolean sentAborted;
        private MessageFilter discardFilter;
@@ -113,19 +113,19 @@
                                // Remove it from rrmp if its in there
                                _recentlyReportedMissingPackets.remove(new 
Integer(packetNo));
                                // Check that we have what the sender thinks we 
have
-                               LinkedList missing = new LinkedList();
+                               LinkedList<Integer> missing = new 
LinkedList<Integer>();
                                for (int x = 0; x < sent.getSize(); x++) {
                                        if (sent.bitAt(x) && 
!_prb.isReceived(x)) {
                                                // Sender thinks we have a 
block which we don't, but have we already
                                                // re-requested it recently?
-                                               Long resendTime = (Long) 
_recentlyReportedMissingPackets.get(new Integer(x));
+                                               Long resendTime = 
_recentlyReportedMissingPackets.get(x);
                                                if ((resendTime == null) || 
(System.currentTimeMillis() > resendTime.longValue())) {
                                                        // Make a note of the 
earliest time we should resend this, based on the number of other
                                                        // packets we are 
already waiting for
                                                        long resendWait = 
System.currentTimeMillis()
                                                                        + 
(MAX_ROUND_TRIP_TIME + (_recentlyReportedMissingPackets.size() * 
MAX_SEND_INTERVAL));
-                                                       
_recentlyReportedMissingPackets.put(new Integer(x), (new Long(resendWait)));
-                                                       missing.add(new 
Integer(x));
+                                                       
_recentlyReportedMissingPackets.put(x, resendWait);
+                                                       missing.add(x);
                                                }
                                        }
                                }
@@ -147,10 +147,10 @@
                                        throw new 
RetrievalException(RetrievalException.SENDER_DIED,
                                                        "Sender unresponsive to 
resend requests");
                                }
-                               LinkedList missing = new LinkedList();
+                               LinkedList<Integer> missing = new 
LinkedList<Integer>();
                                for (int x = 0; x < _prb.getNumPackets(); x++) {
                                        if (!_prb.isReceived(x)) {
-                                               missing.add(new Integer(x));
+                                               missing.add(x);
                                        }
                                }
                                Message mn = 
DMT.createMissingPacketNotification(_uid, missing);


Reply via email to