Examples of PeerReadRequest


Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

  public int
  getPermittedBytes()
 
    throws ExternalSeedException
  {
    PeerReadRequest  req = current_request;
   
    if ( req == null ){
     
      req = requests.get(0)
    }
   
    if ( req.isCancelled()){
     
      throw( new ExternalSeedException( "Request cancelled" ));
    }
   
    return( reader.getPermittedBytes());
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

            requests_mon.exit();
          }
        }else{
         
          List<PeerReadRequest>  selected_requests   = new ArrayList<PeerReadRequest>();
          PeerReadRequest      cancelled_request  = null;
         
          try{
            requests_mon.enter();

              // get an advisory set to process together
           
            int  count = selectRequests( requests );
           
            if ( count <= 0 || count > requests.size()){
             
              Debug.out( "invalid count" );
             
              count  = 1;
            }
           
            for (int i=0;i<count;i++){
             
              PeerReadRequest  request = requests.remove(0);
             
              if ( request.isCancelled()){
               
                  // if this is the first request then process it, otherwise leave
                  // for the next-round
                             
                if ( i == 0 ){
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

   
    int  last_piece_number = -1;
   
    for (int i=0;i<requests.size();i++){
     
      PeerReadRequest  request = (PeerReadRequest)requests.get(i);
     
      int  this_piece_number  = request.getPieceNumber();
     
      if ( last_piece_number != -1 && last_piece_number != this_piece_number ){
       
        if ( !getRequestCanSpanPieces()){
         
          return( i );
        }
      }
     
      long  this_start = this_piece_number * torrent.getPieceSize() + request.getOffset();
     
      if ( next_start != -1 && this_start != next_start ){
       
        return(i);
      }
     
      next_start  = this_start + request.getLength();
     
      last_piece_number  = this_piece_number;
    }
   
    return( requests.size());
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

    try{
      requests_mon.enter();
     
      for (int i=0;i<requests.size();i++){
       
        PeerReadRequest  request = (PeerReadRequest)requests.get(i);
       
        if ( request.isExpired()){
         
          if ( res == null ){
           
            res = new ArrayList<PeerReadRequest>();
          }
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

    reader    = _reader;
    requests  = _requests;
   
    for (int i=0;i<requests.size();i++){
     
      PeerReadRequest  req = (PeerReadRequest)requests.get(i);
     
      if ( i == 0 ){
       
        start_piece_number  = req.getPieceNumber();
        start_piece_offset  = req.getOffset();
      }
     
      length  += req.getLength();
    }
  }
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

  public boolean
  isCancelled()
  {
    for (int i=0;i<requests.size();i++){
     
      PeerReadRequest  req = requests.get(i);

      if ( req.isCancelled()){
       
        return( true );
      }
    }
   
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

  protected void
  cancel()
  {
    for (int i=0;i<requests.size();i++){
     
      PeerReadRequest  req = requests.get(i);

      if ( !req.isCancelled()){
       
        req.cancel();
      }
    }
  }
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

  public void
  failed()
  {
    for (int i=current_request_index;i<requests.size();i++){
     
      PeerReadRequest  request = requests.get(i);

      reader.informFailed( request );
    }
  }
View Full Code Here

Examples of org.gudy.azureus2.plugins.peers.PeerReadRequest

  }
 
  public int
  getPercentDoneOfCurrentIncomingRequest()
  {
    PeerReadRequest  req = current_request;
   
    if ( req == null ){
     
      return( 0 );
    }
   
    return(( 100 * current_position ) / req.getLength() );
   
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.