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

📄 torrentannounceurllistimpl.java

📁 java 文件下载器。可自定义
💻 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:   TorrentAnnounceURLListImpl.java

package org.gudy.azureus2.pluginsimpl.local.torrent;

import java.net.URL;
import org.gudy.azureus2.core3.torrent.*;
import org.gudy.azureus2.core3.util.TorrentUtils;
import org.gudy.azureus2.plugins.torrent.TorrentAnnounceURLList;
import org.gudy.azureus2.plugins.torrent.TorrentAnnounceURLListSet;

// Referenced classes of package org.gudy.azureus2.pluginsimpl.local.torrent:
//			TorrentAnnounceURLListSetImpl, TorrentImpl

public class TorrentAnnounceURLListImpl
	implements TorrentAnnounceURLList
{

	protected TorrentImpl torrent;

	protected TorrentAnnounceURLListImpl(TorrentImpl _torrent)
	{
		torrent = _torrent;
	}

	public TorrentAnnounceURLListSet[] getSets()
	{
		TOTorrentAnnounceURLGroup group = torrent.getTorrent().getAnnounceURLGroup();
		TOTorrentAnnounceURLSet sets[] = group.getAnnounceURLSets();
		TorrentAnnounceURLListSet res[] = new TorrentAnnounceURLListSet[sets.length];
		for (int i = 0; i < res.length; i++)
			res[i] = new TorrentAnnounceURLListSetImpl(this, sets[i]);

		return res;
	}

	public void setSets(TorrentAnnounceURLListSet sets[])
	{
		TOTorrentAnnounceURLGroup group = torrent.getTorrent().getAnnounceURLGroup();
		TOTorrentAnnounceURLSet res[] = new TOTorrentAnnounceURLSet[sets.length];
		for (int i = 0; i < res.length; i++)
			res[i] = ((TorrentAnnounceURLListSetImpl)sets[i]).getSet();

		group.setAnnounceURLSets(res);
		updated();
	}

	public TorrentAnnounceURLListSet create(URL urls[])
	{
		return new TorrentAnnounceURLListSetImpl(this, torrent.getTorrent().getAnnounceURLGroup().createAnnounceURLSet(urls));
	}

	public void addSet(URL urls[])
	{
		if (setAlreadyExists(urls))
		{
			return;
		} else
		{
			TorrentUtils.announceGroupsInsertLast(torrent.getTorrent(), urls);
			updated();
			return;
		}
	}

	public void insertSetAtFront(URL urls[])
	{
		if (setAlreadyExists(urls))
		{
			return;
		} else
		{
			TorrentUtils.announceGroupsInsertFirst(torrent.getTorrent(), urls);
			updated();
			return;
		}
	}

	protected boolean setAlreadyExists(URL urls[])
	{
		TOTorrentAnnounceURLGroup group = torrent.getTorrent().getAnnounceURLGroup();
		TOTorrentAnnounceURLSet sets[] = group.getAnnounceURLSets();
		for (int i = 0; i < sets.length; i++)
		{
			URL u[] = sets[i].getAnnounceURLs();
			if (u.length != urls.length)
				continue;
			boolean all_found = true;
			int j = 0;
			do
			{
				if (j >= urls.length)
					break;
				URL u1 = urls[j];
				boolean this_found = false;
				int k = 0;
				do
				{
					if (k >= u.length)
						break;
					URL u2 = u[k];
					if (u1.toString().equals(u2.toString()))
					{
						this_found = true;
						break;
					}
					k++;
				} while (true);
				if (!this_found)
				{
					all_found = false;
					break;
				}
				j++;
			} while (true);
			if (all_found)
				return true;
		}

		return false;
	}

	protected void updated()
	{
		torrent.updated();
	}
}

⌨️ 快捷键说明

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