当前位置: 首页>>代码示例>>Java>>正文


Java DownloadManager.getDownloadState方法代码示例

本文整理汇总了Java中org.gudy.azureus2.core3.download.DownloadManager.getDownloadState方法的典型用法代码示例。如果您正苦于以下问题:Java DownloadManager.getDownloadState方法的具体用法?Java DownloadManager.getDownloadState怎么用?Java DownloadManager.getDownloadState使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.gudy.azureus2.core3.download.DownloadManager的用法示例。


在下文中一共展示了DownloadManager.getDownloadState方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: storeFileDownloaded

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
protected static void
storeFileDownloaded(
  DownloadManager         download_manager,
  DiskManagerFileInfo[]   files,
  boolean					persist )
{
    DownloadManagerState  state = download_manager.getDownloadState();

    Map   details = new HashMap();

    List  downloaded = new ArrayList();

    details.put( "downloaded", downloaded );

    for (int i=0;i<files.length;i++){

        downloaded.add( new Long( files[i].getDownloaded()));
    }

    state.setMapAttribute( DownloadManagerState.AT_FILE_DOWNLOADED, details );

    if ( persist ){
  	  
  	  state.save();
    }
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:27,代码来源:DiskManagerImpl.java

示例2: getTarget

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
public File getTarget(DownloadManager dm, ContextDescriptor cd) {
	//logInfo("Calculating target location for " + describe(dm, cd), lr);
	if (!this.getBoolean("enabled")) {
		logInfo("Target for " + describe(dm, cd) + " is not enabled.", dm);
		return null;
	}
    String location = this.getString("target").trim();
    if (location.length() == 0) {
		logInfo("No explicit target for " + describe(dm, cd) + ".", dm);
		return null;
	}
    
    File target = new File(FileUtil.getCanonicalFileName(location));
    String relative_path = null;
        
        if( dm != null && dm.getDownloadState() != null ) {
           relative_path = dm.getDownloadState().getRelativeSavePath();
        }
    
        if (relative_path != null && relative_path.length() > 0) {
    	logInfo("Consider relative save path: " + relative_path, dm);
    	
    	// Doesn't matter if File.separator is required or not, it seems to
    	// remove duplicate file separators.
    	target = new File(target.getPath() + File.separator + relative_path);
    }
	return target;
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:29,代码来源:DownloadManagerDefaultPaths.java

示例3: getStorageType

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
public static String getStorageType(DownloadManager download_manager, int fileIndex) {
    DownloadManagerState state = download_manager.getDownloadState();
    String type = state.getListAttribute(DownloadManagerState.AT_FILE_STORE_TYPES,fileIndex);
    
    if ( type != null ){
    	
    	return( type );
    }
    
    return( getStorageTypes( download_manager )[fileIndex]);
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:12,代码来源:DiskManagerImpl.java

示例4: loadFileDownloaded

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
protected static void
loadFileDownloaded(
  DownloadManager             download_manager,
  DiskManagerFileInfoHelper[] files )
{
    DownloadManagerState  state = download_manager.getDownloadState();
	
    Map   details = state.getMapAttribute( DownloadManagerState.AT_FILE_DOWNLOADED );
	
    if ( details == null ){
	
        return;
    }
	
    List  downloaded = (List)details.get( "downloaded" );
	
    if ( downloaded == null ){
	
        return;
    }
	
    try{
        for (int i=0;i<files.length;i++){
	
            files[i].setDownloaded(((Long)downloaded.get(i)).longValue());
        }
   }catch( Throwable e ){
	
       Debug.printStackTrace(e);
   }
	
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:33,代码来源:DiskManagerUtil.java

示例5: removeManager

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
public void removeManager(DownloadManagerState manager_state) {
  if (manager_state.getCategory() == this) {
  	manager_state.setCategory(null);
    // we will be called again by CategoryManager.categoryChange
    return;
  }
  DownloadManager	manager = manager_state.getDownloadManager();

 	// can be null if called during downloadmanagerstate construction
  if ( manager == null ){
  	return;
  }
  
  removeTaggable( manager );
  
  if (type != Category.TYPE_USER || managers.contains(manager)) {
    managers.remove(manager);
    
    manager.removeRateLimiter( upload_limiter, true );
    manager.removeRateLimiter( download_limiter, false );
 
    int pri = getIntAttribute( AT_UPLOAD_PRIORITY, -1 );
    
    if ( pri >= 0 ){
  	  
  	  	// another call-during-construction issue to avoid here
  	  
  	  if ( manager.getDownloadState() != null ){
  	  
  		  manager.setUploadPriority( 0 );
  	  }
    }
    
    category_listeners.dispatch( LDT_CATEGORY_DMREMOVED, manager );
  }
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:37,代码来源:CategoryImpl.java

示例6: addManager

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
public void addManager(DownloadManagerState manager_state) {
	Category manager_cat = manager_state.getCategory();
if ((type != Category.TYPE_UNCATEGORIZED && manager_cat != this)
		|| (type == Category.TYPE_UNCATEGORIZED && manager_cat != null)) {
  	manager_state.setCategory(this);
    // we will be called again by CategoryManager.categoryChange
    return;
  }
  
  DownloadManager	manager = manager_state.getDownloadManager();
  
  	// can be null if called during downloadmanagerstate construction
  if ( manager == null ){
  	return;
  }
  
  addTaggable( manager );
  
  if (!managers.contains(manager)) {
  	if (type == Category.TYPE_USER) {
  		managers.add(manager);
  	}
    
    manager.addRateLimiter( upload_limiter, true );
    manager.addRateLimiter( download_limiter, false );
    
    int pri = getIntAttribute( AT_UPLOAD_PRIORITY, -1 );
    
    if ( pri >= 0 ){
  	  
  	  	// another call-during-construction issue to avoid here
  	  
  	  if ( manager.getDownloadState() != null ){
  	  
  		  manager.setUploadPriority( pri );
  	  }
    }
    
    category_listeners.dispatch(LDT_CATEGORY_DMADDED, manager);
  }
}
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:42,代码来源:CategoryImpl.java

示例7: getStorageTypes

import org.gudy.azureus2.core3.download.DownloadManager; //导入方法依赖的package包/类
public static String[] getStorageTypes(DownloadManager download_manager) {
     DownloadManagerState state = download_manager.getDownloadState();
     String[] types = state.getListAttribute(DownloadManagerState.AT_FILE_STORE_TYPES);
     if (types.length == 0) {
     	TOTorrentFile[] files = download_manager.getTorrent().getFiles();
         types = new String[download_manager.getTorrent().getFiles().length];
         
      	if ( reorder_storage_mode ){
     		
     		int	existing = state.getIntAttribute( DownloadManagerState.AT_REORDER_MIN_MB );
     		
     		if ( existing < 0 ){
     			
     			existing = reorder_storage_mode_min_mb;
     			
     			state.setIntAttribute( DownloadManagerState.AT_REORDER_MIN_MB, existing );
     		}
               		
     		for (int i=0; i<types.length; i++){
                        		
         		if ( files[i].getLength()/(1024*1024) >= existing ){
         			            			
         			types[i] = "R";
         			
         		}else{
         			
         			types[i] = "L";
         		}
         	}
       	}else{
      		
      		for (int i=0; i<types.length; i++){
      			
      			types[i] = "L";
      		}
         }
      	
state.setListAttribute(DownloadManagerState.AT_FILE_STORE_TYPES, types );
     }
     
     return( types );
 }
 
开发者ID:thangbn,项目名称:Direct-File-Downloader,代码行数:43,代码来源:DiskManagerImpl.java


注:本文中的org.gudy.azureus2.core3.download.DownloadManager.getDownloadState方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。