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

📄 peersuperview.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:   PeerSuperView.java

package org.gudy.azureus2.ui.swt.views;

import com.aelitis.azureus.core.AzureusCore;
import com.aelitis.azureus.core.AzureusCoreFactory;
import com.aelitis.azureus.ui.common.table.TableColumnCore;
import com.aelitis.azureus.ui.common.table.TableLifeCycleListener;
import java.util.*;
import org.eclipse.swt.widgets.*;
import org.gudy.azureus2.core3.download.DownloadManager;
import org.gudy.azureus2.core3.download.DownloadManagerPeerListener;
import org.gudy.azureus2.core3.global.GlobalManager;
import org.gudy.azureus2.core3.global.GlobalManagerListener;
import org.gudy.azureus2.core3.peer.PEPeer;
import org.gudy.azureus2.core3.peer.PEPeerManager;
import org.gudy.azureus2.ui.swt.views.peer.PeerInfoView;
import org.gudy.azureus2.ui.swt.views.peer.RemotePieceDistributionView;
import org.gudy.azureus2.ui.swt.views.table.TableViewSWT;
import org.gudy.azureus2.ui.swt.views.table.TableViewSWTMenuFillListener;
import org.gudy.azureus2.ui.swt.views.table.impl.TableViewSWTImpl;
import org.gudy.azureus2.ui.swt.views.table.impl.TableViewTab;
import org.gudy.azureus2.ui.swt.views.tableitems.peers.DownloadNameItem;

// Referenced classes of package org.gudy.azureus2.ui.swt.views:
//			IView, LoggerView, PeersView

public class PeerSuperView extends TableViewTab
	implements GlobalManagerListener, DownloadManagerPeerListener, TableLifeCycleListener, TableViewSWTMenuFillListener
{

	private GlobalManager g_manager;
	private TableViewSWT tv;
	private Shell shell;
	private boolean active_listener;

	public PeerSuperView()
	{
		this(AzureusCoreFactory.getSingleton().getGlobalManager());
	}

	public PeerSuperView(GlobalManager gm)
	{
		active_listener = true;
		TableColumnCore items[] = PeersView.getBasicColumnItems("AllPeers");
		TableColumnCore basicItems[] = new TableColumnCore[items.length + 1];
		System.arraycopy(items, 0, basicItems, 0, items.length);
		basicItems[items.length] = new DownloadNameItem("AllPeers");
		tv = new TableViewSWTImpl("AllPeers", "AllPeersView", basicItems, "connected_time", 0x10010002);
		setTableView(tv);
		tv.setRowDefaultHeight(16);
		tv.setEnableTabViews(true);
		tv.setCoreTabViews(new IView[] {
			new PeerInfoView(), new RemotePieceDistributionView(), new LoggerView(true)
		});
		tv.addLifeCycleListener(this);
		tv.addMenuFillListener(this);
		g_manager = gm;
	}

	public void tableViewInitialized()
	{
		shell = tv.getComposite().getShell();
		registerGlobalManagerListener();
	}

	public void tableViewDestroyed()
	{
		unregisterListeners();
	}

	public void fillMenu(Menu menu)
	{
		PeersView.fillMenu(menu, tv, shell, false);
	}

	public void peerAdded(PEPeer created)
	{
		tv.addDataSource(created);
	}

	public void peerRemoved(PEPeer removed)
	{
		tv.removeDataSource(removed);
	}

	private void addExistingDatasources()
	{
		if (g_manager == null || tv.isDisposed())
			return;
		ArrayList sources = new ArrayList();
		Iterator itr = g_manager.getDownloadManagers().iterator();
		do
		{
			if (!itr.hasNext())
				break;
			Object peers[] = ((DownloadManager)itr.next()).getCurrentPeers();
			if (peers != null)
				sources.addAll(Arrays.asList(peers));
		} while (true);
		if (sources.isEmpty())
		{
			return;
		} else
		{
			tv.addDataSources(sources.toArray());
			tv.processDataSourceQueue();
			return;
		}
	}

	private void registerGlobalManagerListener()
	{
		active_listener = false;
		g_manager.addListener(this);
		active_listener = true;
		break MISSING_BLOCK_LABEL_31;
		Exception exception;
		exception;
		active_listener = true;
		throw exception;
		addExistingDatasources();
		return;
	}

	private void unregisterListeners()
	{
		if (g_manager == null)
			return;
		g_manager.removeListener(this);
		DownloadManager dm;
		for (Iterator itr = g_manager.getDownloadManagers().iterator(); itr.hasNext(); downloadManagerRemoved(dm))
			dm = (DownloadManager)itr.next();

	}

	public void downloadManagerAdded(DownloadManager dm)
	{
		dm.addPeerListener(this, !active_listener);
	}

	public void downloadManagerRemoved(DownloadManager dm)
	{
		dm.removePeerListener(this);
	}

	public void destroyInitiated()
	{
	}

	public void destroyed()
	{
	}

	public void seedingStatusChanged(boolean flag, boolean flag1)
	{
	}

	public void addThisColumnSubMenu(String s, Menu menu)
	{
	}

	public void peerManagerAdded(PEPeerManager pepeermanager)
	{
	}

	public void peerManagerRemoved(PEPeerManager pepeermanager)
	{
	}

	public void peerManagerWillBeAdded(PEPeerManager pepeermanager)
	{
	}
}

⌨️ 快捷键说明

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