⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 configurationdefaults.java

📁 这是一个基于java编写的torrent的P2P源码
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
    def.put( "Tracker TCP NonBlocking", FALSE);
    def.put( "Tracker TCP NonBlocking Conc Max", new Long(2048));
    def.put( "Tracker Client Scrape Enable", TRUE);
    def.put( "Tracker Client Scrape Stopped Enable", TRUE);
    def.put( "Tracker Client Scrape Single Only", FALSE);
    def.put( "Tracker Server Full Scrape Enable", TRUE );
    def.put( "Tracker Server Not Found Redirect", "" );
    def.put( "Tracker Server Support Experimental Extensions", FALSE );
    
    def.put( "Network Selection Prompt", TRUE);
    def.put( "Network Selection Default.Public", TRUE);
    def.put( "Network Selection Default.I2P", TRUE);
    def.put( "Network Selection Default.Tor", TRUE);
    def.put( "Tracker Network Selection Default.Public", TRUE);
    def.put( "Tracker Network Selection Default.I2P", TRUE);
    def.put( "Tracker Network Selection Default.Tor", TRUE);
    
    def.put( "Peer Source Selection Default.Tracker", TRUE);
    def.put( "Peer Source Selection Default.DHT", TRUE);
    def.put( "Peer Source Selection Default.PeerExchange", TRUE);
    def.put( "Peer Source Selection Default.Plugin", TRUE);
    def.put( "Peer Source Selection Default.Incoming", TRUE);
    
    def.put( "config.style.useSIUnits", FALSE );
    def.put( "config.style.useUnitsRateBits", FALSE );
    def.put( "config.style.separateProtDataStats", FALSE );
    def.put( "config.style.dataStatsOnly", FALSE );
    
    def.put( "Save Torrent Backup", FALSE );
    
    def.put( "Sharing Protocol", "DHT" );
    def.put( "Sharing Add Hashes", FALSE );
    def.put( "Sharing Rescan Enable", FALSE);
    def.put( "Sharing Rescan Period", new Long(60));
    def.put( "Sharing Torrent Comment", "" );
    def.put( "Sharing Permit DHT", TRUE);
    def.put( "Sharing Torrent Private", FALSE);
	
    def.put( "File.Decoder.Prompt", FALSE );
    def.put( "File.Decoder.Default", "" );
    def.put( "File.Decoder.ShowLax", FALSE);
    def.put( "File.Decoder.ShowAll", FALSE);
    def.put( "Password enabled", FALSE );
    def.put( "Password", null );
    def.put( "config.interface.checkassoc", TRUE );
    def.put( "confirmationOnExit", FALSE );
    def.put( "locale", Locale.getDefault().toString() );
    def.put( "locale.set.complete.count", ZERO);
    def.put( "Confirm Data Delete", TRUE );
    def.put( "Password Confirm", null );
    def.put( "Auto Update", TRUE );
    def.put( "Alert on close", FALSE );
    def.put( "diskmanager.friendly.hashchecking", FALSE );
    def.put( "diskmanager.hashchecking.smallestfirst", TRUE );    
    def.put( "Default Start Torrents Stopped", FALSE);
    def.put( "Server Enable UDP", TRUE);
    def.put( "diskmanager.perf.cache.enable", TRUE);
    def.put( "diskmanager.perf.cache.enable.read", FALSE);
    def.put( "diskmanager.perf.cache.enable.write", TRUE);
    def.put( "diskmanager.perf.cache.size", new Long(4));		// 4 MB
    def.put( "diskmanager.perf.cache.notsmallerthan", new Long(1024));	// 1024 K
    def.put( "diskmanager.perf.read.maxthreads", new Long(32));
    def.put( "diskmanager.perf.read.maxmb", new Long(5));
    def.put( "diskmanager.perf.write.maxthreads", new Long(32));
    def.put( "diskmanager.perf.write.maxmb", new Long(5));
    def.put( "diskmanager.perf.cache.trace", FALSE);
    def.put( "diskmanager.perf.cache.flushpieces", TRUE);
    def.put( "diskmanager.perf.read.aggregate.enable", FALSE );
    def.put( "diskmanager.perf.read.aggregate.request.limit", ZERO );
    def.put( "diskmanager.perf.read.aggregate.byte.limit", ZERO );
    def.put( "diskmanager.perf.write.aggregate.enable", FALSE );
    def.put( "diskmanager.perf.write.aggregate.request.limit", ZERO );
    def.put( "diskmanager.perf.write.aggregate.byte.limit", ZERO );
    def.put( "diskmanager.perf.checking.read.priority", FALSE );
    def.put( "File.truncate.if.too.large", FALSE);
    def.put( "Enable System Tray", TRUE);
    def.put( "config.style.table.defaultSortOrder", ZERO);
    def.put( "Ignore.peer.ports", "0" );
    def.put( "Security.JAR.tools.dir", "" );
    def.put( "network.max.simultaneous.connect.attempts", new Long( 8 ));
    def.put( "network.tcp.mtu.size", new Long(1500) );
    def.put( "network.udp.mtu.size", new Long(1500) );
    def.put( "network.tcp.socket.SO_SNDBUF", ZERO );
    def.put( "network.tcp.socket.SO_RCVBUF", ZERO );
    def.put( "network.tcp.socket.IPTOS", "" );
    def.put( "network.tcp.read.select.time", new Long(25));
    def.put( "network.tcp.write.select.time", new Long(25));
    def.put( "network.control.write.idle.time", new Long(50));
    def.put( "network.control.write.aggressive", FALSE );
    def.put( "network.control.read.idle.time", new Long(50));
    def.put( "peermanager.schedule.time", new Long(100));
    def.put( "confirm_torrent_removal", FALSE );
    def.put( "add_torrents_silently", FALSE );
    def.put( "enable_small_osx_fonts", TRUE );
    def.put( "Play Download Finished Announcement", FALSE);
    def.put( "Play Download Finished Announcement Text", "Download Complete");
    def.put( "Play File Finished", FALSE );
    def.put( "Play File Finished File", "" );
    def.put( "Play File Finished Announcement", FALSE);
    def.put( "Play File Finished Announcement Text", "File Complete");
    
    def.put( "BT Request Max Block Size", new Long(65536));
    def.put( "network.tcp.enable_safe_selector_mode", FALSE );
    def.put( "network.tcp.safe_selector_mode.chunk_size", new Long( 60 ));
    
    def.put( "network.transport.encrypted.require", FALSE );
    def.put( "network.transport.encrypted.min_level", "RC4" );
    def.put( "network.transport.encrypted.fallback.outgoing", FALSE );
    def.put( "network.transport.encrypted.fallback.incoming", FALSE );
    def.put( "network.transport.encrypted.use.crypto.port", FALSE );
    
    def.put( "network.bind.local.port", ZERO );
    
    // Memory settings
    
    def.put( "memory.slice.limit.multiplier", new Long(1));
    
    // Move on completion settings.
    def.put( "Move Completed When Done", FALSE );
    def.put( "Completed Files Directory", "" );
    def.put( "Move Only When In Default Save Dir", TRUE );
    def.put( "Move Torrent When Done", TRUE );
    def.put( "File.move.subdir_is_default", FALSE );
    
    // This gets permanently set by GlobalManagerImpl to false once Azureus has initialised.
    // This is intended to be used once as part of an upgrade.
    def.put( "Set Completion Flag For Completed Downloads On Start", TRUE );
    
    // Move on removal settings.
    def.put( "File.move.download.removed.enabled", FALSE );
    def.put( "File.move.download.removed.path", "" );
    def.put( "File.move.download.removed.only_in_default", TRUE );
    def.put( "File.move.download.removed.move_torrent", TRUE );
    def.put( "File.move.download.removed.move_partial", FALSE );
    
    def.put("FilesView.separate_rename_and_retarget", FALSE);

  }
  
  protected void
  def_put(
	String										key,
	String										key_def,
	COConfigurationManager.ParameterVerifier	verifier )
  {
	  def.put( key, key_def );
	  
	  List	l = (List)parameter_verifiers.get( key );
	  
	  if ( l == null ){
		  
		  l = new ArrayList(1);
		  
		  parameter_verifiers.put( key, l );
	  }
	  
	  l.add( verifier );
  }
  
  public String getStringParameter(String p) throws ConfigurationParameterNotFoundException {
    if (def.containsKey(p)) {
      Object o = def.get(p);
      if (o instanceof Number)
        return ((Number)o).toString();

      return (String)o;
    } else
      throw new ConfigurationParameterNotFoundException(p);
  }
  
  public int getIntParameter(String p) throws ConfigurationParameterNotFoundException {
    if (def.containsKey(p))
      return ((Long) def.get(p)).intValue();
    else
      throw new ConfigurationParameterNotFoundException(p);
  }
  public long getLongParameter(String p) throws ConfigurationParameterNotFoundException {
    if (def.containsKey(p))
      return ((Long) def.get(p)).longValue();
    else
      throw new ConfigurationParameterNotFoundException(p);
  }
  
  public float getFloatParameter(String p) throws ConfigurationParameterNotFoundException {
    if (def.containsKey(p))
      return ((Float) def.get(p)).floatValue();
    else
      throw new ConfigurationParameterNotFoundException(p);
  }
  
  public boolean hasParameter(String p) {
	  return def.containsKey(p);
  }
  
  /**
   * Returns the default value as an object (String, Long, Float, Boolean)
   *  
   * @param key
   * @return default value
   */
  public Object getDefaultValueAsObject(String key) {
  	return def.get(key);
  }
  
  public Set getAllowedParameters() {
  	return def.keySet();
  }
 
  public void addParameter(String sKey, String sParameter) {
    def.put(sKey, sParameter);
  }

  public void addParameter(String sKey, int iParameter) {
    def.put(sKey, new Long(iParameter));
  }
  public void addParameter(String sKey, byte[] bParameter) {
    def.put(sKey, bParameter);
  }

  public void addParameter(String sKey, boolean bParameter) {
    Long lParameter = new Long(bParameter ? 1 : 0);
    def.put(sKey, lParameter);
  }
  
  public void registerExternalDefaults(Map addmap) {
  	def.putAll(addmap);
  }
  
  public boolean doesParameterDefaultExist(String p) {
    return def.containsKey(p);
  }
  
  public Object
  getParameter(
	 String	key )
  {
	return( def.get( key ));  
  }
  
  public List
  getVerifiers(
	 String	key )
  {
	  return((List)parameter_verifiers.get( key ));
  }
  
  protected void
  runVerifiers()
  {
	  Iterator	it = parameter_verifiers.entrySet().iterator();
	  
	  while( it.hasNext()){
		  
		  Map.Entry	entry =(Map.Entry)it.next();
		  
		  String	key 		= (String)entry.getKey();
		  List		verifiers 	= (List)entry.getValue();
		  
		  for (int i=0;i<verifiers.size();i++){
			  
			  COConfigurationManager.ParameterVerifier	verifier = (COConfigurationManager.ParameterVerifier)verifiers.get(i);
			  
			  Object	val_def = getDefaultValueAsObject( key );
			  Object	val;
			  
			  if ( val_def == null ){
				  
				  continue;
			  }
			  
			  if ( val_def instanceof String ){
				
				  val = COConfigurationManager.getStringParameter( key );
				  
			  }else{
				  
				  Debug.out( "Unsupported verifier type for parameter '" + key + "' - " + val_def );
				  
				  continue;
			  }
			  
			  if ( val == null ){
				  
				  continue;
			  }
			  
			  if ( !verifier.verify( key, val )){
				  
				  Debug.out( "Parameter '" + key + "', value '" + val +"' failed verification - setting back to default '" + val_def + "'" );
				  
				  COConfigurationManager.removeParameter( key );
			  }
		  }
	  }
  }
  
  protected class
  IPVerifier
  	implements COConfigurationManager.ParameterVerifier
  {
	  public boolean
	  verify(
		String	parameter,
		Object	_value )
	  {
		  String	value = (String)_value;
		  
		  	// see http://www.faqs.org/rfcs/rfc3696.html
		  
		  for (int i=0;i<value.length();i++){
			  
			  char	c = value.charAt(i);
			  
			  if ( Character.isLetterOrDigit( c ) || c == '.' || c == '-' ){
				  
			  }else{
				  
				  return( false );
			  }
		  }
		  
		  return( true );
	  }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -