📄 superseedpiece.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: SuperSeedPiece.java
package org.gudy.azureus2.core3.peer.impl.control;
import org.gudy.azureus2.core3.peer.PEPeer;
import org.gudy.azureus2.core3.peer.impl.PEPeerControl;
import org.gudy.azureus2.core3.util.*;
public class SuperSeedPiece
{
private int pieceNumber;
private int level;
private long timeFirstDistributed;
private PEPeer firstReceiver;
private int timeToReachAnotherPeer;
private static AEMonitor class_mon = new AEMonitor("SuperSeedPiece:class");
public SuperSeedPiece(PEPeerControl manager, int _pieceNumber)
{
Ignore.ignore(manager);
pieceNumber = _pieceNumber;
level = 0;
}
public void peerHasPiece(PEPeer peer)
{
class_mon.enter();
if (level < 2)
{
firstReceiver = peer;
timeFirstDistributed = SystemTime.getCurrentTime();
} else
if (peer != null && firstReceiver != null)
{
timeToReachAnotherPeer = (int)(SystemTime.getCurrentTime() - timeFirstDistributed);
firstReceiver.setUploadHint(timeToReachAnotherPeer);
}
level = 2;
class_mon.exit();
break MISSING_BLOCK_LABEL_89;
Exception exception;
exception;
class_mon.exit();
throw exception;
}
public int getLevel()
{
return level;
}
public void pieceRevealedToPeer()
{
class_mon.enter();
level = 1;
class_mon.exit();
break MISSING_BLOCK_LABEL_29;
Exception exception;
exception;
class_mon.exit();
throw exception;
}
public int getPieceNumber()
{
return pieceNumber;
}
public void peerLeft()
{
if (level == 1)
level = 0;
}
public void updateTime()
{
if (level < 2)
return;
if (timeToReachAnotherPeer > 0)
return;
if (firstReceiver == null)
return;
int timeToSend = (int)(SystemTime.getCurrentTime() - timeFirstDistributed);
if (timeToSend > firstReceiver.getUploadHint())
firstReceiver.setUploadHint(timeToSend);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -