📄 main.java
字号:
// Decompiled by Jad v1.5.8e2. Copyright 2001 Pavel Kouznetsov.
// Jad home page: http://kpdus.tripod.com/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi space
// Source File Name: Main.java
package org.gudy.azureus2.cl;
import java.io.PrintStream;
import org.gudy.azureus2.core3.config.COConfigurationManager;
import org.gudy.azureus2.core3.download.*;
import org.gudy.azureus2.core3.security.SESecurityManager;
import org.gudy.azureus2.core3.util.DisplayFormatters;
public class Main
{
public Main()
{
}
public static void main(String args[])
{
if (!parseParameters(args))
usage();
String torrentFile = args[args.length - 2];
String path = args[args.length - 1];
DownloadManager manager = DownloadManagerFactory.create(null, null, torrentFile, path, null, 0, false, false, null, null);
manager.initialize();
do
{
StringBuffer buf = new StringBuffer();
int state = manager.getState();
switch (state)
{
case 0: // '\0'
buf.append("Waiting");
break;
case 20: // '\024'
buf.append("Allocating");
break;
case 30: // '\036'
buf.append("Checking");
break;
case 40: // '('
buf.append("Ready");
manager.startDownload();
break;
case 50: // '2'
buf.append("Downloading");
break;
case 60: // '<'
buf.append("Seeding");
break;
case 70: // 'F'
buf.append("Stopped");
break;
case 100: // 'd'
buf.append((new StringBuilder()).append("Error : ").append(manager.getErrorDetails()).toString());
break;
}
buf.append(" C:");
DownloadManagerStats stats = manager.getStats();
int completed = stats.getCompleted();
buf.append(completed / 10);
buf.append('.');
buf.append(completed % 10);
buf.append('%');
buf.append(" S:");
buf.append(manager.getNbSeeds());
buf.append(" P:");
buf.append(manager.getNbPeers());
buf.append(" D:");
buf.append(DisplayFormatters.formatDownloaded(stats));
buf.append(" U:");
buf.append(DisplayFormatters.formatByteCountToKiBEtc(stats.getTotalDataBytesSent()));
buf.append(" DS:");
buf.append(DisplayFormatters.formatByteCountToKiBEtcPerSec(stats.getDataReceiveRate()));
buf.append(" US:");
buf.append(DisplayFormatters.formatByteCountToKiBEtcPerSec(stats.getDataSendRate()));
buf.append(" T:");
buf.append(manager.getTrackerStatus());
for (; buf.length() < 80; buf.append(' '));
System.out.print("\r".concat(buf.toString()));
if (state == 100)
return;
try
{
Thread.sleep(500L);
}
catch (Exception e) { }
} while (true);
}
private static boolean parseParameters(String args[])
{
if (args.length < 2)
return false;
if (args.length == 2)
return true;
if (args.length % 2 != 0)
return false;
int i = 0;
_L1:
if (i >= args.length - 2)
break MISSING_BLOCK_LABEL_97;
String param = args[i];
String value = args[i + 1];
if (param.equals("--maxUploads"))
{
COConfigurationManager.setParameter("Max Uploads", Integer.parseInt(value));
break MISSING_BLOCK_LABEL_91;
}
if (param.equals("--maxSpeed"))
{
COConfigurationManager.setParameter("Max Upload Speed KBs", Integer.parseInt(value));
break MISSING_BLOCK_LABEL_91;
}
return false;
i += 2;
goto _L1
return true;
Exception e;
e;
return false;
}
private static void usage()
{
System.out.println("Usage : java org.gudy.azureus2.cl.Main [parameters] \"file.torrent\" \"save path\"");
System.out.println("--maxUploads :\t\t Max number of simultaneous uploads");
System.out.println("--maxSpeed :\t\t Max upload speed in KBytes/sec");
SESecurityManager.exitVM(0);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -