高分寻求帮助java反编译2

etoaoo etoaoo 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
昨天晚上发布了一个求助帖,今天早上就被云上飞翔给干脆的解决掉了,CSDN给了我不小的惊喜。

今天尝试反编译另外一个类时,又进行不下去,请求大家的帮助.

只要反编译出run()方法即可(已标红), 非常感谢.

package com.wowza.wms.plugin.loadbalancer;

public class LoadBalancerSender
implements Runnable
{
class LBTarget
{

String host;
int port;
String key;
boolean visited;
String targetId;
int msgSeq;
boolean errorReported;
int msgsSent;
final LoadBalancerSender this$0;

public LBTarget(String s, String s1, int i, String s2)
{
this$0 = LoadBalancerSender.this;
super();
host = null;
port = 8083;
key = null;
visited = false;
targetId = null;
msgSeq = 0;
errorReported = false;
msgsSent = 0;
targetId = s;
host = s1;
port = i;
key = s2;
}
}


public static final int MESSAGE_HEADERSIZE = 34;
private File targetFile;
private long targetFileLastModified;
private long targetFileLength;
private boolean targetReadTwice;
private Map targets;
private Object lock;
private int status;
private DatagramSocket udpSocket;
private int maxPacketSize;
private WMSProperties properties;
private Random rnd;
private UUID guid;
private ILoadBalancerMonitor loadBalancerMonitor;
private String redirectAddress;
private boolean reportedMissingTargetFile;

public LoadBalancerSender()
{
targetFile = null;
targetFileLastModified = -1L;
targetFileLength = -1L;
targetReadTwice = false;
targets = new HashMap();
lock = new Object();
status = 0;
udpSocket = null;
maxPacketSize = 4096;
properties = new WMSProperties();
rnd = null;
guid = null;
loadBalancerMonitor = null;
redirectAddress = null;
reportedMissingTargetFile = false;
}

public void init()
{
maxPacketSize = properties.getPropertyInt("maxPacketSize", maxPacketSize);
rnd = new Random(System.currentTimeMillis());
guid = UUID.fromString(Server.getInstance().getGUID());
}

public WMSProperties getProperties()
{
return properties;
}

private DatagramSocket getSocket()
{
Object obj = lock;
JVM INSTR monitorenter ;
if(udpSocket == null)
{
try
{
udpSocket = new DatagramSocket(null);
udpSocket.setTrafficClass(0);
udpSocket.setReceiveBufferSize(16384);
udpSocket.setReuseAddress(true);
udpSocket.setSoTimeout(0);
}
catch(Exception exception)
{

}
}
return udpSocket;
Exception exception1;
exception1;
throw exception1;
}

public void shutdown()
{
synchronized(lock)
{
if(udpSocket != null)
{
try
{
udpSocket.close();
}
catch(Exception exception)
{

}
}
udpSocket = null;
}
}

private void unvisit()
{
synchronized(lock)
{
for(Iterator iterator = targets.values().iterator(); iterator.hasNext();)
{
LBTarget lbtarget = (LBTarget)iterator.next();
lbtarget.visited = false;
}

}
}

private void clearUnvisited()
{
synchronized(lock)
{
ArrayList arraylist = new ArrayList();
for(Iterator iterator = targets.keySet().iterator(); iterator.hasNext();)
{
String s = (String)iterator.next();
LBTarget lbtarget = (LBTarget)targets.get(s);
if(!lbtarget.visited)
{
arraylist.add(s);
}
lbtarget.visited = false;
}

String s1;
for(Iterator iterator1 = arraylist.iterator(); iterator1.hasNext(); targets.remove(s1))
{
s1 = (String)iterator1.next();
}

}
}

public File getTargetFile()
{
Object obj = lock;
JVM INSTR monitorenter ;
return targetFile;
Exception exception;
exception;
throw exception;
}

public void setTargetFile(File file)
{
synchronized(lock)
{
targetFile = file;
}
}

public void parseEdgeList()
{

}

public int getStatus()
{
return status;
}

public void setStatus(int i)
{
status = i;
}

public int getMaxPacketSize()
{
return maxPacketSize;
}

public void setMaxPacketSize(int i)
{
maxPacketSize = i;
}

public void run()
{
boolean flag;
try
{
label0:
{
synchronized(lock)
{
if(targetFile != null)
{
break label0;
}
}
break MISSING_BLOCK_LABEL_295;
}
}
catch(Exception exception)
{

}
break MISSING_BLOCK_LABEL_295;
flag = targetFileLastModified == -1L || targetReadTwice;
targetReadTwice = false;
if(!flag)
{
if(targetFile.exists())
{
reportedMissingTargetFile = false;
if(targetFileLastModified != targetFile.lastModified() || targetFileLength != targetFile.length())
{
flag = true;
targetReadTwice = true;
}
} else
if(!reportedMissingTargetFile)
{
reportedMissingTargetFile = true;
}
}
if(!flag)
{
break MISSING_BLOCK_LABEL_246;
}
if(targetFile.exists())
{
break MISSING_BLOCK_LABEL_212;
}
if(!reportedMissingTargetFile)
{
reportedMissingTargetFile = true;
}
obj;
JVM INSTR monitorexit ;
break MISSING_BLOCK_LABEL_295;
unvisit();
parseEdgeList();
clearUnvisited();
targetFileLastModified = targetFile.lastModified();
targetFileLength = targetFile.length();
sendMessage();
obj;
JVM INSTR monitorexit ;
break MISSING_BLOCK_LABEL_295;
exception1;
throw exception1;
}

public void sendMessage()
{

}

public void pause()
{
synchronized(lock)
{
status = 2;
run();
}
}

public void unpause()
{
synchronized(lock)
{
status = 1;
run();
}
}

public ILoadBalancerMonitor getLoadBalancerMonitor()
{
return loadBalancerMonitor;
}

public void setLoadBalancerMonitor(ILoadBalancerMonitor iloadbalancermonitor)
{
loadBalancerMonitor = iloadbalancermonitor;
}

public String getRedirectAddress()
{
return redirectAddress;
}

public void setRedirectAddress(String s)
{
redirectAddress = s;
}
}
...全文
评论 6
收藏 已收藏
分享
返回顶部
etoaoo
Java SE 62,621 成员 307,251 内容