Changeset 171e3ab


Ignore:
Timestamp:
Oct 2, 2010 2:02:41 PM (10 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
6f449aa
Parents:
2bffeea7
Message:

cleanups

File:
1 edited

Legend:

Unmodified
Added
Removed
  • apps/streaming/java/src/net/i2p/client/streaming/MessageInputStream.java

    r2bffeea7 r171e3ab  
    1212import net.i2p.I2PAppContext;
    1313import net.i2p.data.ByteArray;
    14 import net.i2p.util.ByteCache;
     14//import net.i2p.util.ByteCache;
    1515import net.i2p.util.Log;
    1616
     
    2121 */
    2222public class MessageInputStream extends InputStream {
    23     private I2PAppContext _context;
    24     private Log _log;
     23    private final I2PAppContext _context;
     24    private final Log _log;
    2525    /**
    2626     * List of ByteArray objects of data ready to be read,
     
    3030     *
    3131     */
    32     private List _readyDataBlocks;
     32    private final List<ByteArray> _readyDataBlocks;
    3333    private int _readyDataBlockIndex;
    3434    /** highest message ID used in the readyDataBlocks */
     
    4141     * received
    4242     */
    43     private Map _notYetReadyBlocks;
     43    private final Map<Long, ByteArray> _notYetReadyBlocks;
    4444    /**
    4545     * if we have received a flag saying there won't be later messages, EOF
     
    5252    private IOException _streamError;
    5353    private long _readTotal;
    54     private ByteCache _cache;
    55    
    56     private byte[] _oneByte = new byte[1];
     54    //private ByteCache _cache;
     55   
     56    private final byte[] _oneByte = new byte[1];
    5757   
    5858    private final Object _dataLock;
     
    6262        _log = ctx.logManager().getLog(MessageInputStream.class);
    6363        _readyDataBlocks = new ArrayList(4);
    64         _readyDataBlockIndex = 0;
    6564        _highestReadyBlockId = -1;
    6665        _highestBlockId = -1;
    6766        _readTimeout = -1;
    68         _readTotal = 0;
    6967        _notYetReadyBlocks = new HashMap(4);
    7068        _dataLock = new Object();
    71         _closeReceived = false;
    72         _locallyClosed = false;
    73         _cache = ByteCache.getInstance(128, Packet.MAX_PAYLOAD_SIZE);
     69        //_cache = ByteCache.getInstance(128, Packet.MAX_PAYLOAD_SIZE);
    7470    }
    7571   
     
    141137            blocks = new long[num];
    142138            int i = 0;
    143             for (Iterator iter = _notYetReadyBlocks.keySet().iterator(); iter.hasNext(); ) {
    144                 Long id = (Long)iter.next();
    145                 blocks[i] = id.longValue();
    146                 i++;
     139            for (Long id : _notYetReadyBlocks.keySet()) {
     140                blocks[i++] = id.longValue();
    147141            }
    148142        }
     
    179173                long available = 0;
    180174                for (int i = 0; i < _readyDataBlocks.size(); i++)
    181                     available += ((ByteArray)_readyDataBlocks.get(i)).getValid();
     175                    available += _readyDataBlocks.get(i).getValid();
    182176                available -= _readyDataBlockIndex;
    183177                buf.append(available);
     
    186180                buf.append(" not ready blocks: ");
    187181                long notAvailable = 0;
    188                 for (Iterator iter = _notYetReadyBlocks.keySet().iterator(); iter.hasNext(); ) {
    189                     Long id = (Long)iter.next();
    190                     ByteArray ba = (ByteArray)_notYetReadyBlocks.get(id);
     182                for (Long id : _notYetReadyBlocks.keySet()) {
     183                    ByteArray ba = _notYetReadyBlocks.get(id);
    191184                    buf.append(id).append(" ");
    192185                   
     
    238231                // now pull in any previously pending blocks
    239232                while (_notYetReadyBlocks.containsKey(new Long(cur))) {
    240                     ByteArray ba = (ByteArray)_notYetReadyBlocks.remove(new Long(cur));
     233                    ByteArray ba = _notYetReadyBlocks.remove(new Long(cur));
    241234                    if ( (ba != null) && (ba.getData() != null) && (ba.getValid() > 0) ) {
    242235                        _readyDataBlocks.add(ba);
     
    342335                } else {
    343336                    // either was already ready, or we wait()ed and it arrived
    344                     ByteArray cur = (ByteArray)_readyDataBlocks.get(0);
     337                    ByteArray cur = _readyDataBlocks.get(0);
    345338                    byte rv = cur.getData()[cur.getOffset()+_readyDataBlockIndex];
    346339                    _readyDataBlockIndex++;
     
    379372        synchronized (_dataLock) {
    380373            for (int i = 0; i < _readyDataBlocks.size(); i++) {
    381                 ByteArray cur = (ByteArray)_readyDataBlocks.get(i);
     374                ByteArray cur = _readyDataBlocks.get(i);
    382375                if (i == 0)
    383376                    numBytes += cur.getValid() - _readyDataBlockIndex;
     
    403396            int numBytes = 0;
    404397            for (int i = 0; i < _readyDataBlocks.size(); i++) {
    405                 ByteArray cur = (ByteArray)_readyDataBlocks.get(i);
     398                ByteArray cur = _readyDataBlocks.get(i);
    406399                if (i == 0)
    407400                    numBytes += cur.getValid() - _readyDataBlockIndex;
     
    409402                    numBytes += cur.getValid();
    410403            }
    411             for (Iterator iter = _notYetReadyBlocks.values().iterator(); iter.hasNext(); ) {
    412                 ByteArray cur = (ByteArray)iter.next();
     404            for (ByteArray cur : _notYetReadyBlocks.values()) {
    413405                numBytes += cur.getValid();
    414406            }
     
    422414            int numBytes = 0;
    423415            for (int i = 0; i < _readyDataBlocks.size(); i++) {
    424                 ByteArray cur = (ByteArray)_readyDataBlocks.get(i);
     416                ByteArray cur = _readyDataBlocks.get(i);
    425417                if (i == 0)
    426418                    numBytes += cur.getValid() - _readyDataBlockIndex;
     
    441433            // we don't need the data, but we do need to keep track of the messageIds
    442434            // received, so we can ACK accordingly
    443             for (Iterator iter = _notYetReadyBlocks.values().iterator(); iter.hasNext(); ) {
    444                 ByteArray ba = (ByteArray)iter.next();
     435            for (ByteArray ba : _notYetReadyBlocks.values()) {
    445436                ba.setData(null);
    446437                //_cache.release(ba);
Note: See TracChangeset for help on using the changeset viewer.