Files
VisualSapfor/src/_VisualDVM/Passes/All/SPF_GetMaxMinBlockDistribution.java

45 lines
1.5 KiB
Java

package _VisualDVM.Passes.All;
import _VisualDVM.Global;
import _VisualDVM.Passes.PassCode;
import _VisualDVM.Passes.Sapfor.SilentSapforPass;
public class SPF_GetMaxMinBlockDistribution extends SilentSapforPass {
@Override
public boolean needsConfirmations() {
return false;
}
@Override
protected boolean needsAnimation() {
return false;
}
@Override
protected boolean canStart(Object... args) throws Exception {
if (super.canStart(args)) {
SPF_ParseFilesWithOrder.silent = true;
return (Global.mainModule.getPass(PassCode.SPF_ParseFilesWithOrder).isDone() || Global.mainModule.getPass(PassCode.SPF_ParseFilesWithOrder).Do());
}
return false;
}
@Override
protected void body() throws Exception {
sapfor.RunAnalysis(
getSapforPassName(),
-Global.messagesServer.getPort(),
target.sapforProperties.pack(),
target.getProjFile().getAbsolutePath());
}
@Override
protected void performFinish() throws Exception {
super.performFinish();
SPF_ParseFilesWithOrder.silent = false;
}
@Override
protected void performDone() throws Exception {
super.performDone();
target.testMaxDim = 0;
String packed = sapfor.getResult();
String[] data = packed.split(" ");
if (data.length > 0)
target.testMaxDim = Integer.parseInt(data[data.length - 1]);
}
}