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

📄 show.java

📁 java 文件下载器。可自定义
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
			if (dm.getState() == 100)
				return dm.getErrorDetails();
			if (dm.getDisplayName() == null)
				return "?";
			else
				return dm.getDisplayName();

		case 122: // 'z'
			return DisplayFormatters.formatByteCountToKiBEtc(dm.getSize());

		case 101: // 'e'
			return DisplayFormatters.formatETA(dm.getStats().getETA());

		case 114: // 'r'
			long to = 0L;
			long tot = 0L;
			if (dm.getDiskManager() != null)
			{
				DiskManagerFileInfo files[] = dm.getDiskManager().getFiles();
				if (files != null && files.length > 1)
				{
					int c = 0;
					for (int i = 0; i < files.length; i++)
						if (files[i] != null && !files[i].isSkipped())
						{
							c++;
							tot += files[i].getLength();
							to += files[i].getDownloaded();
						}

					if (c == files.length)
						tot = 0L;
				}
			}
			DecimalFormat df1 = new DecimalFormat("000.0%");
			if (tot > 0L)
				return (new StringBuilder()).append("      (").append(df1.format(((double)to * 1.0D) / (double)tot)).append(")").toString();
			else
				return "\t";

		case 100: // 'd'
			return DisplayFormatters.formatByteCountToKiBEtcPerSec(dm.getStats().getDataReceiveRate());

		case 117: // 'u'
			return DisplayFormatters.formatByteCountToKiBEtcPerSec(dm.getStats().getDataSendRate());

		case 68: // 'D'
			return DisplayFormatters.formatDownloaded(dm.getStats());

		case 85: // 'U'
			return DisplayFormatters.formatByteCountToKiBEtc(dm.getStats().getTotalDataBytesSent());

		case 115: // 's'
			return Integer.toString(dm.getNbSeeds());

		case 112: // 'p'
			return Integer.toString(dm.getNbPeers());

		case 118: // 'v'
			return Integer.toString(dm.getMaxUploads());

		case 73: // 'I'
			int downloadSpeed = dm.getStats().getDownloadRateLimitBytesPerSecond();
			if (downloadSpeed <= 0)
				return "";
			else
				return (new StringBuilder()).append("(max ").append(DisplayFormatters.formatByteCountToKiBEtcPerSec(downloadSpeed)).append(")").toString();

		case 79: // 'O'
			int uploadSpeed = dm.getStats().getUploadRateLimitBytesPerSecond();
			if (uploadSpeed <= 0)
				return "";
			else
				return (new StringBuilder()).append("(max ").append(DisplayFormatters.formatByteCountToKiBEtcPerSec(uploadSpeed)).append(")").toString();

		case 80: // 'P'
		case 83: // 'S'
			TRTrackerScraperResponse hd = dm.getTrackerScrapeResponse();
			if (hd == null || !hd.isValid())
				return "?";
			if (variable == 'S')
				return Integer.toString(hd.getSeeds());
			else
				return Integer.toString(hd.getPeers());

		case 69: // 'E'
		case 70: // 'F'
		case 71: // 'G'
		case 72: // 'H'
		case 74: // 'J'
		case 75: // 'K'
		case 76: // 'L'
		case 77: // 'M'
		case 78: // 'N'
		case 81: // 'Q'
		case 82: // 'R'
		case 84: // 'T'
		case 86: // 'V'
		case 87: // 'W'
		case 88: // 'X'
		case 89: // 'Y'
		case 90: // 'Z'
		case 91: // '['
		case 92: // '\\'
		case 93: // ']'
		case 94: // '^'
		case 95: // '_'
		case 96: // '`'
		case 98: // 'b'
		case 102: // 'f'
		case 103: // 'g'
		case 104: // 'h'
		case 105: // 'i'
		case 106: // 'j'
		case 107: // 'k'
		case 108: // 'l'
		case 109: // 'm'
		case 110: // 'n'
		case 111: // 'o'
		case 113: // 'q'
		case 119: // 'w'
		case 120: // 'x'
		case 121: // 'y'
		default:
			return (new StringBuilder()).append("??").append(variable).append("??").toString();
		}
	}

	protected String getDefaultSummaryFormat()
	{
		return "[%a] %c\t%t (%z) ETA: %e\r\n%r\tSpeed: %d%I / %u%O\tAmount: %D / %U\tConnections: %s(%S) / %p(%P)";
	}

	private static String getShortStateString(int dmstate)
	{
		switch (dmstate)
		{
		case 5: // '\005'
			return "I";

		case 20: // '\024'
			return "A";

		case 30: // '\036'
			return "C";

		case 50: // '2'
			return ">";

		case 100: // 'd'
			return "E";

		case 60: // '<'
			return "*";

		case 70: // 'F'
			return "!";

		case 0: // '\0'
			return ".";

		case 40: // '('
			return ":";

		case 75: // 'K'
			return "-";
		}
		return "?";
	}

	private static void printTorrentDetails(PrintStream out, DownloadManager dm, int torrentNum, boolean verbose)
	{
		String name = dm.getDisplayName();
		if (name == null)
			name = "?";
		out.println("> -----");
		out.println((new StringBuilder()).append("Info on Torrent #").append(torrentNum).append(" (").append(name).append(")").toString());
		out.println("- General Info -");
		String health[] = {
			"- no info -", "stopped", "no remote connections", "no tracker", "OK", "ko"
		};
		try
		{
			out.println((new StringBuilder()).append("Health: ").append(health[dm.getHealthStatus()]).toString());
		}
		catch (Exception e)
		{
			out.println((new StringBuilder()).append("Health: ").append(health[0]).toString());
		}
		out.println((new StringBuilder()).append("State: ").append(Integer.toString(dm.getState())).toString());
		if (dm.getState() == 100)
			out.println((new StringBuilder()).append("Error: ").append(dm.getErrorDetails()).toString());
		out.println((new StringBuilder()).append("Hash: ").append(TorrentUtils.nicePrintTorrentHash(dm.getTorrent(), true)).toString());
		out.println("- Torrent file -");
		out.println((new StringBuilder()).append("Torrent Filename: ").append(dm.getTorrentFileName()).toString());
		out.println((new StringBuilder()).append("Saving to: ").append(dm.getSaveLocation()).toString());
		out.println((new StringBuilder()).append("Created By: ").append(dm.getTorrentCreatedBy()).toString());
		out.println((new StringBuilder()).append("Comment: ").append(dm.getTorrentComment()).toString());
		out.println("- Tracker Info -");
		TRTrackerAnnouncer trackerclient = dm.getTrackerClient();
		if (trackerclient != null)
		{
			out.println((new StringBuilder()).append("URL: ").append(trackerclient.getTrackerUrl()).toString());
			String timestr;
			try
			{
				int time = trackerclient.getTimeUntilNextUpdate();
				if (time < 0)
				{
					timestr = MessageText.getString("GeneralView.label.updatein.querying");
				} else
				{
					int minutes = time / 60;
					int seconds = time % 60;
					String strSeconds = (new StringBuilder()).append("").append(seconds).toString();
					if (seconds < 10)
						strSeconds = (new StringBuilder()).append("0").append(seconds).toString();
					timestr = (new StringBuilder()).append(minutes).append(":").append(strSeconds).toString();
				}
			}
			catch (Exception e)
			{
				timestr = "unknown";
			}
			out.println((new StringBuilder()).append("Time till next Update: ").append(timestr).toString());
			out.println((new StringBuilder()).append("Status: ").append(trackerclient.getStatusString()).toString());
		} else
		{
			out.println("  Not available");
		}
		out.println("- Files Info -");
		DiskManagerFileInfo files[] = dm.getDiskManagerFileInfo();
		if (files != null)
		{
			for (int i = 0; i < files.length; i++)
			{
				out.print((new StringBuilder()).append(i >= 9 ? "  " : "   ").append(Integer.toString(i + 1)).append(" (").toString());
				String tmp = ">";
				if (files[i].isPriority())
					tmp = "+";
				if (files[i].isSkipped())
					tmp = "!";
				out.print((new StringBuilder()).append(tmp).append(") ").toString());
				if (files[i] != null)
				{
					long fLen = files[i].getLength();
					if (fLen > 0L)
					{
						DecimalFormat df = new DecimalFormat("000.0%");
						out.print(df.format(((double)files[i].getDownloaded() * 1.0D) / (double)fLen));
						out.println((new StringBuilder()).append("\t").append(files[i].getFile(true).getName()).toString());
					} else
					{
						out.println("Info not available.");
					}
				} else
				{
					out.println("Info not available.");
				}
			}

		} else
		{
			out.println("  Info not available.");
		}
		if (verbose)
		{
			out.println("Pieces");
			PEPeerManager pm = dm.getPeerManager();
			if (pm != null)
			{
				PiecePicker picker = pm.getPiecePicker();
				PEPiece pieces[] = pm.getPieces();
				String line = "";
				for (int i = 0; i < pieces.length; i++)
				{
					String str = picker.getPieceString(i);
					line = (new StringBuilder()).append(line).append(line.length() != 0 ? "," : (new StringBuilder()).append(i).append(" ").toString()).append(str).toString();
					PEPiece piece = pieces[i];
					if (piece != null)
						line = (new StringBuilder()).append(line).append(":").append(piece.getString()).toString();
					if ((i + 1) % 10 == 0)
					{
						out.println(line);
						line = "";
					}
				}

				if (line.length() > 0)
					out.println(line);
			}
		}
		out.println("> -----");
	}

	protected void showDHTStats(ConsoleInput ci)
	{
		PluginInterface dht_pi;
		PluginInterface def = ci.azureus_core.getPluginManager().getDefaultPluginInterface();
		dht_pi = def.getPluginManager().getPluginInterfaceByClass(com/aelitis/azureus/plugins/dht/DHTPlugin);
		if (dht_pi == null)
		{
			ci.out.println("\tDHT isn't present");
			return;
		}
		DHTPlugin dht_plugin;
		dht_plugin = (DHTPlugin)dht_pi.getPlugin();
		if (dht_plugin.getStatus() != 3)
		{
			ci.out.println("\tDHT isn't running yet (disabled or initialising)");
			return;
		}
		try
		{
			DHT dhts[] = dht_plugin.getDHTs();
			for (int i = 0; i < dhts.length; i++)
			{
				if (i > 0)
					ci.out.println("");
				DHT dht = dhts[i];
				DHTTransport transport = dht.getTransport();
				DHTTransportStats t_stats = transport.getStats();
				DHTDBStats d_stats = dht.getDataBase().getStats();
				DHTControlStats c_stats = dht.getControl().getStats();
				DHTRouterStats r_stats = dht.getRouter().getStats();
				long rs[] = r_stats.getStats();
				com.aelitis.azureus.core.dht.netcoords.DHTNetworkPosition nps[] = transport.getLocalContact().getNetworkPositions();
				String np_str = "";
				for (int j = 0; j < nps.length; j++)
					np_str = (new StringBuilder()).append(np_str).append(j != 0 ? "," : "").append(nps[j]).toString();

				ci.out.println((new StringBuilder()).append("DHT:ip=").append(transport.getLocalContact().getAddress()).append(",net=").append(transport.getNetwork()).append(",prot=V").append(transport.getProtocolVersion()).append(",np=").append(np_str).toString());
				ci.out.println((new StringBuilder()).append("Router:nodes=").append(rs[0]).append(",leaves=").append(rs[1]).append(",contacts=").append(rs[2]).append(",replacement=").append(rs[3]).append(",live=").append(rs[4]).append(",unknown=").append(rs[5]).append(",failing=").append(rs[6]).toString());
				ci.out.println((new StringBuilder()).append("Transport:").append(t_stats.getString()).toString());
				int dbv_details[] = d_stats.getValueDetails();
				ci.out.println((new StringBuilder()).append("Control:dht=").append(c_stats.getEstimatedDHTSize()).append(", Database:keys=").append(d_stats.getKeyCount()).append(",vals=").append(dbv_details[0]).append(",loc=").append(dbv_details[1]).append(",dir=").append(dbv_details[2]).append(",ind=").append(dbv_details[3]).append(",div_f=").append(dbv_details[4]).append(",div_s=").append(dbv_details[5]).toString());
			}

		}
		catch (Throwable e)
		{
			e.printStackTrace(ci.out);
		}
		return;
	}
}

⌨️ 快捷键说明

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