亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? maketorrent.java

?? Azureus is a powerful, full-featured, cross-platform java BitTorrent client
?? JAVA
字號:
/*
 * Created on May 27th 2004
 * Created by Olivier Chalouhi
 *
 * Copyright (C) 2004 Aelitis SARL, All rights Reserved
 *
 * This program is free software; you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation; either version 2 of the License.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details ( see the LICENSE file ).
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; if not, write to the Free Software
 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 * AELITIS, SARL au capital de 30,000 euros,
 * 8 Allee Lenotre, La Grille Royale, 78600 Le Mesnil le Roi, France.
 */
 
package com.aelitis.azureus.ui.console;

import java.io.File;
import java.net.URL;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;

import org.gudy.azureus2.core3.torrent.*;
import org.gudy.azureus2.core3.util.Debug;
import org.gudy.azureus2.core3.security.*;

/**
 * @author Olivier
 *
 */
public class MakeTorrent implements TOTorrentProgressListener {

  private boolean verbose;
  
  private static final String[] validKeys = {"comment","announce-list","target","force_piece_size_pow2","verbose"};
  
  public void reportCurrentTask(String task_description) {
    if(verbose) {
      System.out.println(task_description);
    }
  }

  public void reportProgress(int percent_complete) {    
    if(verbose) {
      System.out.print("\r" + percent_complete + "%    ");
    }
  }
  
  public MakeTorrent(String file,URL url,Map parameters) {
    File fSrc = new File(file);
    
    String torrentName = (String) parameters.get("target");
    if(torrentName == null)
    torrentName = file + ".torrent";    
    File fDst = new File(torrentName);
    
    if(parameters.get("verbose") != null)
      verbose = true;
    
    TOTorrent torrent = null;
    String pieceSizeStr = (String) parameters.get("force_piece_size_pow2");
    if(pieceSizeStr != null) {
      try {     
        long pieceSize = 1l << Integer.parseInt(pieceSizeStr);
        
        TOTorrentCreator creator = TOTorrentFactory.createFromFileOrDirWithFixedPieceLength(fSrc,url,pieceSize);
        
        creator.addListener( this );
        
        torrent = creator.create();
      }catch(Exception e) {
      	Debug.printStackTrace( e );
        return;
      }
    } else {
      try {
      	TOTorrentCreator creator = TOTorrentFactory.createFromFileOrDirWithComputedPieceLength(fSrc,url);
      	
        creator.addListener( this );
        
        torrent = creator.create();
        
      } catch(Exception e) {
      	Debug.printStackTrace( e );
        return;
      }
    }
    
    String comment = (String) parameters.get("comment");
    if(comment != null) {
      torrent.setComment(comment);
    }
    
    String announceList = (String) parameters.get("announce-list");
    if(announceList != null) {
      StringTokenizer st = new StringTokenizer(announceList,"|");
      List list = new ArrayList();
      List urls = new ArrayList();
      while(st.hasMoreTokens()) {
        String _url = st.nextToken();
        urls.add(_url);        
      }
      list.add(urls);            
      torrent.setAdditionalListProperty("announce-list",list);
    }
    
    try {
      torrent.serialiseToBEncodedFile(fDst);
    } catch(Exception e) {
    	Debug.printStackTrace( e );
    }
    
  }
  
  public static void main(String args[]) {
    if(args.length < 2) {
      usage();
      SESecurityManager.exitVM(0);
    }
    Map parameters = new HashMap();
    for(int i = 2 ; i < args.length ; i++) {
      boolean ok = parseParameter(args[i],parameters);
      if(!ok) SESecurityManager.exitVM(-1);
    }
    File f = new File(args[1]);
    if(!f.exists()) {
      System.out.println(args[1] + " is not a valid file / directory");
      SESecurityManager.exitVM(-1);
    }
    URL url = null;
    try {
      url = new URL(args[0]);
    } catch(Exception e) {
      System.out.println(args[0] + " is not a valid url");
      SESecurityManager.exitVM(-1);
    }
    new MakeTorrent(args[1],url,parameters);    
  }
  
  public static void usage() {
    System.out.println("Usage :");
    System.out.println("MakeTorrent <trackerurl> <file|dir> [options]");
    System.out.println("Options :");
    System.out.println("--comment=<comment>            Adds a comment to the torrent");
    System.out.println("--force_piece_size_pow2=<pow2> Specifies the piece size to use");
    System.out.println("--target=<target file>         Specifies a target torrent file");
    System.out.println("--verbose                      Verbose");
    System.out.println("--announce-list=url1[|url2|...] Use a list of trackers");
  }
  
  public static boolean parseParameter(String parameter,Map parameters) {
    if(parameter == null)
      return false;
    if(parameter.equalsIgnoreCase("--v") || parameter.equalsIgnoreCase("--verbose")) {
      parameters.put("verbose",new Integer(1));      
    }
    if(parameter.startsWith("--")) {
      try {    
        StringTokenizer st = new StringTokenizer(parameter.substring(2),"=");
        String key = st.nextToken();
        String value = "";
        String sep = "";
        while(st.hasMoreTokens()) {
          value += sep + st.nextElement();
          sep = "=";
        }
        boolean valid = false;
        for(int i = 0 ; i < validKeys.length ;i++) {
          if(validKeys[i].equalsIgnoreCase(key)) {
            valid = true;
            break;
          }
        }
        if(!valid) {
          System.out.println("Invalid parameter : " + key);
          return false;
        }
        parameters.put(key,value);
        return true;      
      } catch(Exception e) {
        System.out.println("Cannot parse " + parameter);
        return false;
      }
    }
    System.out.println("Cannot parse " + parameter);
    return false;
  }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
美女在线观看视频一区二区| 色噜噜狠狠成人网p站| 成人国产在线观看| 欧美日韩一区二区三区四区五区 | 欧美一级欧美一级在线播放| 欧美经典一区二区| 日本美女视频一区二区| 972aa.com艺术欧美| 久久久久久99精品| 日韩国产欧美三级| 色婷婷一区二区三区四区| 久久久久久久免费视频了| 午夜影院久久久| 91麻豆swag| 国产精品久久久久毛片软件| 国产在线精品免费av| 91精品国产综合久久精品图片| 最好看的中文字幕久久| 国产激情91久久精品导航| 日韩久久精品一区| 婷婷开心激情综合| 欧美日韩亚洲综合在线| 一区二区三区精密机械公司| 成人激情免费视频| 国产人成亚洲第一网站在线播放| 久久精品国产成人一区二区三区 | 精品国产乱码久久久久久老虎| 亚洲第一福利视频在线| 色婷婷精品久久二区二区蜜臀av| 国产精品美女www爽爽爽| 成人综合在线网站| 久久久久久电影| 国产成人精品一区二区三区四区| 久久综合久久综合九色| 国内精品国产成人国产三级粉色| 欧美一区二区大片| 免费成人深夜小野草| 日韩一区二区在线观看视频播放| 丝袜国产日韩另类美女| 91精品国产综合久久小美女| 日本视频中文字幕一区二区三区| 欧美久久久影院| 青青国产91久久久久久 | 2019国产精品| 国产精品91一区二区| 欧美国产日韩一二三区| 99久久er热在这里只有精品66| ...av二区三区久久精品| 91蜜桃在线免费视频| 亚洲一区在线看| 欧美一区日韩一区| 久久国产人妖系列| 国产精品区一区二区三| 99精品国产视频| 亚洲18色成人| 日韩精品在线一区| 国产成人8x视频一区二区| 国产精品国模大尺度视频| 欧美午夜精品理论片a级按摩| 天堂影院一区二区| 久久久久久久久久久黄色| 成人激情免费网站| 亚洲成人久久影院| 久久理论电影网| 欧洲亚洲精品在线| 久久66热偷产精品| 亚洲三级在线播放| 欧美一区二区观看视频| 成人av免费网站| 午夜视频在线观看一区| 国产日韩欧美一区二区三区乱码| 在线看不卡av| 国产一区二区三区国产| 一区二区三区四区不卡在线| www久久精品| 在线观看视频91| 国产高清不卡二三区| 亚洲综合在线观看视频| 久久久一区二区三区捆绑**| 欧美三级中文字| 不卡一区二区三区四区| 日本欧美大码aⅴ在线播放| 成人欧美一区二区三区视频网页 | 日本不卡一二三区黄网| 中文字幕中文在线不卡住| 7777精品伊人久久久大香线蕉完整版| 国产aⅴ综合色| 日韩av电影免费观看高清完整版| 国产精品麻豆久久久| 日韩欧美www| 欧美三区在线观看| 99国产精品久| 国产精品996| 麻豆视频一区二区| 精品国产污网站| 91精品久久久久久久99蜜桃| 日本丶国产丶欧美色综合| 国产超碰在线一区| 狠狠狠色丁香婷婷综合久久五月| 午夜精品成人在线| 夜夜夜精品看看| 1024国产精品| 国产精品欧美精品| 久久久久88色偷偷免费| 日韩精品一区二区三区视频播放 | 久久久久久久久一| 日韩一区二区中文字幕| 欧美日韩久久一区| 色久综合一二码| 日本久久电影网| 91天堂素人约啪| 99精品1区2区| 91蝌蚪porny九色| 色狠狠一区二区三区香蕉| 欧美电影免费观看高清完整版在线观看 | 国产成人精品网址| 国产精品一级在线| 国产成人鲁色资源国产91色综| 国内一区二区在线| 韩国女主播成人在线观看| 精品制服美女久久| 国产乱人伦偷精品视频免下载| 日韩中文字幕91| 免费av成人在线| 麻豆国产精品777777在线| 久久超碰97中文字幕| 九色综合国产一区二区三区| 狠狠色丁香婷婷综合久久片| 高清成人免费视频| 97精品国产97久久久久久久久久久久| 成人高清视频在线观看| 一本一道波多野结衣一区二区| 欧美在线综合视频| 欧美一区二区网站| 精品sm捆绑视频| 国产精品私人自拍| 亚洲伦理在线精品| 亚洲国产精品天堂| 久久精品国产亚洲一区二区三区| 国产资源精品在线观看| 成人免费视频app| 欧美三区在线观看| 日韩欧美成人激情| 国产精品久久久久久久久果冻传媒| 一区二区三区四区在线免费观看| 日韩高清欧美激情| 国产精品99久久久久久宅男| 99国产精品国产精品久久| 欧美乱妇15p| 久久久午夜精品理论片中文字幕| 中文字幕一区二区三区色视频| 一级特黄大欧美久久久| 精品综合免费视频观看| 一本色道久久综合狠狠躁的推荐| 欧美老年两性高潮| 国产日韩精品一区二区浪潮av| 亚洲精品视频免费看| 狠狠色2019综合网| 欧美午夜精品理论片a级按摩| 精品成人佐山爱一区二区| 一区二区三区欧美久久| 激情综合网最新| 欧美午夜一区二区三区| 国产欧美一区二区精品仙草咪| 一区二区成人在线视频| 国产一区在线观看视频| 欧洲视频一区二区| 欧美激情艳妇裸体舞| 蜜臀av一级做a爰片久久| 91网页版在线| 欧美国产精品一区二区| 免费在线观看视频一区| 欧美丝袜自拍制服另类| 国产精品午夜免费| 老司机精品视频导航| 欧美日韩国产乱码电影| 日韩毛片高清在线播放| 国产福利91精品| 日韩视频在线观看一区二区| 亚洲综合无码一区二区| 99麻豆久久久国产精品免费| 精品国产不卡一区二区三区| 日本一区中文字幕| 欧美视频日韩视频| 一区二区三区在线观看国产 | 欧美国产国产综合| 久久99精品久久久久久国产越南| 欧美午夜一区二区| 亚洲女同一区二区| 成人精品视频.| 国产午夜精品一区二区| 久久精品国产99| 欧美精品一卡二卡| 亚洲成人av一区二区| 在线观看日韩电影| 亚洲色图一区二区三区| 99精品偷自拍| 亚洲视频1区2区| 色欧美日韩亚洲| 亚洲一区二区三区四区五区中文|